ABAP-OLE.docx_第1页
ABAP-OLE.docx_第2页
ABAP-OLE.docx_第3页
ABAP-OLE.docx_第4页
ABAP-OLE.docx_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

*&-*& Report ZWM_015*&*&-*&*&*&-*REPORT zwm_015.TABLES: mchb,mbew,t320,mara,makt.TYPE-POOLS ole2.DATA: v_excel TYPE ole2_object, v_sheet TYPE ole2_object, v_book TYPE ole2_object, v_cell TYPE ole2_object, v_range TYPE ole2_object, v_font TYPE ole2_object, v_color TYPE ole2_object, v_border TYPE ole2_object, v_column TYPE ole2_object.TYPE-POOLS: slis.DATA: afield TYPE slis_fieldcat_alv, fieldcat TYPE slis_t_fieldcat_alv, gs_layout TYPE slis_layout_alv, g_repid TYPE sy-repid, i_layout TYPE slis_layout_alv, rt_extab TYPE slis_t_extab, gridlsl TYPE lvc_s_glay.DATA: BEGIN OF it_excel OCCURS 0, 输出ALV汇总结构 l_matnr TYPE mchb-matnr,物料编码 l_maktx TYPE makt-maktx,物料描述 l_werks TYPE mchb-werks, 工厂 l_lgort TYPE mchb-lgort,库存地点 l_lgnum TYPE t320-lgnum, 仓库号 l_mtart TYPE t134t-mtbez,物料类型 l_msehl TYPE t006a-msehl,单位 l_lbkum TYPE mbew-lbkum,账面数量 l_lbkum1 TYPE mbew-lbkum,账面数量 l_salk3 TYPE mbew-salk3, 金额 END OF it_excel.SELECTION-SCREEN BEGIN OF BLOCK blk WITH FRAME TITLE text.PARAMETERS: p_werks LIKE mchb-werks OBLIGATORY , 工厂 p_lgort LIKE mchb-lgort OBLIGATORY , 库存地点 p_lfgja LIKE mchb-lfgja OBLIGATORY DEFAULT sy-datum+0(4). 会计年度SELECTION-SCREEN END OF BLOCK blk.DATA: BEGIN OF it_tab OCCURS 0, l_matnr TYPE mchb-matnr,物料编码 l_werks TYPE mchb-werks, 工厂 l_lgort TYPE mchb-lgort,库存地点 l_clabs TYPE mchb-clabs, l_cumlm TYPE mchb-cumlm, l_cinsm TYPE mchb-cinsm, l_ceinm TYPE mchb-ceinm, l_cspem TYPE mchb-cspem, l_cretm TYPE mchb-cretm, l_maktx TYPE makt-maktx,物料描述 l_meins TYPE mara-meins,单位 l_lbkum TYPE mbew-lbkum,账面数量 l_salk3 TYPE mbew-salk3, 金额 l_bwtar TYPE mbew-bwtar,评估类型 l_bklas TYPE mbew-bklas,评估类 l_lgnum TYPE t320-lgnum, 仓库号 l_charg TYPE mchb-charg,评估类型 l_mtart TYPE t134t-mtbez,物料类型 l_zsalk3 TYPE mbew-salk3, 总金额 l_msehl TYPE t006a-msehl,单位中文文本 l_salks1 TYPE mbew-salk3, l_salks2 TYPE mbew-salk3, l_salks3 TYPE mbew-salk3, l_salks4 TYPE mbew-salk3, l_salks5 TYPE mbew-salk3, l_salks6 TYPE mbew-salk3,END OF it_tab.*DATA: BEGIN OF it_tab2 OCCURS 0,* l_matnr TYPE mard-matnr,物料编码* l_werks TYPE mard-werks, 工厂* l_lgort TYPE mard-lgort,库存地点* l_labst TYPE mard-labst,* l_umlme TYPE mard-umlme,* l_insme TYPE mard-insme,* l_einme TYPE mard-einme,* l_speme TYPE mard-speme,* l_retme TYPE mard-retme,* l_maktx TYPE makt-maktx,物料描述* l_meins TYPE mara-meins,单位* l_lbkum TYPE mbew-lbkum,账面数量* l_salk3 TYPE mbew-salk3, 金额* l_msehl TYPE t006a-msehl,单位中文文本* l_bwtar TYPE mbew-bwtar,评估类型* l_bklas TYPE mbew-bklas,评估类* l_lgnum TYPE t320-lgnum, 仓库号* l_charg TYPE mchb-charg,评估类型* l_mtart TYPE t134t-mtbez,物料类型* l_zsalk3 TYPE mbew-salk3, 总金额* l_salks1 TYPE mbew-salk3,* l_salks2 TYPE mbew-salk3,* l_salks3 TYPE mbew-salk3,* l_salks4 TYPE mbew-salk3,* l_salks5 TYPE mbew-salk3,* l_salks6 TYPE mbew-salk3,*END OF it_tab.DATA: BEGIN OF itab_t320 OCCURS 0, lgnum LIKE t320-lgnum, 仓库号 lgort LIKE t320-lgort, 存储位置 END OF itab_t320.DATA : BEGIN OF it_ze OCCURS 0, l_zsalk3 TYPE mbew-salk3, END OF it_ze.DATA it_zje LIKE TABLE OF it_ze WITH HEADER LINE .DATA: BEGIN OF it_alv OCCURS 0, 输出ALV汇总结构 flag(1), l_matnr TYPE t134t-mtbez,物料编码 l_maktx TYPE makt-maktx,物料描述 l_werks TYPE mchb-werks, 工厂 l_lgort TYPE mchb-lgort,库存地点 l_lgnum TYPE t320-lgnum, 仓库号 l_charg TYPE mchb-charg,评估类型 l_msehl TYPE t006a-msehl,单位 l_lbkum TYPE mbew-lbkum,账面数量 l_lbkum1 TYPE mbew-lbkum,盘点数量 l_salk3 TYPE mbew-salk3, 金额 l_zsalk3 TYPE mbew-salk3,总金额 l_mtart TYPE t134t-mtbez,物料类型 l_bwtar TYPE mbew-bwtar,评估类型 l_bklas TYPE mbew-bklas,评估类* l_clabs TYPE mchb-clabs,* l_cspem TYPE mchb-cspem, END OF it_alv.DATA it_tab1 LIKE TABLE OF it_tab WITH HEADER LINE.DATA: BEGIN OF it_mara OCCURS 0, l_meins TYPE mara-meins, END OF it_mara.INITIALIZATION . text = 请输入选择条件. g_repid = sy-repid.START-OF-SELECTION.*定义两个方法 PERFORM get_data. PERFORM disp_data.*&-*& Form GET_DATA*&-* text*-* - p1 text* - p2 text*-*FORM get_data . CLEAR:it_alv,it_alv. SELECT lgnum lgort INTO CORRESPONDING FIELDS OF TABLE itab_t320 FROM t320 WHERE werks = p_werks AND lgort = p_lgort. IF sy-subrc NE 0. MESSAGE 只能选择区域库仓库所在库存地点 TYPE I. STOP. RETURN. ENDIF. SELECT amatnr 物料编号 awerks 工厂 algort 库存地点 aclabs acumlm acinsm aceinm acspem acretm bmaktx 物料描述 dmeins 单位 clbkum 账面数量 csalk3 金额 cbwtar 评估类型 cbklas 评估类 INTO TABLE it_tab1 FROM mchb AS a INNER JOIN makt AS b ON amatnr = bmatnr AND bspras = 1 当加上语言类型为1的话只能显示出一部分数据 INNER JOIN mbew AS c ON amatnr = cmatnr AND awerks = cbwkey AND acharg = cbwtar 这个条件对于数据里边现有的数据没有符合的,所以暂时没有加,如果数据多的话,不妨取消 INNER JOIN mara AS d ON amatnr = dmatnr WHERE awerks EQ p_werks AND algort EQ p_lgort AND alfgja = p_lfgja. IF p_werks NE 2399. SELECT amatnr 物料编号 awerks 工厂 algort 库存地点 alabst aumlme ainsme aeinme aspeme aretme bmaktx 物料描述 dmeins 单位* clbkum 账面数量* csalk3 金额* cbwtar 评估类型* cbklas 评估类 INTO TABLE it_tab FROM mard AS a INNER JOIN makt AS b ON amatnr = bmatnr AND bspras = 1 当加上语言类型为1的话只能显示出一部分数据* INNER JOIN mbew AS c ON amatnr = cmatnr* AND awerks = cbwkey* AND ACHARG = CBWTAR 这个条件对于数据里边现有的数据没有符合的,所以暂时没有加,如果数据多的话,不妨取消 INNER JOIN mara AS d ON amatnr = dmatnr WHERE awerks EQ p_werks AND algort EQ p_lgort AND alfgja = p_lfgja. LOOP AT it_tab. SELECT SINGLE lbkum salk3 bwtar bklas INTO (it_tab-l_lbkum,it_tab-l_salk3,it_tab-l_bwtar,it_tab-l_bklas) FROM mbew WHERE matnr = it_tab-l_matnr AND bwkey = it_tab-l_werks. MODIFY it_tab. ENDLOOP. ELSE. SELECT amatnr 物料编号 awerks 工厂 algort 库存地点 alabst aumlme ainsme aeinme aspeme aretme bmaktx 物料描述 dmeins 单位 INTO TABLE it_tab FROM mard AS a INNER JOIN makt AS b ON amatnr = bmatnr AND bspras = 1 当加上语言类型为1的话只能显示出一部分数据 INNER JOIN mara AS d ON amatnr = dmatnr WHERE awerks EQ p_werks AND algort EQ p_lgort AND alfgja p1 text* p1 text* P_FIELDCAT text*-*FORM fieldcat_init USING u_er_fieldcat TYPE slis_t_fieldcat_alv. DATA: afieldcat TYPE slis_fieldcat_alv, pos TYPE i. CLEAR pos. DEFINE d_get_field. pos = pos + 1. clear afieldcat. afieldcat-col_pos = pos. afieldcat-fieldname = &1. afieldcat-seltext_l = &2. afieldcat-key = &3. append afieldcat to u_er_fieldcat. END-OF-DEFINITION. d_get_field L_MATNR 物料编码 X. d_get_field L_MAKTX 物料描述 X. d_get_field L_WERKS 工厂 X. d_get_field L_LGORT 库存地点 X. d_get_field L_LGNUM 仓库号 . d_get_field L_MTART 评估类型 . d_get_field L_MSEHL 单位 . d_get_field L_LBKUM 账面数量 . d_get_field L_LBKUM1 盘点数量 . d_get_field L_SALK3 金额 .*d_get_field

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论