Bitte um Hilfe bei diesem Coding

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Bitte um Hilfe bei diesem Coding

Beitrag von robin1at (Specialist / 190 / 0 / 0 ) »
Hallo liebe Helfer!

Ich habe ein Problem mit folgendem Coding.

Und zwar stehen mir in der ALV Ausgabe die Belege doppelt oder mehrfach drinnen und es stimmen zum Teil die Länderkennzeichen nicht.

Ich hoffe Ihr könnt mir weiterhelfen diese Fehler zu finden.

Vielen vielen Dank im Voraus!

Schöne Grüße

Robin

Code: Alles auswählen.

TYPE-POOLS slis.

TABLES: lfa1, bseg, bkpf, bsik, bsak, zdlkz_t, bsis, bsas.

DATA: BEGIN OF itab_sumla OCCURS 10,
        lifnr LIKE lfa1-lifnr,
        land1 LIKE lfa1-land1,
        diekz LIKE bsak-diekz,
        belnr LIKE bsak-belnr,
        zuonr LIKE bsak-zuonr,
        blart LIKE bsak-blart,
        bukrs LIKE bsak-bukrs,
        monat LIKE bsak-monat,
        gjahr LIKE bsak-gjahr,
        shkzg LIKE bsak-shkzg,
        bschl LIKE bsak-bschl,
        dmbtr LIKE bsak-dmbtr,
        wrbtr LIKE bsak-wrbtr,
        hkont LIKE bsak-hkont,
        zdlkz LIKE zdlkz_t-zdlkz,
        bezeichnung LIKE zdlkz_t-bezeichnung,
        soha TYPE p DECIMALS 2,
        soll TYPE p DECIMALS 2,
        haben TYPE p DECIMALS 2,
        zahler TYPE i,
      END OF itab_sumla.

* Zweite interne Tabelle für "READ" - Spalten Vergleich

DATA: BEGIN OF itab_zdlkz_t OCCURS 10,
        zdlkz LIKE zdlkz_t-zdlkz,
        bezeichnung LIKE zdlkz_t-bezeichnung,
      END OF itab_zdlkz_t.

DATA: wa_soha LIKE LINE OF itab_sumla,
      wa_zdlkz LIKE LINE OF itab_zdlkz_t.

DATA: my_fieldcat TYPE slis_t_fieldcat_alv,
      wa_layout   TYPE slis_layout_alv,
      wa_fieldcat LIKE LINE OF my_fieldcat,
      repid TYPE sy-repid.

SELECT-OPTIONS: so_land FOR lfa1-land1,
                so_perio FOR bkpf-monat.

PARAMETERS pa_gj LIKE bseg-gjahr.

* Wertehilfe für so_dlkz in SE11 definiert mit ZMYSEARCH

SELECT-OPTIONS: so_dlkz FOR zdlkz_t-zdlkz MATCHCODE OBJECT zmysearch.

* damit die Selektion Geschäftsjahr funktioniert, wenn kein Wert
* eingegeben wird

RANGES: range FOR bseg-gjahr.
IF NOT pa_gj IS INITIAL.
  range-sign = 'I'.
  range-option = 'EQ'.
  range-low = pa_gj.
  APPEND range.
ELSE.
  REFRESH range.
ENDIF.


START-OF-SELECTION.
*##################

* GUI-Titel anlegen

  SET TITLEBAR 'T_SOHA'.

  SELECT zdlkz bezeichnung
  FROM zdlkz_t INTO CORRESPONDING FIELDS OF TABLE itab_zdlkz_t
  WHERE zdlkz IN so_dlkz.

  IF sy-subrc <> 0.
    MESSAGE i003(/sapdmc/lsmw_glo_030).
*   Bitte tragen Sie einen gültigen Wert ein.
    EXIT.
  ENDIF.

* neuer Select auf Hauptbuch!!!

 SELECT a~lifnr a~land1 c~hkont c~belnr c~zuonr c~blart c~bukrs c~monat
         c~gjahr c~shkzg c~wrbtr c~buzei
                 INTO CORRESPONDING FIELDS OF TABLE itab_sumla
                         FROM ( ( lfa1 AS a
                                    INNER JOIN bsik AS b
                                        ON a~lifnr = b~lifnr )
                                    INNER JOIN bsis AS c
                                        ON b~belnr = c~belnr )
                                    WHERE c~bukrs IN ('1001')
                                    AND c~blart IN ('A1', 'A2', 'A3')
                                    AND c~buzei = '2'
                                    AND land1 IN so_land
                                    AND c~gjahr IN range
                                    AND c~zuonr IN so_dlkz
                                    AND c~monat IN so_perio.

 SELECT a~lifnr a~land1 c~hkont c~belnr c~zuonr c~blart c~bukrs c~monat
         c~gjahr c~shkzg c~wrbtr c~buzei
                 APPENDING CORRESPONDING FIELDS OF TABLE itab_sumla
                         FROM ( ( lfa1 AS a
                                    INNER JOIN bsak AS b
                                        ON a~lifnr = b~lifnr )
                                    INNER JOIN bsas AS c
                                        ON b~belnr = c~belnr )
                                    WHERE c~bukrs IN ('1001')
                                    AND c~blart IN ('A1', 'A2', 'A3')
                                    AND c~buzei = '2'
                                    AND land1 IN so_land
                                    AND c~gjahr IN range
                                    AND c~zuonr IN so_dlkz
                                    AND c~monat IN so_perio.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von robin1at (Specialist / 190 / 0 / 0 ) »
Danke, hat sich erledigt!

Schöne Grüße

Robin

Beitrag von Chrisu (Specialist / 225 / 0 / 1 ) »
robin1at hat geschrieben:Danke, hat sich erledigt!

Schöne Grüße

Robin
Eine Auflösung des Rätsels ist immer von Vorteil :)

Seite 1 von 1

Vergleichbare Themen

25
Antw.
14148
Views
Brauche HIlfe beim Coding :( Anfänger....
von Trulchen » 03.09.2012 15:50 • Verfasst in ABAP Objects®
13
Antw.
10017
Views
Coding Fehler
von commolus » 15.05.2012 16:53 • Verfasst in ABAP Objects®
5
Antw.
3676
Views
Frage zu Coding
von Mark33 » 15.03.2012 10:40 • Verfasst in ABAP® für Anfänger
6
Antw.
4486
Views
Verständnisfrage zu Coding
von Mark33 » 23.02.2012 15:22 • Verfasst in ABAP® für Anfänger
2
Antw.
1832
Views
Coding im Query
von chris61 » 12.09.2017 13:35 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.