SAP-LIST 報表-實戰(zhàn)

業(yè)務背景:

通過前期開發(fā)的學員錄入考勤系統(tǒng)積累的學員信息、學員考勤信息。為了便于管理與統(tǒng)計,現(xiàn)需要實現(xiàn)學員卡片打印、學員考勤打印。(write方式)

功能分析:

1)為實現(xiàn)打印功能,需用write方式;開發(fā)學員卡片打印程序、學員考勤打印程序。
2)課堂上確認具體格式需求。

打印實現(xiàn)效果
代碼實現(xiàn)

1.LIST報表屬性繪制基本頁面

*&---------------------------------------------------------------------*
*& Report ZHY01_HY101_20220627_02
*&---------------------------------------------------------------------*
*& Program Name         <程序名稱>: ZHY01_HY101_20220627_02
*& Purpose              <程序用途>: LIST 作業(yè)
*& Project Name         <項目名稱>: SAP_ABAP_01期間
*& Created by           <創(chuàng) 建 人>: HY101
*& Created on           <創(chuàng)建日期>: 20220627
*& FC Consultant        <功能顧問>: 鼠小倩
*& Description          <功能描述>: LIST 作業(yè)
*&---------------------------------------------------------------------*
*              Modification Log<程序修改日志>
*<日期>        <開發(fā)者>       <功能顧問>            <修改描述>
* 20220627     HY101       鼠小倩                S4HK909676
*&---------------------------------------------------------------------*
REPORT ZHY01_HY101_20220627_02 NO STANDARD PAGE HEADING LINE-SIZE 150.

*定義變量及初始化
   DATA: D_DATE    TYPE D,
         D_TIME    TYPE T.

*頁眉
TOP-OF-PAGE.
WRITE '學員基本信息卡' COLOR COL_HEADING.

START-OF-SELECTION.
*首行
  ULINE AT 20(100).  "繪制橫線
  WRITE: /20 SY-VLINE,119 SY-VLINE.  "位置20和位置120繪制豎線
  ULINE AT /20(100).

*左右外框+字
D_DATE = SY-DATUM.
D_TIME = SY-UZEIT.
WRITE: /20 SY-VLINE,'學員基本信息卡:'.
POSITION 95.
WRITE: (25) D_DATE USING EDIT MASK '查詢?nèi)掌冢篲___年__月__日',119 SY-VLINE,
       /20 SY-VLINE,119 SY-VLINE.
POSITION 96.
WRITE: (25) D_TIME USING EDIT MASK '查詢時間:__點__分__秒',119 SY-VLINE,
       /20 SY-VLINE,30'學號:',119 SY-VLINE,
       /20 SY-VLINE,30'姓名:',119 SY-VLINE,
       /20 SY-VLINE,30'性別:',119 SY-VLINE,
       /20 SY-VLINE,30'年齡:',119 SY-VLINE.
ULINE AT /20(100).

*頁數(shù)
WRITE: /20 SY-VLINE,105 '共',107 sy-pagno,'頁',119 SY-VLINE,
       /20 SY-VLINE,105 '第',107 sy-pagno,'頁',119 SY-VLINE.

*熱點-考勤記錄
SKIP TO LINE 13.
*INCLUDE <LIST>.
FORMAT HOTSPOT on COLOR 6 INVERSE ON.
WRITE 23'考勤記錄'.
FORMAT HOTSPOT OFF COLOR OFF.
*AT LINE-SELECTION.

*考勤記錄外框:左右下
DO 21 TIMES.
WRITE: /20 SY-VLINE,119 SY-VLINE.  "位置20和位置120繪制豎線
ENDDO.
ULINE AT /20(100).

*考勤匯總-橫線
SKIP TO LINE 30.
ULINE AT /80(40).

*考勤匯總-豎線
SKIP TO LINE 30.
DO 5 TIMES.
  WRITE: /80 SY-VLINE.
ENDDO.

*考勤匯總-字
SKIP TO LINE 31.
   POSITION 81.
   WRITE:  '考勤匯總',100 '5月',105'0次',
           /'',100 '6月',105'2次',
           /'',100 '7月',105'3次'.

*內(nèi)表-橫線
SKIP TO LINE 15.
DO 7 TIMES.
  ULINE AT 30(50).  "繪制橫線
  write /.
  NEW-LINE.
ENDDO.

*內(nèi)表-豎線
SKIP TO LINE 16.
  WRITE: /30 SY-VLINE,'考勤日期',54 SY-VLINE,'考勤時間',79 SY-VLINE.  "位置30和位置79繪制豎線
  write /.
SKIP TO LINE 18.
DO 6 TIMES.
  WRITE: /30 SY-VLINE,54 SY-VLINE,79 SY-VLINE.  "位置30和位置79繪制豎線
  write /.
ENDDO.
SKIP TO LINE 29.
ULINE AT 30(50).  "繪制橫線

運行結(jié)果展示

2.動態(tài)獲取數(shù)據(jù)庫數(shù)據(jù)。

TABLES: ZTKT_XYXX,
        ZTKT_XYKQ.

*定義變量及初始化
   DATA: gs_index,
         gt_table TYPE TABLE OF ztkt_xyxx,
         gs_table TYPE  ztkt_xyxx,
         gt_edit TYPE TABLE OF ztkt_xykq,
         gs_edit TYPE  ztkt_xykq.

*獲取數(shù)據(jù)庫數(shù)據(jù)
SELECT *
  FROM ztkt_xyxx
  INTO  CORRESPONDING FIELDS OF TABLE gt_table
  WHERE zxh = 'HY101'.

  SELECT *
    FROM ztkt_xykq
    INTO CORRESPONDING FIELDS OF TABLE gt_edit
    FOR ALL ENTRIES IN gt_table WHERE zxh = gt_table-zxh.

    LOOP AT  gt_table INTO gs_table.
    ENDLOOP.
    LOOP AT gt_edit INTO gs_edit.
    gs_index = sy-tfill.
    ENDLOOP.

WRITE / '考勤記錄查詢' COLOR COL_HEADING.
WRITE: / '學號:',gs_table-zxh,
      / '姓名:',gs_table-Zxm,
      / '性別:',gs_table-Zxb,
      / '性別:',gs_table-Zxb,
      / '考勤日期',gs_edit-zrq,
      / '考勤時間',gs_edit-zkqsj.

運行結(jié)果

3.點擊熱點——“考勤記錄”后的新頁

*&---------------------------------------------------------------------*
*&點擊熱點后的新頁
*&---------------------------------------------------------------------*
AT LINE-SELECTION.
WRITE / '考勤記錄查詢' COLOR COL_HEADING.
*首行
  ULINE AT 20(100).  "繪制橫線
  WRITE: /20 SY-VLINE,119 SY-VLINE.  "位置20和位置120繪制豎線
  ULINE AT /20(100).
*左右外框+字
D_DATE = SY-DATUM.
D_TIME = SY-UZEIT.
WRITE: /20 SY-VLINE,'學員基本信息卡:'.
POSITION 95.
WRITE: (25) D_DATE USING EDIT MASK '查詢?nèi)掌冢篲___年__月__日',119 SY-VLINE,
       /20 SY-VLINE,119 SY-VLINE.
POSITION 96.
WRITE: (25) D_TIME USING EDIT MASK '查詢時間:__點__分__秒',119 SY-VLINE,
       /20 SY-VLINE,30'學號:',gs_table-zxh,119 SY-VLINE,
       /20 SY-VLINE,30'姓名:',gs_table-Zxm,119 SY-VLINE,
       /20 SY-VLINE,30'性別:',gs_table-Zxb,119 SY-VLINE,
       /20 SY-VLINE,30'性別:',gs_table-Zxb,119 SY-VLINE.
ULINE AT /20(100).

*頁數(shù)
WRITE: /20 SY-VLINE,105 '共',107 sy-pagno,'頁',119 SY-VLINE,
       /20 SY-VLINE,105 '第',107 sy-pagno,'頁',119 SY-VLINE.

*考勤記錄外框:左右下
DO 21 TIMES.
WRITE: /20 SY-VLINE,119 SY-VLINE.  "位置20和位置120繪制豎線
ENDDO.
ULINE AT /20(100).

*考勤匯總-橫線
SKIP TO LINE 30.
ULINE AT /80(40).

*考勤匯總-豎線
SKIP TO LINE 30.
DO 5 TIMES.
  WRITE: /80 SY-VLINE.
ENDDO.

*考勤匯總-字
SKIP TO LINE 31.
   POSITION 81.
   WRITE:  '考勤匯總',100 '5月',105'0次',
           /'',100 '6月',105'2次',
           /'',100 '7月',105'3次'.
*內(nèi)表-橫線
SKIP TO LINE 15.
DO 7 TIMES.
  ULINE AT 30(50).  "繪制橫線
  write /.
  NEW-LINE.
ENDDO.

*內(nèi)表-豎線
SKIP TO LINE 16.
  WRITE: /30 SY-VLINE,'考勤日期',54 SY-VLINE,'考勤時間',79 SY-VLINE.  "位置30和位置79繪制豎線
*  write /.
SKIP TO LINE 18.
DO 6 TIMES.
  WRITE: /30 SY-VLINE,gs_edit-zrq,54 SY-VLINE,gs_edit-zkqsj,79 SY-VLINE.  "位置30和位置79繪制豎線
  write /.
ENDDO.
SKIP TO LINE 29.
ULINE AT 30(50).  "繪制橫線

運行結(jié)果
點擊熱點

查詢結(jié)果

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 01-LIST報表功能介紹02-LIST報表開發(fā)技巧03-LIST報表開發(fā)實戰(zhàn) 01-LIST報表功能介紹 列表是...
    鼠小倩閱讀 993評論 0 3
  • 01 ALV報表功能介紹02 ALV報表開發(fā)步驟03 ALV報表開發(fā)實戰(zhàn) 01 ALV報表功能介紹 AVL報表是A...
    鼠小倩閱讀 4,645評論 2 3
  • ALV報表 獲取表數(shù)據(jù) ALV報表 添加默認值 設置ALV字段可修改 一、獲取表數(shù)據(jù) 1.準備后臺表: 學員信息表...
    鼠小倩閱讀 1,462評論 0 2
  • 文章圖片上傳不正常,如需文檔,可聯(lián)系微信:1017429387 目錄 1 安裝... 4 1.1 配置探針... ...
    Mrhappy_a7eb閱讀 6,916評論 0 5
  • 應廣大學員的要求,將實用的Excel表格打包,并進行統(tǒng)一說明和講解。 這是年底最后一大波福利了,請各位伙伴珍惜! ...
    陶澤昱閱讀 2,411評論 3 5

友情鏈接更多精彩內(nèi)容