ZFI002财务凭证查询报表

这是一个使用ALV展示的财务凭证报告,用于查询和显示FI领域的财务文档数据,包括凭证类型、公司代码、凭证号、日期等关键信息。报告支持筛选和详细信息查看,并通过调用标准交易码FB03进行进一步操作。
摘要由CSDN通过智能技术生成
就接到了新任务修改一下报表ZFI002财务凭证查询报表。当然对于老手来说这样的事情是小菜一碟了。也确实我是新手都2个小时搞定。所以清闲的很,用来记录以下过程。给需要的童鞋学习。任务主要是要新增加栏位:借方发生额,贷方发生额,文本,参照,用户名。并且用户名可以输入。不管它啦。先看看之前的是什么样子。呵呵~~

       输入(查询条件):公司代码:BKPF-BUKRS    凭证编号:BKPF-BELNR    会计年度:
BKPF-  GJAHR   凭证类型: BKPF-  BLART    凭证日期: BKPF-BLDAT    过账日期: BKPF-BUDAT    用户名: BKPF-USNAM(新增加哦~)
    
     表有:T_BKPF,T_BSEG,T_LFA1,T_SKAT
    
     处理过程有:GET_BKPF()-->CHECK_BKPF()-->GET_BSEG()-->PROCESS_BSEG()-->EVENTS_BUILD()-->LAYOUT_BUILD()-->FIELDS_BUILD()-->DISPLAY_BUILD().


    是不是很啰嗦啊,其实就是那么简单嘛,分析要求:取数据-->处理数据-->alv显示  其实很多ABAP的报表都是这样的一个套路。好了,其他的也就不多说了,直接上Code.

  1. *&---------------------------------------------------------------------*  
  2. *& Report  ZFI002  
  3. *&---------------------------------------------------------------------*  
  4. * Author : RobertLee  
  5. * Date   : 2008.05.02  
  6. * Purpose: FI Doc Report using ALV For Finance  
  7. *  
  8. *&---------------------------------------------------------------------*  
  9. * Change : Jasson.Lee  
  10. * Date   : 2012.02.14  
  11. * Purpose: FI Doc Report using ALV For Finance  Add col  
  12. *  
  13. *----------------------------------------------------------------------  
  14. REPORT  ZFI002.  
  15.   
  16. TABLES:   BKPF,BSEG,LFA1,SKAT.  
  17. *--------------------------------  
  18. * Global Types  
  19. * Essential Declaration for ALV Display  
  20. *--------------------------------  
  21. TYPE-POOLS: slis.  
  22. *--------------------------------  
  23. * Global Internal Tables  
  24. *--------------------------------  
  25. DATA:  
  26.   i_fieldcat_alv  TYPE slis_t_fieldcat_alv ,  
  27.   i_layout        TYPE slis_layout_alv,  
  28.   i_fieldcat      TYPE slis_fieldcat_alv,  
  29.   i_events        TYPE slis_t_event,  
  30.   w_events  LIKE LINE OF i_events,  
  31.   i_list_comments TYPE slis_t_listheader,  
  32.   w_list_comments LIKE LINE OF i_list_comments,  
  33.   w_repid LIKE sy-repid.  
  34.   
  35. DATA: BEGIN OF T_BKPF OCCURS 0,  
  36.        BUKRS LIKE BKPF-BUKRS,  "CoCode  
  37.        BELNR LIKE BKPF-BELNR,  "FI Doc  
  38.        GJAHR LIKE BKPF-GJAHR,  "Fiscal Year  
  39.        BLART LIKE BKPF-BLART,  "Doc Type  
  40.        BLDAT LIKE BKPF-BLDAT,  "Doc Date  
  41.        BUDAT LIKE BKPF-BUDAT,  "Posting Date  
  42.        TCODE LIKE BKPF-TCODE,  "Transaction Code  
  43.        AWKEY LIKE BKPF-AWKEY,  "Reference Doc  
  44.        BSTAT LIKE BKPF-BSTAT,  "Document Status  
  45.        BKTXT LIKE BKPF-BKTXT,  " txt  
  46.        XBLNR LIKE BKPF-XBLNR,  " ref  
  47.        USNAM LIKE BKPF-USNAM,  " user name  
  48.       END OF T_BKPF.  
  49.   
  50. DATA: BEGIN OF T_BSEG OCCURS 0,  
  51.        BUKRS LIKE BSEG-BUKRS,  "CoCode  
  52.        BELNR LIKE BSEG-BELNR,  "FI Doc  
  53.        GJAHR LIKE BSEG-GJAHR,  "Fiscal Year  
  54.        BUZEI LIKE BSEG-BUZEI,  "Item  
  55.        SHKZG LIKE BSEG-SHKZG,  "Credit or Debit  
  56.        PSWSL LIKE BSEG-PSWSL,  "Cur  
  57.        DMBTR like BSEG-DMBTR,  "Local Amount  
  58.        PSWBT LIKE BSEG-PSWBT,  "Amount  
  59.        SAKNR LIKE BSEG-SAKNR,  "G/L Account Number  
  60.        HKONT LIKE BSEG-HKONT,  "General Ledger Account  
  61.        LIFNR LIKE BSEG-LIFNR,  "Account Number of Vendor or Creditor  
  62.        BSCHL LIKE BSEG-BSCHL,  "Posting Key  
  63.   
  64.        BLART LIKE BKPF-BLART,  "Doc Type  
  65.        BLDAT LIKE BKPF-BLDAT,  "Doc Date  
  66.        BUDAT LIKE BKPF-BUDAT,  "Posting Date  
  67.        TCODE LIKE BKPF-TCODE,  "Transaction Code  
  68.        AWKEY LIKE BKPF-AWKEY,  "Reference Doc  
  69.        BSTAT LIKE BKPF-BSTAT,  "Document status  
  70.        TXT20 LIKE SKAT-TXT20,  "G/L Acccount Name  
  71.        NAME1 LIKE LFA1-NAME1,  "Vendor Name  
  72.        PSWBT1 LIKE BSEG-PSWBT,  "Amount  
  73.        PSWBT2 LIKE BSEG-PSWBT,  "Amount  
  74.        BKTXT LIKE BKPF-BKTXT,  " txt  
  75.        XBLNR LIKE BKPF-XBLNR,  " ref  
  76.        USNAM LIKE BKPF-USNAM,  " user name  
  77.       END OF T_BSEG.  
  78.   
  79. DATA: BEGIN OF T_LFA1 OCCURS 0,  
  80.       LIFNR LIKE LFA1-LIFNR,  
  81.       NAME1 LIKE LFA1-NAME1,  
  82.      END OF T_LFA1.  
  83. DATA: BEGIN OF T_SKAT OCCURS 0,  
  84.       SAKNR LIKE SKAT-SAKNR,  
  85.       TXT20 LIKE SKAT-TXT20,  
  86.       END OF T_SKAT.  
  87. DATA W_LEN TYPE I.  
  88. *--------------------------------  
  89. * Selection Screen  
  90. *--------------------------------  
  91. SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.  
  92. SELECT-OPTIONS:  
  93.   S_BUKRS FOR BKPF-BUKRS Default 5000,    "CoCode  
  94.   S_BELNR FOR BKPF-BELNR,                 "FI Doc  
  95.   S_GJAHR FOR BKPF-GJAHR Default 2008,    "Fiscal Year  
  96.   S_BLART FOR BKPF-BLART,                 "Doc Type  
  97.   S_BLDAT FOR BKPF-BLDAT,                 "Doc Date  
  98.   S_BUDAT FOR BKPF-BUDAT,                 "Posting Date  
  99.   S_USNAM FOR BKPF-USNAM.  
  100. SELECTION-SCREEN END OF BLOCK b1.  
  101.   
  102. *--------------------------------  
  103. * Initialization  
  104. *--------------------------------  
  105. INITIALIZATION.  
  106.   
  107. *--------------------------------  
  108. * At Selection Screen PBO  
  109. *--------------------------------  
  110. AT SELECTION-SCREEN OUTPUT.  
  111.   
  112. *--------------------------------  
  113. * Start of Selection  
  114. *--------------------------------  
  115. START-OF-SELECTION.  
  116.   PERFORM GET_BKPF.  
  117.   PERFORM CHECK_BKPF.  
  118.   PERFORM GET_BSEG.  
  119.   PERFORM Process_BSEG.  
  120.   PERFORM Events_build.  
  121.   PERFORM Layout_build.  
  122.   PERFORM Fields_bulid.  
  123.   PERFORM Display_data.  
  124.   
  125. END-OF-SELECTION.  
  126. *--------------------------------  
  127. * Top of Page  
  128. *--------------------------------  
  129. TOP-OF-PAGE.  
  130.   
  131. *--------------------------------  
  132. * At User Command  
  133. *--------------------------------  
  134. AT USER-COMMAND.  
  135. *--------------------------------  
  136. * At Line Selection  
  137. *--------------------------------  
  138. AT LINE-SELECTION.  
  139.   
  140. *&---------------------------------------------------------------------*  
  141. *&      Form  display_data  
  142. *&---------------------------------------------------------------------*  
  143. FORM display_data.  
  144.   
  145.   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'  
  146.    EXPORTING  
  147.      i_callback_user_command           = 'USER_COMMAND'           "用户触发事件  
  148. *    i_callback_pf_status_set          = 'PF_STATUS_SET'(001)     "调用用户事件和按钮事件  
  149.      i_callback_program                = w_repid                  "当前程序  
  150.      is_layout                         = i_layout                 "子函数layout_build填充的格式定义  
  151.      it_fieldcat                       = i_fieldcat_alv[]         "子函数fields填充的各列  
  152.      it_events                         = i_events[]  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值