Want to convert Sap standard report s_alr_87012085  into alvgrid

11-30  Source: Network gathering  Views:0 

Advertisement
i Want to convert Sap standard report s_alr_87012085  into alvgrid please help me.
REPORT RFKOPR00
       MESSAGE-ID FR
       LINE-SIZE  132
       NO STANDARD PAGE HEADING.
TABLES:   B0SG,
          LFA1,                        "Daten auf Mandantenebene
            LFB1,                      "Daten auf Buchungskreisebene
              LFB5,                    "Mahndaten
              LFC1,                    "Verkehrszahlen
              LFC3,                    "Sonderumsätze
              BSIK,                    "Offend Posten
              BKPF,
                BSEG,
                       BSEGA.
TABLES:
          BHDGD,
          T001,
          T001S,
          *T001S,
          T074T,
          T074U,
          TBSL,
          TBSLT,
          TCURX,
          ADRS,
          RFPDO,
          RFPDO1,
          RFSDO,
          FAEDE.
FIELD-SYMBOLS: .
*Hilfsfelder
*---Prüfung ob mehrere Hauswährungen verarbeitet werden.
DATA:    CFAKT(3)      TYPE P,
         CHECKSALDO(8) TYPE P,
         CHECKAGOBL(8) TYPE P,
         WAERS LIKE T001-WAERS,
         WFLAG(1) TYPE P VALUE '0',
         WAERS2        LIKE T001-WAERS,
         WFLAG2(1)     TYPE P VALUE '0',
         PH-LINE(132)  TYPE C.
*---Ermittlung aktuelles Geschäftsjahr über Funktionsbaustein.
DATA: CURRY LIKE BSIK-GJAHR.
*-Ermittlung Zahlungseingang bei Zahlungen mit Skontoabzug--
*ATA: ZVTAGE LIKE KNB4-VZS01, "Verzugstage
    ZVSKONTO(8) TYPE P,     "Zahlungsvolumen bei Zahlung mit Skonto
    ZVNETTO(8)  TYPE P,     "Zahlungsvolumen bei Nettozahlung
    ZVVERZUG(8) TYPE P,     "Verzugstage
    ZVMALVZ(8)  TYPE P,     "Zahlungvolumen * Verzugstage
                            "KNB4-VZSxx)
    ZVTYP(1)    TYPE C,     "Skonto oder Nettozahler
    ZVPER(4)    TYPE C.     "Periode letze Zahlung
*---Zeilenanzahl fü Adressausgabe -
DATA: ZEILENANZAHL LIKE ADRS-ANZZL VALUE 7.
DATA: KSALDO(6)  TYPE P.               "Saldovortrag
    BEABZUG(6) TYPE P,                   "Berechtigte Abzüge
    UBABZUG(6) TYPE P,                   "Unberechtigte Abzüge
    JAHRAUG(6) TYPE P,                   "Kumulierter Jahresausgleich
    KUMZINS(6) TYPE P.                   "Kumulierter Zins
Ausgabe der Mahndaten pro Buchungskreis.
DATA: INDEX(2) TYPE P VALUE 0.
Hilfsfelder
DATA: HF(1)    TYPE C.
DATA: TXT_1(78) TYPE C,                "Mahnbereich
      TXT_2(78) TYPE C,                "Mahnart
      TXT_3(78) TYPE C,                "Mahnempfänger
      TXT_4(78) TYPE C,                "Mahndatum
      TXT_5(78) TYPE C,                "Mahnstufe
      TXT_6(78) TYPE C,                "Mahnsperre
      TXT_7(78) TYPE C,                "Mahnverfahren
      TXT_8(78) TYPE C.                "Sachbearbeiter
DATA: BEGIN OF XMAHN OCCURS 10.
        INCLUDE STRUCTURE LFB5.
DATA: END OF XMAHN.
Hilfsfelder
DATA: CHAR1(1)   TYPE C.
DATA: FLAG1(1)   TYPE C.
DATA: INTENS(1)  TYPE C.
DATA: FLAG2(1)   TYPE C.
*---- K o n s t a n t e n -
*---- DNULL zum Vergleich mit Datumsfeldern -
DATA: DNULL(8) TYPE C VALUE '00000000'.
*---- DECKBLATT = 'N' ==> Kein Deckblatt bei NEW-SECTION -
DATA: DECKBLATT TYPE C VALUE 'N'.
*---- 'H' =   Hilfsfelder, die jederzeit fuer Berechnungen ver-  -
*---- wendet werden koennen. -
DATA: BEGIN OF H,
        STICHTAG(8),
        OFFSET(2) TYPE P,
        OFFSE1(2) TYPE P,
        SOLL      LIKE LFC1-UM01S,
        HABEN     LIKE LFC1-UM01H,
        SALDO     LIKE LFC1-UMSAV,
        SHBKZ     LIKE LFC3-SHBKZ,     "Sonderhauptbuchkennzeichen
        SALDV     LIKE LFC3-SALDV,     "Sonderhauptbuch-Saldovortrag
        SHBLS     LIKE LFC3-SOLLL,     "Sonderhauptbuch-Lfd.-Saldo
        SHBSL     LIKE LFC3-SOLLL,     "Sonderhauptbuch-Lfd.-SOLL
        SHBHB     LIKE LFC3-HABNL,     "Sonderhauptbuch-Lfd.-HABEN
      GBNUM     LIKE lfC1-GBN01,    "Geschaeftsber. Nummer ECKERT
      GBUMS     LIKE lfC1-GBU01,    "Geschaeftsber. Umsatz
        TEXT(15),
        UMLOW     LIKE BSIK-UMSKZ,     "Umsatzkennzeichen
        UMHIG     LIKE BSIK-UMSKZ,     "Umsatzkennzeichen
      END   OF H.
---- 'C' =   Zwischenergebnisse, die aus Feldern des C-Segmentes ---
*---- berechnet werden. -
DATA: BEGIN OF C,
        SALDO     TYPE P,              "Saldo
        UMKZ1     LIKE LFC3-SHBKZ,     "SHBKZ 1
        SUMS1     TYPE P,              "Sonderumsatz 1
        UMKZ2     LIKE LFC3-SHBKZ,     "SHBKZ 2
        SUMS2     TYPE P,              "Sonderumsatz 2
        UMKZ3     LIKE LFC3-SHBKZ,     "SHBKZ 3
        SUMS3     TYPE P,              "Sonderumsatz 3
        UMKZ4     LIKE LFC3-SHBKZ,     "SHBKZ 4
        SUMS4     TYPE P,              "Sonderumsatz 4
        UMKZ5     LIKE LFC3-SHBKZ,     "SHBKZ 5
        SUMS5     TYPE P,              "Sonderumsatz 5
        UMKZ6     LIKE LFC3-SHBKZ,     "SHBKZ 6
        SUMS6     TYPE P,              "Sonderumsatz 6
        UMKZ7     LIKE LFC3-SHBKZ,     "SHBKZ 7
        SUMS7     TYPE P,              "Sonderumsatz 7
        UMKZ8     LIKE LFC3-SHBKZ,     "SHBKZ 8
        SUMS8     TYPE P,              "Sonderumsatz 8
        UMKZ9     LIKE LFC3-SHBKZ,     "SHBKZ 9
        SUMS9     TYPE P,              "Sonderumsatz 9
        UMKZ10    LIKE LFC3-SHBKZ,     "SHBKZ 10
        SUMS10    TYPE P,              "Sonderumsatz 10
        SONOB     TYPE P,              "Sonstige Umsatz-Kz
        BABZG     TYPE P,              "Berechtigte Abzuege
        UABZG     TYPE P,              "Unberechtigte Abzuege
        KZINS     TYPE P,              "Zinszahlungen
        KUMUM     TYPE P,              "Umsatz
        KUMAG     TYPE P,              "Kum. Jahresausgleich
      KREUEB    TYPE P,         "Kreditueberschreitung
      AGOBLI    TYPE P,         "Gesamt-Obligo (absolut)
        AGOBLI LIKE LFC1-UMSAV,        "Gesamt-Obligo (absolut)
      RGOBLI    TYPE P,         "Gesamt-Obligo (relativ)
      LFTAGE(3) TYPE P,         "Langfristige Überzugstage
      MFTAGE(3) TYPE P,         "Mittelfristige Überzugstage
      KFTAGE(3) TYPE P,         "Kurzfristige Überzugstage
      END   OF C.
---- 'C2'=   Zwischenergebnisse, die aus Feldern des C-Segmentes ---
*---- berechnet werden. -
DATA: BEGIN OF C2 OCCURS 0,
        BUKRS     LIKE LFC1-BUKRS,
        SALDO     TYPE P,              "Saldo
      WEXOB     TYPE P,         "Wechsel-Obligo        W,S,B
      ANZOB     TYPE P,         "Anzahlungs-Obligo     A
      ZANFB     TYPE P,         "Zahlungs-Anforderung  F
        UMKZ1     LIKE LFC3-SHBKZ,     "SHBKZ 1
        SUMS1     TYPE P,              "Sonderumsatz 1
        UMKZ2     LIKE LFC3-SHBKZ,     "SHBKZ 2
        SUMS2     TYPE P,              "Sonderumsatz 2
        UMKZ3     LIKE LFC3-SHBKZ,     "SHBKZ 3
        SUMS3     TYPE P,              "Sonderumsatz 3
        UMKZ4     LIKE LFC3-SHBKZ,     "SHBKZ 4
        SUMS4     TYPE P,              "Sonderumsatz 4
        UMKZ5     LIKE LFC3-SHBKZ,     "SHBKZ 5
        SUMS5     TYPE P,              "Sonderumsatz 5
        UMKZ6     LIKE LFC3-SHBKZ,     "SHBKZ 6
        SUMS6     TYPE P,              "Sonderumsatz 6
        UMKZ7     LIKE LFC3-SHBKZ,     "SHBKZ 7
        SUMS7     TYPE P,              "Sonderumsatz 7
        UMKZ8     LIKE LFC3-SHBKZ,     "SHBKZ 8
        SUMS8     TYPE P,              "Sonderumsatz 8
        UMKZ9     LIKE LFC3-SHBKZ,     "SHBKZ 9
        SUMS9     TYPE P,              "Sonderumsatz 9
        UMKZ10    LIKE LFC3-SHBKZ,     "SHBKZ 10
        SUMS10    TYPE P,              "Sonderumsatz 10
        SONOB     TYPE P,              "Sonstige Umsatz-Kz
        BABZG     TYPE P,              "Berechtigte Abzuege
        UABZG     TYPE P,              "Unberechtigte Abzuege
        KZINS     TYPE P,              "Zinszahlungen
        KUMUM     TYPE P,              "Umsatz
        KUMAG     TYPE P,              "Kum. Jahresausgleich
      KREUEB    TYPE P,         "Kreditueberschreitung
      AGOBLI    TYPE P,         "Gesamt-Obligo (absolut)
        AGOBLI LIKE LFC1-UMSAV,        "Gesamt-Obligo (absolut)
      RGOBLI    TYPE P,         "Gesamt-Obligo (relativ)
        LFTAGE(3) TYPE P,              "Langfristige Überzugstage
        MFTAGE(3) TYPE P,              "Mittelfristige Überzugstage
        KFTAGE(3) TYPE P,              "Kurzfristige Überzugstage
        ZVTYP(1)    TYPE C,            "Flag Skonto oder Nettozahler
        ZVPER(6)    TYPE C,            "letze Zahlungsperiode
        ZVVERZUG(8) TYPE P,            "Durchschittliche Verzugst
      END   OF C2.
---- 'C3'=   Zwischenergebnisse, die aus Feldern des C-Segmentes ---
*---- berechnet werden. -
DATA: BEGIN OF C3,
        SALDO     TYPE P,              "Saldo
      WEXOB     TYPE P,         "Wechsel-Obligo        W,S,B
      ANZOB     TYPE P,         "Anzahlungs-Obligo     A
      ZANFB     TYPE P,         "Zahlungs-Anforderung  F
        UMKZ1     LIKE LFC3-SHBKZ,     "SHBKZ 1
        SUMS1     TYPE P,              "Sonderumsatz 1
        UMKZ2     LIKE LFC3-SHBKZ,     "SHBKZ 2
        SUMS2     TYPE P,              "Sonderumsatz 2
        UMKZ3     LIKE LFC3-SHBKZ,     "SHBKZ 3
        SUMS3     TYPE P,              "Sonderumsatz 3
        UMKZ4     LIKE LFC3-SHBKZ,     "SHBKZ 4
        SUMS4     TYPE P,              "Sonderumsatz 4
        UMKZ5     LIKE LFC3-SHBKZ,     "SHBKZ 5
        SUMS5     TYPE P,              "Sonderumsatz 5
        UMKZ6     LIKE LFC3-SHBKZ,     "SHBKZ 6
        SUMS6     TYPE P,              "Sonderumsatz 6
        UMKZ7     LIKE LFC3-SHBKZ,     "SHBKZ 7
        SUMS7     TYPE P,              "Sonderumsatz 7
        UMKZ8     LIKE LFC3-SHBKZ,     "SHBKZ 8
        SUMS8     TYPE P,              "Sonderumsatz 8
        UMKZ9     LIKE LFC3-SHBKZ,     "SHBKZ 9
        SUMS9     TYPE P,              "Sonderumsatz 9
        UMKZ10    LIKE LFC3-SHBKZ,     "SHBKZ 10
        SUMS10    TYPE P,              "Sonderumsatz 10
        SONOB     TYPE P,              "Sonstige Umsatz-Kz
        BABZG     TYPE P,              "Berechtigte Abzuege
        UABZG     TYPE P,              "Unberechtigte Abzuege
        KZINS     TYPE P,              "Zinszahlungen
        KUMUM     TYPE P,              "Umsatz
        KUMAG     TYPE P,              "Kum. Jahresausgleich
      KREUEB    TYPE P,         "Kreditueberschreitung
      AGOBLI    TYPE P,         "Gesamt-Obligo (absolut)
        AGOBLI LIKE LFC1-UMSAV,        "Gesamt-Obligo (absolut)
      RGOBLI    TYPE P,         "Gesamt-Obligo (relativ)
      LFTAGE(3) TYPE P,         "Langfristige Überzugstage
      MFTAGE(3) TYPE P,         "Mittelfristige Überzugstage
      KFTAGE(3) TYPE P,         "Kurzfristige Überzugstage
      ZVTYP(1)    TYPE C,       "Flag Skonto oder Nettozahler
      ZVPER(6)    TYPE C,       "letze Zahlungsperiode
      ZVVERZUG(8) TYPE P,       "Durchschittliche Verzugst
      END   OF C3.
DATA: SHBETRAG LIKE BSEGA-DMSHB.       "TYPE P.
*---- 'RTAB' = Rastertabelle fuer offene Posten -
DATA: BEGIN OF RTAB OCCURS 30,
        SORTK(1)   TYPE C,             "0 = Summe Gesber
                                       "1 = Summe aller Gesber
                                       "2 = Umsatzdaten
        BUKRS LIKE BSIK-BUKRS,
        GSBER LIKE BSIK-GSBER,
        WAERS LIKE BSIK-WAERS,
        RAART TYPE C,                  "Rasterart
                                       "1 = Netto-Faelligkeit
                                       "2 = Skonto1-Faelligkeit
                                       "3 = Zahlungseingang
                                       "4 = Ueber-Faelligkeit
        SPERR TYPE P,                  "gesprrte Posten
        KUMUM TYPE P,                  "Umsatz
        ANZAH TYPE P,                  "Anzahlungen
        OPSUM TYPE P,                  "Offene Posten Summe
        RAST1 TYPE P,                  "Rasterfeld 1
        RAST2 TYPE P,                  "Rasterfeld 2
        RAST3 TYPE P,                  "Rasterfeld 3
        RAST4 TYPE P,                  "Rasterfeld 4
        RAST5 TYPE P,                  "Rasterfeld 5
        RAST6 TYPE P,                  "Rasterfeld 6
      END   OF RTAB.
*---- 'RBUS' = Rastertabelle fuer Summen pro Sachbearbeiter -
*ATA: BEGIN OF RBUS OCCURS 30,
      SORTK(1)   TYPE C,        "0 = Summe Gesber
                                "1 = Summe aller Gesber
      BUKRS LIKE BSIk-BUKRS,
      GSBER LIKE BSIk-GSBER,
      WAERS LIKE BSIk-WAERS,
      RAART TYPE C,             "Rasterart
                                "1 = Netto-Faelligkeit
                                "2 = Skonto1-Faelligkeit
                                "3 = Zahlungseingang
                                "4 = Ueber-Faelligkeit
      KUMUM TYPE P,             "Umsatz
      ANZAH TYPE P,             "Anzahlungen
      OPSUM TYPE P,             "Offene Posten Summe
      RAST1 TYPE P,             "Rasterfeld 1
      RAST2 TYPE P,             "Rasterfeld 2
      RAST3 TYPE P,             "Rasterfeld 3
      RAST4 TYPE P,             "Rasterfeld 4
      RAST5 TYPE P,             "Rasterfeld 5
      RAST6 TYPE P,             "Rasterfeld 6
    END   OF RBUS.
*---- 'RBUK' = Rastertabelle fuer Summen pro Buchungskreis  -
DATA: BEGIN OF RBUK OCCURS 30,
        SORTK(1)   TYPE C,             "0 = Summe Gesber
                                       "1 = Summe aller Gesber
                                       "2 = Umsatzdaten
        BUKRS LIKE BSIK-BUKRS,
        GSBER LIKE BSIK-GSBER,
        WAERS LIKE BSIK-WAERS,
        RAART TYPE C,                  "Rasterart
                                       "1 = Netto-Faelligkeit
                                       "2 = Skonto1-Faelligkeit
                                       "3 = Zahlungseingang
                                       "4 = Ueber-Faelligkeit
        SPERR TYPE P,                  "gesprrte Posten
        KUMUM TYPE P,                  "Umsatz
        ANZAH TYPE P,                  "Anzahlungen
        OPSUM TYPE P,                  "Offene Posten Summe
        RAST1 TYPE P,                  "Rasterfeld 1
        RAST2 TYPE P,                  "Rasterfeld 2
        RAST3 TYPE P,                  "Rasterfeld 3
        RAST4 TYPE P,                  "Rasterfeld 4
        RAST5 TYPE P,                  "Rasterfeld 5
        RAST6 TYPE P,                  "Rasterfeld 6
      END   OF RBUK.
---- 'RSUM' = Rastertabelle pro Währung über alle Buchungskreise ---
DATA: BEGIN OF RSUM OCCURS 30,
        SORTK(1)   TYPE C,             "0 = Summe Gesber
                                       "1 = Summe aller Gesber
      BUKRS LIKE BSIk-BUKRS,
      GSBER LIKE BSIk-GSBER,
        WAERS LIKE BSIK-WAERS,
        RAART TYPE C,                  "Rasterart
                                       "1 = Netto-Faelligkeit
                                       "2 = Skonto1-Faelligkeit
                                       "3 = Zahlungseingang
                                       "4 = Ueber-Faelligkeit
        SPERR TYPE P,                  "gesperrte Posten
        KUMUM TYPE P,                  "Umsatz
        ANZAH TYPE P,                  "Anzahlungen
        OPSUM TYPE P,                  "Offene Posten Summe
        RAST1 TYPE P,                  "Rasterfeld 1
        RAST2 TYPE P,                  "Rasterfeld 2
        RAST3 TYPE P,                  "Rasterfeld 3
        RAST4 TYPE P,                  "Rasterfeld 4
        RAST5 TYPE P,                  "Rasterfeld 5
        RAST6 TYPE P,                  "Rasterfeld 6
      END   OF RSUM.
*---- interne Tabelle für Periodenabgrenzung----
RANGES: BMONAT FOR RFPDO-DOPRBMON.
---- In die Felder RP01 bis RP05 werden dynamisch die von aussen ---
*---- eingegebenen Rasterpunkte uebertragen -
DATA: RP01(2)   TYPE P,                "   0
      RP02(2)   TYPE P,                "  20
      RP03(2)   TYPE P,                "  40
      RP04(2)   TYPE P,                "  80
      RP05(2)   TYPE P,                " 100
      RP06(3)   TYPE P,                "   1
      RP07(3)   TYPE P,                "  21
      RP08(3)   TYPE P,                "  41
      RP09(3)   TYPE P,                "  81
      RP10(3)   TYPE P.                " 101
*---- In die Felder RC01 bis RC10 werden die Rasterpunkte in -
---- charakterform abgestellt. (fuer REPLACE-Funktion in Variabler -
*---- Ueberschrift) -
DATA: RC01(4)   TYPE C,                                     "  0
      RC02(4)   TYPE C,                "  20
      RC03(4)   TYPE C,                "  40
      RC04(4)   TYPE C,                "  80
      RC05(4)   TYPE C,                " 100
      RC06(4)   TYPE C,                "   1
      RC07(4)   TYPE C,                "  21
      RC08(4)   TYPE C,                "  41
      RC09(4)   TYPE C,                "  81
      RC10(4)   TYPE C.                " 101
*---- Felder für Umsatzkennzeichen -
*---- für Ausweis der Sonderumsätze----
DATA: HUMKZ1    LIKE LFC3-SHBKZ,
      HUMKZ2    LIKE LFC3-SHBKZ,
      HUMKZ3    LIKE LFC3-SHBKZ,
      HUMKZ4    LIKE LFC3-SHBKZ,
      HUMKZ5    LIKE LFC3-SHBKZ,
      HUMKZ6    LIKE LFC3-SHBKZ,
      HUMKZ7    LIKE LFC3-SHBKZ,
      HUMKZ8    LIKE LFC3-SHBKZ,
      HUMKZ9    LIKE LFC3-SHBKZ,
      HUMKZ10   LIKE LFC3-SHBKZ.
*---- GBZAEHL - In diesem Feld wird vermerkt, fuer wieviele Ge- -
*----           schaeftsbereiche ein OP-Raster ausgegeben wird. -
----           Wird das Raster nur fuer einen Geschaeftsbereich ge- -
*----           druckt, so entfaellt das Summen-Raster. -
DATA: GBZAEHL(3) TYPE P.
---- TOP-FLAG '1' = bei TOP-OF-PAGE Einzelpostenueberschrift ausg. --
*----          '2' = bei TOP-OF-PAGE Ueberschrift fuer Raster ausgeb. *
*----          '3' = bei TOP-OF-PAGE ULINE ausgeben. -
----          '4' = bei TOP-OF-PAGE Stammsatzueberschrift ausgeben --
DATA: TOP-FLAG(1) TYPE C.
*---- SEL-STAMM  'J' = Stammsatz wird ausgewertet                     *
*----            'N' = Stammsatz wird nicht ausgewertet               *
*---- SEL-POSTN  'J' = Stammsatz hat Posten gerastert                 *
*----            'N' = Stammsatz hat keine Posten gerastert           *
DATA: BEGIN OF SEL,
        STAMM(1) TYPE C,
        POSTN(1) TYPE C,
        POST2(1) TYPE C,
      END   OF SEL.
*---- SATZART  '1' = Stammdaten -
*----          '2' = Faelligkeitsraster -
*----          '3' = Einzelposten -
DATA: SATZART(1) TYPE C.
*---- RART  =  Erste ausgewaehlte Rasterart -
DATA: RART(1)    TYPE C.
*---- TAGE  =  Tage nach denen die Posten sortiert sind -
DATA: TAGE(4)    TYPE P,
*---- NTAGE =  Tage fuer Netto-Faelligkeit -
      NTAGE(4)   TYPE P,
*---- STAGE =  Tage fuer Skonto1-Faelligkeit -
      STAGE(4)   TYPE P,
*---- ATAGE =  Alter der Belege -
      ATAGE(4)   TYPE P,
*---- UTAGE =  Tage fuer Ueber-Faelligkeit -
      UTAGE(4)   TYPE P.
*---- RASTERUU dient zur Sortierung der Einzelposten. Die Posten -
*----          gemaess ihrer Rasterung die Werte '1' bis '6' -
DATA: RASTERUU(1) TYPE C.
*---- RAART  Rasterart -
---- Die einzelnen Felder der Feldleiste werden bei SART-OF-SELECTION
*---- mit 1 oder 0 bestueckt. -
*ATA: BEGIN OF RAART,
      NET(1)   TYPE C,      "X = ausgewaehlt, ' ' = nicht ausgewaehlt
      SKT(1)   TYPE C,      "X = ausgewaehlt, ' ' = nicht ausgewaehlt
      UEB(1)   TYPE C,      "X = ausgewaehlt, ' ' = nicht ausgewaehlt
    END   OF RAART.
DATA: BEGIN OF GB,
        GSBER  LIKE BSIK-GSBER,
        WAERS  LIKE BSIK-WAERS,
      END   OF GB.
*---- Variable Ueberschriften -
DATA: BEGIN OF VARUEB1,
        FELD1(45)   TYPE C,
        FELD2(14)   TYPE C,
        FELD3(14)   TYPE C,
        FELD4(14)   TYPE C,
        FELD5(14)   TYPE C,
        FELD6(14)   TYPE C,
        FELD7(14)   TYPE C,
      END   OF VARUEB1.
DATA: BEGIN OF VARUEB2,
        FELD1(45)   TYPE C,
        FELD2(14)   TYPE C,
        FELD3(14)   TYPE C,
        FELD4(14)   TYPE C,
        FELD5(14)   TYPE C,
        FELD6(14)   TYPE C,
        FELD7(14)   TYPE C,
      END   OF VARUEB2.
DATA: VARUEB3(132),
      VARUEB4(132),
      VARTXT1(40),
      VARTXT(40)  TYPE C.
*---- Variable für Ausgabe der Sonderumsätze----
DATA: SHBBEZ LIKE T074T-LTEXT.
DATA: ASUMS  TYPE P.                                        "
*---- Interne Tabelle für Bezeichnungen der SHBKZ----
DATA: BEGIN OF BEZSHB OCCURS 10,
        SHBKZ LIKE T074T-SHBKZ,
        LTEXT LIKE T074T-LTEXT,
      END OF BEZSHB.
*---- Interne Tabelle für Zwischenspeicherung -
DATA: BEGIN OF BLKEY,
        BUKRS LIKE BSIK-BUKRS,
        BELNR LIKE BSIK-BELNR,
        GJAHR LIKE BSIK-GJAHR,
        BUZEI LIKE BSIK-BUZEI,
      END   OF BLKEY.
DATA: BEGIN OF RTAGE,
        NTAGE LIKE NTAGE,
        STAGE LIKE STAGE,
        ATAGE LIKE ATAGE,
        UTAGE LIKE UTAGE,
     END   OF RTAGE.
DATA: BEGIN OF HBSIK OCCURS 10.
        INCLUDE STRUCTURE BSIK.
        INCLUDE STRUCTURE BSEGA.
        INCLUDE STRUCTURE RTAGE.
DATA: END   OF HBSIK.
DATA: BEGIN OF REFBL OCCURS 10.
        INCLUDE STRUCTURE BLKEY.
        INCLUDE STRUCTURE RTAGE.
DATA: END   OF REFBL.
DATA: BEGIN OF HLFB1 OCCURS 10.
        INCLUDE STRUCTURE LFB1.
DATA: END   OF HLFB1.
DATA: BEGIN OF HT001 OCCURS 10.
        INCLUDE STRUCTURE T001.
DATA: END   OF HT001.
*---- Interne Tabelle für Ausgabe der Obligos -
DATA: BEGIN OF AOBLIGO OCCURS 12,
        OBART TYPE C,             "Flag für Obligoart 1 = Kontokorrent
                                       "                   2 = SHBKZ
                                  "                   3 = sonstige SHB
        SHBKZ LIKE T074T-SHBKZ,        "SHB-Kennzeichen
        LTEXT LIKE T074T-LTEXT,        "Bezeichnung
        OBLIG TYPE P,                  "Obligobetrag
      END OF AOBLIGO.
*---- Declarationen für Accessibility /ALV GRID -
data: ACC_MODE type c.
Data: UEBTEXT(22) type c.
Data: UEKTEXT(15)  type c.
Data: TITTEXT(100) type c.
Data: DATTEXT(10) type c.
DATA: BEGIN OF RTAB_ALV OCCURS 30,
      SORTK(1)   TYPE C,             "0 = Summe Gesber
                                     "1 = Summe aller Gesber
                                     "2 = Umsatzdaten
        BUKRS LIKE BSIk-BUKRS,
        lifnr LIKE LFA1-lifnr,
        busab like lfb1-busab,
        SORTL LIKE lfA1-SORTL,
        LAND1 LIKE lfA1-LAND1,
        GSBER LIKE BSIk-GSBER,
        WAERS LIKE BSIk-WAERS,
      hwaer like rf140-hwaer,
        RAART like RF140-RAART,        "Rasterart
      shkzg like bsik-shkzg,
      XGUTS TYPE C,                  "Gutschrift
        KUMUM LIKE RF140-KUMUMHW,      "Umsatz
        ANZAH like rf140-anzbthw,      "Anzahlungen
        OPSUM like RF140-gsaldd,       "Offene Posten Summe
        RAST1 like RF140-rast1,        "Rasterfeld 1
        RAST2 like RF140-rast2,        "Rasterfeld 2
        RAST3 like RF140-rast3,        "Rasterfeld 3
        RAST4 like RF140-rast4,        "Rasterfeld 4
        RAST5 like RF140-rast5,        "Rasterfeld 5
        RAST6 like RF140-rast6,        "Rasterfeld 6
      END   OF RTAB_ALV.
*"General Data
TYPE-POOLS: SLIS.
*DATA: BEGIN OF GT_OUTTAB OCCURS 0.
       INCLUDE STRUCTURE rtab_alv.
*DATA: END OF GT_OUTTAB.
Data: GS_LAYOUT TYPE SLIS_LAYOUT_ALV,
     G_EXIT_CAUSED_BY_CALLER,
     GS_EXIT_CAUSED_BY_USER TYPE SLIS_EXIT_BY_USER,
      G_REPID LIKE SY-REPID,
      G_GRID_TITLE TYPE  LVC_TITLE.
*"Callback
*Data: GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
     G_STATUS_SET   TYPE SLIS_FORMNAME VALUE 'PF_STATUS_SET',
Data: G_USER_COMMAND TYPE SLIS_FORMNAME VALUE 'USER_COMMAND'.
     G_TOP_OF_PAGE  TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE',
     G_TOP_OF_LIST  TYPE SLIS_FORMNAME VALUE 'TOP_OF_LIST',
     G_END_OF_LIST  TYPE SLIS_FORMNAME VALUE 'END_OF_LIST'.
*"Variants
DATA: GS_VARIANT LIKE DISVARIANT,
      G_SAVE.
Global structure of list
fieldcatalog
DATA:   LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
DATA:   GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE.
sort
*DATA:   GT_SORT     TYPE SLIS_T_SORTINFO_ALV.
events
*DATA:   GT_EVENTS   TYPE SLIS_T_EVENT.
*----- Structure for specific color settings -
*DATA:   COL_TAB_T TYPE SLIS_T_SPECIALCOL_ALV,
       COL_TAB   TYPE SLIS_SPECIALCOL_ALV.
DATA:   G_TABNAME TYPE SLIS_TABNAME VALUE 'RTAB_ALV'.
print
*DATA:   GS_PRINT    TYPE SLIS_PRINT_ALV.
*---- FIELD-GROUPS                            -
FIELD-GROUPS:
          HEADER,
          STAMMDATEN,
          OP-RASTER,
          EINZELPOSTEN.
INSERT
  LFB1-BUKRS                           " Buchungskreis
lfB1-BUSAB         " Sachbearbeiter
  LFA1-LIFNR                           " Kontonummer
  SATZART                              " Satzart
  RTAB-SORTK                           " Sortkz fuer Tabelle RTAB
                                       " '0' = normale Eintraege
                                       " '1' = Summeneintraege
  GB                                   " Geschaeftsbereich
                                       " - GB-GSBER
                                       " - GB-WAERS
  RASTERUU         " Kennzeichen fuer Detailposten bzw Raster
ab hier nur fuer Einzelposten -
  TAGE                                 " Rastertage  fuer Detailposten
  BSIK-UMSKZ                           " Umsatzkennzeichen
  BSIK-BLART                           " Belegart
BSIK-ZUONR         " Zuordnungsnummer
  BSIK-BELNR                           " Belegnummer
  BSIK-BUZEI                           " Belegzeile
INTO HEADER.
INSERT
Addressdaten
  ADRS-LINE0                           " 1. Zeile Adressenaufbereitung
  ADRS-LINE1                           " 2. "     "
  ADRS-LINE2                           " 3. "     "
  ADRS-LINE3                           " 4. "     "
  ADRS-LINE4                           " 5. "     "
  ADRS-LINE5                           " 6. "     "
  ADRS-LINE6                           " 7. "     "
ADRS-LINE7         " 8. "     "
ADRS-LINE8         " 9. "     "
ADRS-LINE9         " 10."     "
Umsatzdaten
  C-KUMUM                              " Umsatz
C-BABZG          " Berechtigt. Abzuege
C-UABZG          " Unberechtigt. Abzuege
C-KZINS          " Zinszahlungen
C-KUMAG          " Kum. Jahresausgleich
Obligos
  C-SALDO                              " Saldo ohne SHB-Vorgänge
  C-UMKZ1                              "SHBKZ 1
  C-SUMS1                              "Sonderumsatz 1
  C-UMKZ2                              "SHBKZ 2
  C-SUMS2                              "Sonderumsatz 2
  C-UMKZ3                              "SHBKZ 3
  C-SUMS3                              "Sonderumsatz 3
  C-UMKZ4                              "SHBKZ 4
  C-SUMS4                              "Sonderumsatz 4
  C-UMKZ5                              "SHBKZ 5
  C-SUMS5                              "Sonderumsatz 5
  C-UMKZ6                              "SHBKZ 6
  C-SUMS6                              "Sonderumsatz 6
  C-UMKZ7                              "SHBKZ 7
  C-SUMS7                              "Sonderumsatz 7
  C-UMKZ8                              "SHBKZ 8
  C-SUMS8                              "Sonderumsatz 8
  C-UMKZ9                              "SHBKZ 9
  C-SUMS9                              "Sonderumsatz 9
  C-UMKZ10                             "SHBKZ 10
  C-SUMS10                             "Sonderumsatz 10
  C-SONOB                              " Sonst. Obligen
Limits
  C-AGOBLI                             " Absolutes Gesamtobligo
Zahlungdaten
  LFB1-ZTERM                           "Zahlungsbedingung
  LFB1-ZAHLS                           "Sperrschlüssel für Zahlung
  LFB1-ZWELS                           "Zahlwege
  LFB1-XVERR                           "Zahlungsverrechnung
  LFB1-WEBTR                           "Wechsellimit
  LFB1-BUSAB                           " Sachbearbeiter
  lfa1-sortl
  lfa1-land1
INTO STAMMDATEN.
INSERT
  RTAB-RAART                           "Rasterart
  RTAB-SPERR                           "gesperrte Posten
  RTAB-KUMUM                           "Umsatz
  RTAB-ANZAH                           "Anzahlungen
  RTAB-OPSUM                           "Offene Posten Summe
  RTAB-RAST1                           "Rasterfeld 1
  RTAB-RAST2                           "Rasterfeld 2
  RTAB-RAST3                           "Rasterfeld 3
  RTAB-RAST4                           "Rasterfeld 4
  RTAB-RAST5                           "Rasterfeld 5
  RTAB-RAST6                           "Rasterfeld 6
INTO OP-RASTER.
INSERT
  BSIK-BUDAT                           " Buchungsdatum
  BSIK-BLDAT                           " Belegdatum
  BSIK-CPUDT                           " CPU-Datum
BKPF-USNAM         " User-ID
  BSIK-WAERS                           " Wahrungsschluessel
  BSEGA-NETDT                          " Nettofaelligkeitsdatum
FAEDE-NETDT        " Nettofaelligkeitsdatum
  BSIK-ZFBDT                           " Zahlungsfristen-Basisdatum
  BSIK-BSCHL                           " Buchungsschluessel
  BSIK-ZLSCH                           " Zahlungsschluessel
BSIK-MANST         " Mahnstufe
  SHBETRAG                             " Hauswaehrungsbetrag
  BSEGA-DMSHB                          " Hauswaehrungsbetrag
  BSEGA-WRSHB                          " Fremwaehrungsbetrag
INTO EINZELPOSTEN.
BEGIN_OF_BLOCK 1.
*ELECT-OPTIONS:
     GESBER   FOR BSIK-GSBER.
PARAMETERS:
       MONAT    LIKE RFPDO-DOPRBMON.
SELECT-OPTIONS:
       KKSALDO2 FOR RFSDO-KOPRSAL2,    "Saldovortrag
       AGOBLIG2 FOR RFSDO-KOPRAGO2.    "Absolutes Obligo
     RGOBLIGO FOR RFSDO-DOPRRGOB.          "Relatives Obligo
SELECT-OPTIONS:
     LAND     FOR LFA1-LAND1,
     KONTENGR FOR LFA1-KTOKK,
     SACHBEAR FOR LFB1-BUSAB,
       AKONTS   FOR LFB1-AKONT,
       AKONTP   FOR BSIK-HKONT.
SELECT-OPTIONS:
       BUDAT    FOR BSIK-BUDAT,
       BLDAT    FOR BSIK-BLDAT,
       NETDT    FOR BSEGA-NETDT.
PARAMETERS:     N_BELEGE    LIKE RFPDO-BPETNBEL
                                   DEFAULT 'X',   "Normale Belege.
                STAT_BLG    LIKE RFPDO-BPETSBEL.  "Statistische Belege
END_OF_BLOCK 1.
*ELECT-OPTIONS:
     BERABZU1 FOR LFC1-BABZG,
     UNBABZU1 FOR LFC1-UABZG,
     ZINSE1   FOR LFC1-KZINS,
     JHRAUSG1 FOR LFC1-KUMAG.
     BERABZUG FOR BEABZUG NO-DISPLAY,       "Berechtigter Abzug
     UNBABZUG FOR UBABZUG NO-DISPLAY,       "Unberechtigter Abzug
     ZINSEN   FOR KUMZINS NO-DISPLAY,       "Kumulierter Zins
     JHRAUSGL FOR JAHRAUG NO-DISPLAY.       "Kumulierter Jahresausgl.
BEGIN_OF_BLOCK 2.
PARAMETERS:
       SORTART  LIKE RFPDO1-KOPRSOAR DEFAULT '1',          "Doku
       VERDICHT LIKE RFPDO1-KOPRVERD DEFAULT '1',          "Doku
       RASTVERD LIKE RFPDO1-KOPRRAST DEFAULT '0',          "Doku
       KONZVERS LIKE RFPDO-DOPOKONZ,   "Konzernversion
       XBUKRDAT LIKE RFPDO3-ALLGBUKD DEFAULT 0, "Bukr.daten
       KAUSGABE like rfpdo3-ALLGKAOR.
     SELECTION-SCREEN BEGIN OF LINE.
     SELECTION-SCREEN COMMENT 01(30) TEXT-030.
PARAMETERS: RART-NET LIKE RFPDO-DOPRRNET DEFAULT 'X'.
     SELECTION-SCREEN COMMENT 33(01) TEXT-028.
PARAMETERS: RART-SKT LIKE RFPDO-DOPRRSKT DEFAULT 'X'.
     SELECTION-SCREEN COMMENT 35(01) TEXT-028.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: RART-ALT LIKE RFPDO1-KOPRRALT DEFAULT 'X'.
SELECTION-SCREEN COMMENT 03(28) TEXT-031.
SELECTION-SCREEN POSITION POS_HIGH.
PARAMETERS      RBLDAT   LIKE RFPDO2-KORD10BD.
SELECTION-SCREEN COMMENT 61(12) TEXT-032.
SELECTION-SCREEN END OF LINE.
     SELECTION-SCREEN COMMENT 37(01) TEXT-028.
PARAMETERS: RART-UEB LIKE RFPDO-DOPRRUEB DEFAULT 'X'.
     SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 01(31) TEXT-026.
PARAMETERS: RASTBIS1 LIKE RFPDO1-ALLGROGR DEFAULT '000'.
     SELECTION-SCREEN COMMENT 35(02) TEXT-027.
PARAMETERS: RASTBIS2 LIKE RFPDO1-ALLGROGR DEFAULT '020'.
     SELECTION-SCREEN COMMENT 41(02) TEXT-027.
PARAMETERS: RASTBIS3 LIKE RFPDO1-ALLGROGR DEFAULT '040'.
     SELECTION-SCREEN COMMENT 47(02) TEXT-027.
PARAMETERS: RASTBIS4 LIKE RFPDO1-ALLGROGR DEFAULT '080'.
     SELECTION-SCREEN COMMENT 53(02) TEXT-027.
PARAMETERS: RASTBIS5 LIKE RFPDO1-ALLGROGR DEFAULT '100'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 01(31) TEXT-029.
PARAMETERS:  FAKTOR LIKE RFPDO-DOPRFAKT DEFAULT '0'.
SELECTION-SCREEN COMMENT 35(1) TEXT-028.
PARAMETERS:  STELLEN LIKE RFPDO-DOPRFAKT DEFAULT '0'.
SELECTION-SCREEN END OF LINE.
PARAMETERS: PZUOR    LIKE RFPDO2-DOPRZUOR.
PARAMETERS: UMSATZKZ LIKE RFPDO1-DOPRSHBO. "DEFAULT 'WSABIMVD'.
PARAMETERS:
       TITLE       LIKE RFPDO1-ALLGLINE,
       LISTSEP     LIKE RFPDO-ALLGLSEP,
       MIKFICHE    LIKE RFPDO-ALLGMIKF.
PARAMETERS:
       P_LVAR    LIKE Gs_VARIANT-VARIANT DEFAULT SPACE modif id 508.
END_OF_BLOCK 2.
AT SELECTION-SCREEN OUTPUT.
if acc_mode is initial.
  LOOP AT SCREEN.
    IF SCREEN-GROUP1 = '508'.
      SCREEN-active    = '0'.
      MODIFY SCREEN.
    ENDIF.
ENDLOOP.
endif.
AT SELECTION-SCREEN ON AKONTS.
   Konvertierung der Kontonummer
  LOOP AT AKONTS.
    PERFORM ALPHAFORMAT(SAPFS000)
      USING AKONTS-LOW AKONTS-LOW.
    PERFORM ALPHAFORMAT(SAPFS000)
      USING AKONTS-HIGH AKONTS-HIGH.
    MODIFY AKONTS.
  ENDLOOP.
AT SELECTION-SCREEN ON AKONTP.
   Konvertierung der Kontonummer
  LOOP AT AKONTP.
    PERFORM ALPHAFORMAT(SAPFS000)
      USING AKONTP-LOW AKONTP-LOW.
    PERFORM ALPHAFORMAT(SAPFS000)
      USING AKONTP-HIGH AKONTP-HIGH.
    MODIFY AKONTP.
  ENDLOOP.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_LVAR.
  Gs_VARIANT-REPORT  = SY-REPID.
  Gs_VARIANT-VARIANT = P_LVAR.
  PERFORM F4_FOR_S_LVAR   USING Gs_VARIANT.
  P_LVAR = Gs_VARIANT-VARIANT.
AT SELECTION-SCREEN.
  IF NOT RASTBIS5 IS INITIAL.
    IF  RASTBIS5 GT RASTBIS4
    AND RASTBIS4 GT RASTBIS3
    AND RASTBIS3 GT RASTBIS2
    AND RASTBIS2 GT RASTBIS1.
    ELSE.
      MESSAGE E379.
    ENDIF.
  ELSE.
    IF NOT RASTBIS4 IS INITIAL.
      IF  RASTBIS4 GT RASTBIS3
      AND RASTBIS3 GT RASTBIS2
      AND RASTBIS2 GT RASTBIS1.
      ELSE.
        MESSAGE E379.
      ENDIF.
    ELSE.
      IF NOT RASTBIS3 IS INITIAL.
        IF  RASTBIS3 GT RASTBIS2
        AND RASTBIS2 GT RASTBIS1.
        ELSE.
          MESSAGE E379.
        ENDIF.
      ELSE.
        IF NOT RASTBIS2 IS INITIAL.
          IF  RASTBIS2 GT RASTBIS1.
          ELSE.
            MESSAGE E379.
          ENDIF.
        ELSE.
        nichts zu tun
        ENDIF.
      ENDIF.
    END
Related articles