AVL_全选_取消全选_打印_ZMM1035
来源:互联网 发布:渗透之c君事件 知乎 编辑:程序博客网 时间:2024/05/13 13:48
*&---------------------------------------------------------------------**& Report ZMM1035*&*&---------------------------------------------------------------------**& 采购凭证打印 *&*&---------------------------------------------------------------------*REPORT zmm1035.TYPE-POOLS: slis.TABLES: a003,konp,ztemp_vendor,ekko,lfm1,lfa1,t024,ekpa.DATA: zitcpo LIKE itcpo.DATA: z TYPE i, wa_ekpo TYPE ekpo, wa_eket TYPE eket, wa_tkomv TYPE komv, it_ekpo TYPE TABLE OF ekpo.DATA: zrsnum LIKE eket-rsnum.DATA: zwaers LIKE ekko-waers, zekgrp LIKE ekko-ekgrp, v_werks(10) TYPE c, t_zg(15) TYPE c, t_bz(10) TYPE c, v_bukrs(40) TYPE c, v_vtext LIKE t052u-text1.DATA: BEGIN OF i_data OCCURS 0, ebeln LIKE ekko-ebeln, "Document No. 采购凭证 ebelp LIKE ekpo-ebelp, "Item 行项目号 matnr LIKE ekpo-matnr, "Material txz01 LIKE ekpo-txz01, "Material description wrkst LIKE mara-wrkst, "基本物料 2009.06.08 menge LIKE ekpo-menge, "Quantity netpr LIKE ekpo-netpr, "Price mwskz LIKE ekpo-mwskz, kbetr LIKE konp-kbetr, " 2009.10.21 税率转换为数值 v_price TYPE p DECIMALS 6, v_dj(14) TYPE c, peinh LIKE ekpo-peinh, "Price unit meins LIKE ekpo-meins, werks LIKE ekpo-werks, eindt LIKE eket-eindt, "Delivery date bedat LIKE eket-bedat, "Purchase order date amount(11) TYPE c, "sub.total flag(1) TYPE c, "Item category groes LIKE mara-groes, "大小量纲 2012.08.10 ztxz01(21) TYPE c, ztxz02(21) TYPE c, zlg1(17) TYPE c, zlg2(17) TYPE c, zkbetr LIKE konv-kbetr, "金额 zwaers LIKE konv-waers, "币别 zkpein LIKE konv-kpein, "单位 10000 y_price TYPE p DECIMALS 6, zycjg(14) TYPE c,END OF i_data.DATA: BEGIN OF i_header OCCURS 0 ,ebeln LIKE ekpo-ebeln,werks LIKE ekpo-werks,bedat LIKE ekko-bedat,lifnr LIKE lfa1-lifnr, name1 LIKE lfa1-name1,stcd1 LIKE lfa1-stcd1,addr LIKE lfa1-stras,telf1 LIKE lfa1-telf1,telfx LIKE lfa1-telfx,adrnr LIKE lfa1-adrnr,email LIKE adr6-smtp_addr,zsabe LIKE lfb1-zsabe,verkf LIKE lfm1-verkf,bankn LIKE lfbk-bankn,eknam LIKE t024-eknam,v_vtext LIKE t052u-text1,mwskz LIKE eine-mwskz,stext LIKE t007s-text1,ekorg LIKE ekko-ekorg, "eikto LIKE lfm1-eikto, "打印采购订单限定格式ekgrp LIKE ekko-ekgrp,bsart LIKE ekko-bsart, "订单类型 *采购组的联系方式v_telfx LIKE t024-telfx, tel_number LIKE t024-tel_number, zlifnr LIKE ekko-zlifnr,zname1 LIKE ekko-zname1,waers LIKE ekko-waers,zterm LIKE ekko-zterm,lifn2 LIKE ekpa-lifn2,knumv LIKE ekko-knumv, "条件记录号END OF i_header .DATA: BEGIN OF i_wrkst OCCURS 0, matnr LIKE mara-matnr, wrkst LIKE mara-wrkst, END OF i_wrkst.DATA: v_total_c LIKE konv-kawrt, v_total LIKE konv-kawrt. "totalDATA: BEGIN OF it_konv OCCURS 0 , ebeln LIKE ekko-ebeln, "采购凭证 knumv LIKE konv-knumv, "条件记录号 kposn LIKE konv-kposn, "行项目号 kschl LIKE konv-kschl, "条件类型 kbetr LIKE konv-kbetr, "金额 waers LIKE konv-waers, "币别 kpein LIKE konv-kpein, "单位 10000END OF it_konv.*&-----------报表输出用itab ------2014.08.13DATA: BEGIN OF itab OCCURS 0 , cbox(1) TYPE c, "选择框 ebeln LIKE ekko-ebeln, "采购凭证 lifn2 LIKE ekpa-lifn2, "原厂供应商 name1 LIKE lfa1-name1, "供应商名称 ekgrp LIKE ekko-ekgrp, "采购组 bedat LIKE ekko-bedat,"凭证日期 dycs(5) TYPE c,END OF itab.DATA: itab2 LIKE TABLE OF itab WITH HEADER LINE.DATA:wa_sort TYPE slis_t_sortinfo_alv, wa_variant TYPE disvariant, v_repid TYPE sy-repid VALUE sy-repid.DATA:i_fieldcat TYPE lvc_t_fcat, "输出的内表字段 zwa_fieldcat TYPE lvc_s_fcat, i_events TYPE slis_t_event, "事件存储内表 wa_events TYPE slis_alv_event, i_ddval TYPE lvc_t_drop, "存储下拉列表的数据 th_layout TYPE lvc_s_layo, wa_ddval TYPE lvc_s_drop.*CONSTANTS:c_formname_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.CONSTANTS cns_pf_status TYPE slis_formname VALUE 'ALV_PF_STATUS'.*CONSTANTS cns_user_command TYPE slis_formname VALUE 'ALV_USER_COMMAND'.*************************************************************************SELECT-SRECCN************************************************************************SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE text-bl1."选择屏幕块SELECT-OPTIONS: zebeln FOR ekko-ebeln."采购凭证SELECT-OPTIONS: zlifn2 FOR ekpa-lifn2."供应商SELECT-OPTIONS: zekorg FOR ekko-ekorg."采购组织SELECT-OPTIONS: zekgrp1 FOR ekko-ekgrp."采购组SELECT-OPTIONS: zbedat FOR ekko-bedat."凭证日期SELECTION-SCREEN END OF BLOCK bl1.START-OF-SELECTION. PERFORM sub_get_opt_date. "获取报表输出的数据 PERFORM f_create_fieldcat. PERFORM f_display_alv.* PERFORM sub_get_data. "获取打印输出的数据* PERFORM sub_process_data . "处理打印输出的数据* PERFORM sub_print_data . "打印*&---------------------------------------------------------------------**& Form sub_get_opt_date*&---------------------------------------------------------------------** text 获取报表输出的数据*----------------------------------------------------------------------*FORM sub_get_opt_date. SELECT ekko~ebeln ekpa~lifn2 ekko~ekgrp ekko~bedat INTO CORRESPONDING FIELDS OF TABLE itab FROM ekko INNER JOIN ekpa ON ekko~ebeln = ekpa~ebeln WHERE ekko~ebeln IN zebeln AND ekpa~lifn2 IN zlifn2 AND ekko~ekorg IN zekorg AND ekko~ekgrp IN zekgrp1 AND ekko~bedat IN zbedat AND ekpa~parvw = 'WL'. IF sy-subrc = 0. LOOP AT itab. SELECT SINGLE name1 INTO itab-name1 FROM lfa1 WHERE lifnr = i_header-lifn2 . MODIFY itab. CLEAR itab. ENDLOOP. ENDIF.ENDFORM. "sub_get_opt_date*@---------------------------------------------------------------------**@ Form f_display_alv*@---------------------------------------------------------------------** 调用 FUNCTION 输出ALV报表*----------------------------------------------------------------------*FORM f_display_alv . CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC' EXPORTING i_callback_program = v_repid it_fieldcat_lvc = i_fieldcat it_events = i_events[] i_default = 'X' i_save = 'A' i_callback_user_command = 'USER_COMMAND' i_callback_pf_status_set = 'SET_PF_STATUS' "指定自建的状态栏 is_layout_lvc = th_layout TABLES t_outtab = itab. "i_alv.ENDFORM. " f_display_alv*& Form set_pf_status*&--------------------------------------------------------------------** 自建状态栏的名称,自定义的GUI状态*---------------------------------------------------------------------*FORM set_pf_status USING rt_extab TYPE slis_t_extab. SET PF-STATUS 'ZMM1035_STATUS'."自建状态栏的名称ENDFORM. "set_pf_status*&--------------------------------------------------------------------**& Form USER_COMMAND*&--------------------------------------------------------------------** text*---------------------------------------------------------------------** -->UCOMM text* -->SELFIELD text*---------------------------------------------------------------------*FORM user_command USING ucomm LIKE sy-ucomm "接收用户的命令 selfield TYPE slis_selfield. READ TABLE itab INDEX selfield-tabindex. CHECK sy-subrc = 0. DATA: wl_answer TYPE c. DATA: zbz TYPE c.*******************************************自动刷新alv数据到内表中,省去点击保存之后才刷新数据***注意 selfield-refresh = 'X'.只做这个是不够的 DATA lr_grid TYPE REF TO cl_gui_alv_grid. CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR' IMPORTING e_grid = lr_grid. CALL METHOD lr_grid->check_changed_data. selfield-refresh = 'X'. selfield-row_stable = 'X'. selfield-col_stable = 'X'.***************************************** IF ucomm = '&JS' OR ucomm = '&WC'.** ucomm = '&DATA_SAVE'.* CALL FUNCTION 'POPUP_TO_CONFIRM'* EXPORTING* text_question = '您确定要执行该操作吗?'"TEXT-S07 "确定要删除吗?* icon_button_1 = '是' "TEXT-S08 "是* icon_button_2 = '否' "TEXT-S09 "否* default_button = '2'* display_cancel_button = 'X'* start_column = 25* start_row = 6* IMPORTING* answer = wl_answer* EXCEPTIONS* text_not_found = 1* OTHERS = 2. IF ucomm = '&PRINT'. "打印选中***********判断是否有勾选记录 LOOP AT itab WHERE cbox = 'X'. zbz = 'X'. ENDLOOP. IF zbz = 'X'. PERFORM print_data.* selfield-refresh = 'X'. ELSE. MESSAGE '请勾选要打印的行项目!' TYPE 'I'. ENDIF. ELSEIF ucomm = 'ALL'. PERFORM select_all. PERFORM alv_refresh CHANGING selfield-col_stable selfield-row_stable selfield-refresh. ELSEIF ucomm = 'DALL'. PERFORM cancle_all. PERFORM alv_refresh CHANGING selfield-col_stable selfield-row_stable selfield-refresh. ENDIF.* IF wl_answer = '1'.* CASE ucomm.* WHEN '&WC'.* WHEN '&JS'.***********判断是否有勾选记录* LOOP AT i_list WHERE cbox = 'X'.* zbz = 'X'.* ENDLOOP.* IF zbz = 'X'.* PERFORM ggzt_form. "* selfield-refresh = 'X'. "设置刷新标记 必须* LOOP AT i_mes.* MESSAGE i_mes TYPE 'I'.* ENDLOOP.** ELSE.* MESSAGE '请勾选更改状态的行项目!' TYPE 'I'.* ENDIF.* CLEAR zbz.* ENDCASE.* ENDIF.ENDFORM. "USER_COMMAND*&---------------------------------------------------------------------**& Form cancle_all*&---------------------------------------------------------------------**& 打印数据*&---------------------------------------------------------------------*FORM print_data. PERFORM sub_get_data. "获取打印输出的数据 PERFORM sub_process_data . "处理打印输出的数据 PERFORM sub_print_data . "打印ENDFORM. "cancle_all********一下三个子函数为全选和取消全选使用*&---------------------------------------------------------------------**& Form alv_refresh*&---------------------------------------------------------------------** 更改选择的值*----------------------------------------------------------------------*FORM alv_refresh CHANGING po_col_stable po_row_stable po_refresh. po_col_stable = 'X'. po_row_stable = 'X'. po_refresh = 'X'.ENDFORM. " alv_refresh*&---------------------------------------------------------------------**& Form cancle_all*&---------------------------------------------------------------------**& 取消全选*&---------------------------------------------------------------------*FORM cancle_all. LOOP AT itab. itab-cbox = ''. MODIFY itab. ENDLOOP.ENDFORM. "cancle_all*&---------------------------------------------------------------------**& Form select_all*& 全选*&---------------------------------------------------------------------*FORM select_all. LOOP AT itab. itab-cbox = 'X'. MODIFY itab. ENDLOOP.ENDFORM. "select_all*&---------------------------------------------------------------------**& Form init_alv_summary*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** -->V_I_FIELDCAT text*----------------------------------------------------------------------*FORM f_create_fieldcat . CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'CBOX'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '选择' . IF zwa_fieldcat-fieldname = 'CBOX'. zwa_fieldcat-key = 'X'. zwa_fieldcat-edit = 'X'. zwa_fieldcat-checkbox = 'X'. ENDIF. APPEND zwa_fieldcat TO i_fieldcat. CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'EBELN'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '采购凭证' . APPEND zwa_fieldcat TO i_fieldcat. CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'LIFN2'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '原厂供应商' . APPEND zwa_fieldcat TO i_fieldcat. CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'NAME1'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '原厂供应商名称' . APPEND zwa_fieldcat TO i_fieldcat. CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'EKGRP'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '采购组' . APPEND zwa_fieldcat TO i_fieldcat. CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'BEDAT'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '凭证日期' . APPEND zwa_fieldcat TO i_fieldcat. CLEAR zwa_fieldcat. zwa_fieldcat-fieldname = 'DYCS'. zwa_fieldcat-tabname = 'ITAB' . zwa_fieldcat-scrtext_m = '打印次数' . APPEND zwa_fieldcat TO i_fieldcat.ENDFORM. " init_alv_summary*&---------------------------------------------------------------------**& Form sub_get_data*&---------------------------------------------------------------------** text 获取打印输出的数据*----------------------------------------------------------------------*FORM sub_get_data. MOVE itab[] TO itab2[]. DELETE itab2 WHERE cbox = ''. "删除未选中的 SELECT * FROM ekko INTO CORRESPONDING FIELDS OF TABLE i_header FOR ALL ENTRIES IN itab2 WHERE ebeln = itab2-ebeln.* SELECT * INTO CORRESPONDING FIELDS OF TABLE i_header FROM ekko* WHERE ebeln IN zebeln** "AND lifnr IN zlifnr* AND ekorg IN zekorg* AND ekgrp IN zekgrp1* AND bedat IN zbedat.** AND frgke = '02'. "审批通过 IF i_header IS NOT INITIAL. SELECT * FROM ekpo INTO CORRESPONDING FIELDS OF TABLE it_ekpo FOR ALL ENTRIES IN i_header WHERE ebeln = i_header-ebeln AND loekz <> 'X' ."没有删除标记的*&----------------------从konv里面获取条件价格 原厂价格 SELECT knumv "条件记录号 kposn "行项目号 kschl "条件类型 kbetr "金额 waers "币别 kpein "单位10000 FROM konv INTO CORRESPONDING FIELDS OF TABLE it_konv FOR ALL ENTRIES IN i_header WHERE knumv = i_header-knumv "条件记录号 AND kschl = 'PB77'. "条件类型 LOOP AT it_konv. READ TABLE i_header WITH KEY knumv = it_konv-knumv. it_konv-ebeln = i_header-ebeln. MODIFY it_konv. CLEAR it_konv. ENDLOOP.* SELECT * INTO CORRESPONDING FIELDS OF TABLE it_ekpo FROM ekpo WHERE ebeln in zebeln and LOEKZ = ''. LOOP AT it_ekpo INTO wa_ekpo. READ TABLE it_konv WITH KEY ebeln = wa_ekpo-ebeln kposn = wa_ekpo-ebelp. i_data-zkbetr = it_konv-kbetr. "原厂价格 i_data-zwaers = it_konv-waers. "原厂币别 i_data-zkpein = it_konv-kpein. "原厂单位 i_data-y_price = it_konv-kbetr / it_konv-kpein. "原厂单价 i_data-zycjg = i_data-y_price . i_data-ebeln = wa_ekpo-ebeln. "Document No. 采购凭证 i_data-ebelp = wa_ekpo-ebelp. "Item 行项目号 i_data-matnr = wa_ekpo-matnr. "Material No. i_data-txz01 = wa_ekpo-txz01. "Material Description i_data-menge = wa_ekpo-menge. "Quantity i_data-mwskz = wa_ekpo-mwskz. i_data-meins = wa_ekpo-meins. "单位 i_data-amount = wa_ekpo-netwr. "s ub.total i_data-netpr = wa_ekpo-netpr. "价格 i_data-peinh = wa_ekpo-peinh. "价格单位 i_data-v_price = wa_ekpo-netpr / wa_ekpo-peinh. "dj i_data-v_dj = i_data-v_price. i_data-flag = wa_ekpo-pstyp. "Item category APPEND i_data. CLEAR: wa_ekpo, wa_eket,wa_tkomv. ENDLOOP. SELECT matnr wrkst FROM mara INTO TABLE i_wrkst FOR ALL ENTRIES IN i_data " 2009.06.08 WHERE matnr = i_data-matnr. ENDIF.ENDFORM. "sub_get_data*&---------------------------------------------------------------------**& Form sub_process_data*&---------------------------------------------------------------------** text*----------------------------------------------------------------------*FORM sub_process_data. SORT i_data BY ebeln. LOOP AT i_data.************************取物料的大小量纲by augus 2012.08.10 DATA: string1(21) TYPE c, string2(21) TYPE c, len TYPE i. SELECT SINGLE groes INTO i_data-groes FROM mara WHERE matnr = i_data-matnr. len = STRLEN( i_data-groes ). IF len > 17. CALL FUNCTION 'STRING_SPLIT_AT_POSITION' "大小量纲拆分 EXPORTING string = i_data-groes pos = 17 langu = '1' IMPORTING string1 = string1 string2 = string2. i_data-zlg1 = string1. i_data-zlg2 = string2. ELSE. i_data-zlg1 = i_data-groes. ENDIF. CLEAR: string1, string2, len. len = STRLEN( i_data-txz01 ). IF len > 27. CALL FUNCTION 'STRING_SPLIT_AT_POSITION' "物料描述拆分 EXPORTING string = i_data-txz01 pos = 21 langu = '1' IMPORTING string1 = string1 string2 = string2. i_data-ztxz01 = string1. i_data-ztxz02 = string2. ELSE. i_data-ztxz01 = i_data-txz01 . ENDIF. CLEAR: string1, string2, len.************************************************** SELECT SINGLE eindt FROM eket INTO i_data-eindt WHERE ebeln = i_data-ebeln AND ebelp = i_data-ebelp.* IF i_data-ebeln = zebeln.* v_total = v_total + i_data-amount. "Total amount* v_total_c = v_total.* ENDIF.* zebeln = i_data-ebeln. SELECT SINGLE * FROM a003 WHERE aland = 'CN' AND mwskz = i_data-mwskz. IF sy-subrc = 0. SELECT SINGLE * FROM konp WHERE knumh = a003-knumh. IF sy-subrc = 0. i_data-kbetr = konp-kbetr / 1000. ELSE. i_data-kbetr = 0. ENDIF. ENDIF. MODIFY i_data. ENDLOOP. LOOP AT i_header. SELECT SINGLE lifn2 INTO i_header-lifn2 FROM ekpa WHERE ebeln = i_header-ebeln AND parvw = 'WL'. IF sy-subrc = 0. SELECT SINGLE eikto FROM lfm1 INTO i_header-eikto WHERE lifnr = i_header-lifn2 " i_header-lifnr " 2014.08.11 改为临时供应商 AND ekorg = i_header-ekorg. SELECT SINGLE * FROM lfm1 WHERE lifnr = i_header-lifn2. "i_header-lifnr 2014.08.11 改为临时供应商* IF lfm1-expvz = '2' .* i_header-lifnr = i_header-zlifnr.* SELECT SINGLE * FROM ztemp_vendor WHERE lifnr = i_header-zlifnr.* i_header-name1 = ztemp_vendor-name1. * i_header-verkf = ztemp_vendor-verkf.* i_header-telf1 = ztemp_vendor-telf1.* i_header-addr = ztemp_vendor-ort01.* i_header-telfx = ztemp_vendor-telfx.* i_header-telf1 = ztemp_vendor-telf1.* ELSE. SELECT SINGLE name1 stcd1 stras telf1 telfx adrnr FROM lfa1 INTO (i_header-name1, i_header-stcd1, i_header-addr, i_header-telf1, i_header-telfx,lfa1-adrnr) WHERE lifnr = i_header-lifn2 . "i_header-lifnr. 2014.08.11 改为临时供应商 SELECT SINGLE smtp_addr "get E_mail FROM adr6 INTO i_header-email WHERE addrnumber = lfa1-adrnr. SELECT SINGLE verkf "get contact person FROM lfm1 INTO i_header-verkf WHERE lifnr = i_header-lifn2 . "i_header-lifnr. 2014.08.11 改为临时供应商* ENDIF. ENDIF.*********************税率************************ SELECT SINGLE text1 FROM t007s INTO i_header-stext WHERE mwskz = i_header-mwskz AND spras = '1' AND kalsm = 'TAXCN'.******************************************************************************************************************************** SELECT SINGLE werks FROM ekpo INTO i_header-werks WHERE ebeln = i_header-ebeln. SELECT SINGLE ekgrp FROM ekko INTO i_header-ekgrp WHERE ebeln = i_header-ebeln. SELECT SINGLE bsart FROM ekko INTO i_header-bsart WHERE ebeln = i_header-ebeln. " 2009.06.22*********************** SELECT SINGLE * "header data FROM ekko WHERE ebeln = i_header-ebeln. SELECT SINGLE * "Contract Person of Customer FROM t024 WHERE ekgrp = i_header-ekgrp.**************** 2009.10.20采购组的联系方式 IF sy-subrc = 0. i_header-eknam = t024-eknam. i_header-v_telfx = t024-telfx. i_header-tel_number = t024-tel_number. ENDIF. MODIFY i_header. CLEAR i_header. ENDLOOP.ENDFORM. "sub_process_data*&---------------------------------------------------------------------**& Form sub_print_data*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM sub_print_data . DATA: index TYPE i, zindex TYPE i. DESCRIBE TABLE i_header LINES index. CALL FUNCTION 'OPEN_FORM' EXPORTING form = 'ZMMPRO03' language = sy-langu device = 'PRINTER' dialog = 'X' OPTIONS = zitcpo EXCEPTIONS canceled = 1 device = 2 form = 3 OPTIONS = 4 unclosed = 5 mail_options = 6 archive_error = 7 invalid_fax_number = 8 more_params_needed_in_batch = 9 spool_error = 10 OTHERS = 11. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. LOOP AT i_header. zindex = sy-tabix. PERFORM read_data USING i_header. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'HEADER' window = 'HEADER'. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'COMPANY' window = 'COMPANY'. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'HEADER' window = 'MAIN'. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'ITEM1' window = 'MAIN'.* *************************************************** LOOP AT i_data WHERE ebeln = i_header-ebeln. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'ITEM2' window = 'MAIN'.*******************物料描述的拆分modify by 2012.08.10* IF i_data-ztxz02 IS NOT INITIAL OR i_data-zlg2 IS NOT INITIAL.* CALL FUNCTION 'WRITE_FORM'* EXPORTING* element = 'ITEM4'* window = 'MAIN'.* ENDIF. READ TABLE i_wrkst WITH KEY matnr = i_data-matnr. IF i_wrkst-wrkst <> ''. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'ITEM3' window = 'MAIN'. ENDIF. ENDLOOP. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'FOOTER' window = 'MAIN'. IF zindex < index."不是最好一页 sapscript的换页NEW-PAGE CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'NEWPAGE' window = 'MAIN'. ENDIF. CLEAR v_total. ENDLOOP. CALL FUNCTION 'CLOSE_FORM'.ENDFORM. " sub_print_data*&---------------------------------------------------------------------**& Form read_data*&---------------------------------------------------------------------** text*----------------------------------------------------------------------*FORM read_data USING i_header LIKE i_header. CLEAR: zwaers,zekgrp,v_bukrs,v_werks,t_zg,t_bz,v_vtext. SELECT SINGLE * FROM ekko WHERE ebeln = i_header-ebeln. zwaers = i_header-waers. zekgrp = i_header-ekgrp. CASE i_header-werks. WHEN '1000'. v_bukrs = '1000工厂'. v_werks = '制造一部'. t_zg = '小凡、小诺'. t_bz = '小米'. WHEN OTHERS. v_werks = ''. t_zg = ''. t_bz = ''. ENDCASE. LOOP AT i_data WHERE ebeln = i_header-ebeln. v_total = v_total + i_data-amount. "Total amount v_total_c = v_total. ENDLOOP. SELECT text1 FROM t052u INTO v_vtext WHERE zterm = i_header-zterm. "付款方式 ENDSELECT .ENDFORM. "read_data
0 0
- AVL_全选_取消全选_打印_ZMM1035
- 全选及取消全选
- jquery全选,取消全选
- 全选/取消 全选
- jQuery全选、取消全选
- checkbox 全选 取消全选
- 全选和取消全选
- jquery全选,取消全选
- chebox全选 取消全选
- chebox全选 取消全选
- 全选/取消全选checkbox
- 全选/取消全选
- 全选与取消全选
- icheck 全选 取消全选
- 全选 取消全选
- 全选/取消
- 全选/取消
- 复选框全选、取消全选
- [iOS]ARC下循环引用的问题
- 【输出%】poj 2350 Above Average
- GDB调试入门篇
- 无法修改linux/ubuntu密码(Authentication token manipulation error )问题解决过程
- 锅具
- AVL_全选_取消全选_打印_ZMM1035
- shell if语句格式详解
- 设计模式基础学习一之设计原则
- mysql
- SVN Windows 命令
- 螺旋数组如何生成
- iOS学习笔记 —利用dispatch_once创建单例
- 图文讲解8大排序算法
- (5)基于hadoop的简单网盘应用实现1