Shared Top Border

Enterprise Resource
Planning Portal

 

Advertise | Founder BLOG

ERPGenie.COM ABAP Tips and Tricks Database

THE ultimate
ERP website

 

Forums | Vote for us |

Google    Other Search Options

Login

Login to view more content!!!





Lost Password?
No account yet? Register

Registered Access

Poll

What area of ABAP are you interested in?
 
Home arrow Sample Code arrow ABAP Reports arrow Display daily cash receipts (ALV)
Display daily cash receipts (ALV) PDF Print E-mail
User Rating: / 1
PoorBest 
Written by Anon.   
Saturday, 20 January 2007
This program creates an ALV report for Daily Cash Receipts for a selected date range. REPORT ZDAILY_RECEIPTS .
 
 *-----------------------------------------------------------------------
 */ Description :This program creates an ALV report for Daily Cash
 *               Receipts for a selected date range.
 *-----------------------------------------------------------------------
 * Global data declaration
 
 TYPE-POOLS: slis.
 
 * Global structure of list
 TYPES:  BEGIN OF i_cust_invoices,   "This is a temp-table where SELECT
                                     "data is to be stored.
             bkpf  LIKE bkpf,         "Acct Doc Header structure
             bseg  LIKE bseg,         "Acct Doc Segment struc
             kna1  LIKE kna1,         "Customer Master struc
             skat  LIKE skat,         "Chart of Accts struc
         END OF i_cust_invoices.
 
 
 TABLES: bkpf,       "TABLES: def of Database tables.
         bseg,
         kna1,
         skat.
 
 */ Selection and Input Parameters
 SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME.
 
 SELECT-OPTIONS: s_belnr FOR bseg-belnr,   "Acct Doc number
                 s_budat FOR bkpf-budat,   "Doc Posting Date
                 s_blart FOR bkpf-blart   DEFAULT 'DZ'. "Document Type
 SELECTION-SCREEN END OF BLOCK block1.
 
 
 DATA:   gt_fieldcat TYPE slis_t_fieldcat_alv.
 DATA:   gt_outtab TYPE i_cust_invoices OCCURS 0 WITH HEADER LINE.
 DATA:   g_repid LIKE sy-repid.
 DATA:   i_bkpf TYPE bkpf  OCCURS 0 WITH HEADER LINE.
 
 * Initialization fieldcatalog
 INITIALIZATION.
 
   g_repid = sy-repid.
   PERFORM fieldcat_init USING gt_fieldcat[].
 
 * Start of Selection
 
 START-OF-SELECTION.
 * Data selection
   PERFORM select_data TABLES gt_outtab.
 
 * Display list
 END-OF-SELECTION.
   CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
        EXPORTING
             i_callback_program = g_repid
             it_fieldcat        = gt_fieldcat[]
        TABLES
             t_outtab           = gt_outtab.
 
 *-----------------------------------------------------------------------
 *    Forms
 *-----------------------------------------------------------------------
 
 * Initialization fieldcatalog   DEFINITION OF HEADING.
 *      Fieldnames and ref_fieldnames MUST be UPPER CASE !!
 
 FORM fieldcat_init USING rt_fieldcat TYPE slis_t_fieldcat_alv.
   DATA: ls_fieldcat TYPE slis_fieldcat_alv.
   DATA: pos TYPE i VALUE 1.
   CLEAR ls_fieldcat.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-BUDAT'.    "Posting Date
   ls_fieldcat-ref_fieldname = 'BUDAT'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   ls_fieldcat-key           = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-BELNR'.    "Acct Doc Number
   ls_fieldcat-ref_fieldname = 'BELNR'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-HKONT'.    "Acct number
   ls_fieldcat-ref_fieldname = 'HKONT'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO  rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-KOSTL'.    "Cost Center
   ls_fieldcat-ref_fieldname = 'KOSTL'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO  rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'SKAT-TXT20'.    "Acct Description
   ls_fieldcat-ref_fieldname = 'TXT20'.
   ls_fieldcat-ref_tabname   = 'SKAT'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'SKAT-TXT50'.    "Acct Description
   ls_fieldcat-ref_fieldname = 'TXT50'.
   ls_fieldcat-ref_tabname   = 'SKAT'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 *  ls_fieldcat-col_pos       =  pos.
 *  ls_fieldcat-fieldname     = 'BSEG-AUGBL'.    "Clearing Doc
 *  ls_fieldcat-ref_fieldname = 'AUGBL'.
 *  ls_fieldcat-ref_tabname   = 'BSEG'.
 *  APPEND ls_fieldcat TO rt_fieldcat.
 *  CLEAR ls_fieldcat.
 *  pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-KUNNR'.    "Cust number
   ls_fieldcat-ref_fieldname = 'KUNNR'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'KNA1-NAME1'.    "Customer name
   ls_fieldcat-ref_fieldname = 'NAME1'.
   ls_fieldcat-ref_tabname   = 'KNA1'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-XBLNR'.    "Ref Doc (Check) Number
   ls_fieldcat-ref_fieldname = 'XBLNR'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-SHKZG'.    "DR/CR ind.
   ls_fieldcat-ref_fieldname = 'SHKZG'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-WRBTR'.    "Amt in Doc Currency
   ls_fieldcat-ref_fieldname = 'WRBTR'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-WAERS'.    "Currency Key
   ls_fieldcat-ref_fieldname = 'WAERS'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-KURSF'.    "Exchange Rate
   ls_fieldcat-ref_fieldname = 'KURSF'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-DMBTR'.    "Amt in Local Currency
   ls_fieldcat-ref_fieldname = 'DMBTR'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-GJAHR'.    "Fiscal Year
   ls_fieldcat-ref_fieldname = 'GJAHR'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-BUZEI'.    "Doc Line #
   ls_fieldcat-ref_fieldname = 'BUZEI'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-BSCHL'.    "Posting Key
   ls_fieldcat-ref_fieldname = 'BSCHL'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
 *  Cost Center is not needed for cash posting - only expenses.
 *
 *  ls_fieldcat-col_pos       =  pos.
 *  ls_fieldcat-fieldname     = 'BSEG-KOSTL'.    "Cost Center
 *  ls_fieldcat-ref_fieldname = 'KOSTL'.
 *  ls_fieldcat-ref_tabname   = 'BSEG'.
 *  APPEND ls_fieldcat TO rt_fieldcat.
 *  CLEAR ls_fieldcat.
 *  pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-BUKRS'.    "Company Code
   ls_fieldcat-ref_fieldname = 'BUKRS'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-BLART'.    "Document Type
   ls_fieldcat-ref_fieldname = 'BLART'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BSEG-SGTXT'.    "Item Text
   ls_fieldcat-ref_fieldname = 'SGTXT'.
   ls_fieldcat-ref_tabname   = 'BSEG'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
   pos = pos + 1.
 
 
   ls_fieldcat-col_pos       =  pos.
   ls_fieldcat-fieldname     = 'BKPF-USNAM'.    "User name
   ls_fieldcat-ref_fieldname = 'USNAM'.
   ls_fieldcat-ref_tabname   = 'BKPF'.
   LS_FIELDCAT-NO_OUT        = 'X'.
   APPEND ls_fieldcat TO rt_fieldcat.
   CLEAR ls_fieldcat.
 
 
 ENDFORM.   "fieldcat_init
 
 
 * Data selection
 FORM select_data TABLES rt_outtab LIKE gt_outtab[].
   DATA: l_name LIKE tline-tdline.
 *  IF s_hkont IS INITIAL.
 
     SELECT  bukrs belnr blart budat usnam xblnr waers kursf INTO
              CORRESPONDING FIELDS OF TABLE
     i_bkpf FROM bkpf WHERE belnr IN s_belnr
                       AND  blart IN s_blart
                       AND  budat IN s_budat.
 
     LOOP AT i_bkpf.
 
       SELECT hkont kostl belnr gjahr buzei bschl shkzg dmbtr wrbtr sgtxt
          kunnr INTO (bseg-hkont, bseg-kostl, bseg-belnr, bseg-gjahr,
                      bseg-buzei, bseg-bschl, bseg-shkzg, bseg-dmbtr,
                      bseg-wrbtr, bseg-sgtxt, bseg-kunnr) FROM bseg
            WHERE belnr EQ i_bkpf-belnr.
         CLEAR: KNA1, skat.
         SELECT SINGLE  * FROM skat WHERE SPRAS EQ SY-LANGU
                                    AND  KTOPL EQ '7100'
                                    AND  SAKNR = bseg-hkont.
 
 
         "ska1, skb1 account # stored in SAKNR.
         "in BSEG, account # stored in HKONT.
 if bseg-SHKZG eq 'H'.
 
 multiply : bseg-wrbtr by -1,
            bseg-dmbtr by -1.
 endif.
         MOVE-CORRESPONDING: i_bkpf TO rt_outtab-bkpf,
                              bseg   TO rt_outtab-bseg,
                              skat   TO rt_outtab-skat.
 
 
         SELECT SINGLE name1 INTO rt_outtab-kna1-name1 FROM KNA1
                                 WHERE kunnr = rt_outtab-bseg-kunnr.
 
 
         APPEND rt_outtab.
         CLEAR: rt_outtab.
 
       ENDSELECT.
     ENDLOOP.
 
 ENDFORM.   " select_data
 
< Prev   Next >

Google Search

Statistics

Contribution Activity
Utilities: 38
Tips and Tricks: 334
Sample Code: 166
Total Contributions: 553

Member Activity
Members: 6310 since 2/1/2007!
New: 1 since yesterday!
Visitors: 1183721
We have 2 guests online

Newest Members

Welcome our newest members:

Google Ads

Shared Bottom Border

Contact Us | Polls | Add URL | Contribute | Privacy | Terms | Feedback

Discussion Forum | BLOG | Consultants: Post your resume | Companies: Advertise on ERPGenie.COM | Post Job
Financials Consultant | Consultant Review | Gallia Consulting | Supply Chain Project | SAP Financials Forum
GenieHoldings.COM, Inc. | Genie Press | WorkflowGenie | ESAGenie | ERPTopSites | ABAP Tips and Tricks | SAP Solutions Database

EDIGenie | Searching Survivor