不获取字段

2020-08-31 10:49发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


即使在提供了正确的代码之后,select语句也仅获取植物字段名称的字段-werks

SPAN {font-family:" Courier New"; 字体大小:10pt; 颜色:#000000; 背景:#FFFFFF; } .L0S31 {font-style:italic; 颜色:#808080; } .L0S32 {color:#3399FF; } .L0S33 {color:#4DA619; } .L0S52 {color:#0000FF; } .L0S55 {color:#800080; } .L0S70 {color:#808080; }


*&------------------------------------------ --------------------------- *
*&报告ZMMPRG1
*&---------- -------------------------------------------------- --------- *
*&
*&------------------------------ --------------------------------------- *
报告ZMMPRG1。
< br>表:mseg,kna1,t001w,makt,mara,marc。
类型:ty_mara的开头,
matnr类型的mara-matnr,
werks类型的marc-werks,
ty_mara的末尾,
ty_marc的开始,
matnr TYPE mara-matnr,
werks TYPE marc-werks,
ty_marc的结尾,
ty_mseg的开头,
matnr type mara-matnr,
werks类型marc-werks,
charg类型mseg-charg,
menge类型mseg-menge,
meins类型mseg-meins,
ebeln类型mseg-ebeln,
ebelp类型mseg- ebelp,
budat_mkpf类型mseg-budat_mkpf,
mblnr类型mseg-mblnr,
zeile类型mseg-zeile,
bwart类型mseg-bwart,
lbkum类型mseg-lbkum,
bukrs类型mseg-bukrs,
kunnr类型mseg-kunnr,
vbelp_im类型mseg-vbelp_im,
vbeln_im类型mseg-vbe ln_im,
shkzg类型mseg-shkzg,
dmbtr类型mseg-dmbtr,ty_mseg的结尾,
ty_makt的开头,
maktx类型的makt-maktx,
spras类型的makt- spras,
matnr类型mara-matnr,
ty_makt结束,
ty_t001w开头,
name1类型t001w-name1,
werks类型mseg-werks,
ty_t001w结束,
ty_kna1的开头,
kunnr类型kna1-kunnr,
name1的类型t001w-name1,
ty_kna1的结尾,
ty_final的开始,
matnr类型mseg-matnr,
> werks类型mseg-werks,
maktx类型makt-maktx,
name1类型t001w-name1,
charg类型mseg-charg,
menge类型mseg-menge,
meins类型mseg- meins,
ebeln类型mseg-ebeln,
ebelp类型mseg-ebelp,
budat_mkpf类型mseg-budat_mkpf,
mblnr类型mseg-mblnr,
zeile类型mseg-zeile,
bwart类型mseg-bwart,
lbkum类型mseg-lbkum,
bukrs类型mseg-bukrs,
kunnr类型mseg-kunnr,
vbelp_im类型mseg-vbelp_im,
vbeln_im类型mseg-vbeln_im ,
shkzg类型mseg-shkzg,
dmbtr类型mseg-dmbtr,
spras类型 makt-spras,
ty_final的末尾。
ty_makt类型的it_makt类型标准表,
ty_makt类型的wa_makt类型,
ty_t001w类型的标准表,
wa_t001w类型ty_t001w的类型,
it_kna1类型ty_kna1类型的标准表,
wa_kna1类型 ,
ty_mara的it_mara类型标准表,
wa_mara ty_mara类型标准表,
ty_final的标准表,
wa_final TYPE _final的类型,
fieldcatalog类型slis_t_fieldcat_alv和HEADER LINE, slis_layout_alv,
gd_repid,类似于sy-repid。
选择选项:
s_bukrs对于mseg-bukrs是必需的,
s_werks对于mseg-werks是必需的,
s_budat对于mseg-budat_mkpf。
选择开始。
PERFORM sr_data_retrivel。
PERFORM sr_build_fieldcatalog。
PERFORM sr_display_alv_report。
FORM sr_data_retrivel。

*从mseg INTO corre中选择矩阵 为it_marc中所有条目(其中werks = it_marc-werks)创建表it_mseg的字段。 如果sy-subrc = 0,则对it_mseg。
进行排序。
从makt中将matnr maktx选择到表it_makt的对应字段中,用于it_marc中的所有条目,其中matnr = it_marc-matnr。
endif。
如果sy-subrc = 0,则对it_makt进行排序。
从kna1中为表it_kna1的对应字段选择it_mseg中所有条目的kunnr name1,其中kunnr = it_mseg-kunnr。
endif。
将它_kna1排序。

将IT_MSEG上的LOOP放入WA_MSEG。
如果WA_MSEG-SHKZG ='H'。
WA_MSEG-DMBTR = WA_MSEG-DMBTR * +1。
wa_mseg -dmbtr ='S'。
wa_mseg-dmbtr = wa_mseg-dmbtr * -1。
WA_MSEG-MENGE = WA_MSEG-MENGE * wa_mseg-dmbtr。
ENDIF。
从WA_MSEG运输DMBTR修改IT_MSEG MENGE。
读取表it_​​mseg IN 使用密钥weks = wa_mseg-werks。
如果sy-subrc =0。
wa_final-matnr = wa_mseg-matnr。
wa_final-werks = wa_mseg-werks。
wa_final-maktx = wa_makt -maktx。
wa_final-charg = wa_mseg-charg。
wa_final-menge = wa_mseg-menge。
wa_final-meins = wa_mseg-meins。
wa_final-zeile = wa_mseg-zeile。
wa_final-bwart = wa_mseg-lbwart。
wa_final-lbkum = wa_mseg-lbkum。
wa_final-ebeln = wa_mseg-ebeln。
wa_final-ebelp = wa_mseg-ebelp。
wa_alfinal mblnr。
wa_final-kunnr = wa_kna1-kunnr。
wa_final-vbeln_im = wa_mseg-vbeln_im。
wa_final-vbelp_im = wa_mseg-vbelp_im。 wa_makt-maktx。
如果sy-subrc = 0。 -name1 = wa_t001w-name1。
endif。
endloop。
APPEND wa_final至it_final。
ENDFORM。


FORM sr_build_fieldcatalog。
fieldcatalog-fieldname ='MATNR'。
fieldcatalog-seltext_m ='材料编号'。
fieldcatalog-col_pos = 0.
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
CLEAR fieldcatalog。< br> fieldcatalog-fieldname ='WERKS'。
fieldcatalog-seltext_m ='植物'。
fieldcatalog-col_pos =1。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
CLEAR fieldcatalog。
fieldcatalog-fieldname ='MAKTX'。
fieldcatalog-seltext_m ='描述'。
fieldcatalog-col_pos =2。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog
CLEAR fieldcatalog。
fieldcatalog-fieldname ='NAME1'。
fieldcatalog-seltext_m ='植物描述'。
fieldcatalog-col_pos = 3.
fieldcatalog-outputlen = 20.
> APPEND fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='CHARG'。
fieldcatalog-seltext_m ='Batch'。
fieldcatalog-col_pos =4。
fieldcatalog-outputlen =20。
APPEND fieldcatalog TO fieldcatalog。
fieldcatalog-字段名 ='MENGE'。
fieldcatalog-seltext_m ='Quantity'。
fieldcatalog-col_pos =5。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。 MEINS'。
fieldcatalog-seltext_m ='基本单元'。
fieldcatalog-col_pos =6。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='ebeln '。
fieldcatalog-seltext_m ='采购订单号'。
fieldcatalog-col_pos =7。
fieldcatalog-outputlen =30。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='ebelp '。
fieldcatalog-seltext_m ='采购凭证项目编号'。
fieldcatalog-col_pos =8。
fieldcatalog-outputlen = 30.
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname = 'BUDAT_MKPF'。
fieldcatalog-seltext_m ='发布日期'。
fieldcatalog-col_pos =9。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname =' MBLNR'。
fieldcatalog-seltext_ m ='GR Number'。
fieldcatalog-col_pos =10。
fieldcatalog-outputlen =30。
APPEND fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='zeile'。 ='物料文档中的项目'。
fieldcatalog-col_pos =11。
fieldcatalog-outputlen =30。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='bwart'。 seltext_m ='运动类型'。
fieldcatalog-col_pos =12。
fieldcatalog-outputlen =30。追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='lbkum'。
fieldcatalog-seltext_m ='期初库存'。
fieldcatalog-col_pos =13。
fieldcatalog-outputlen =10。追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='kunnr'。
fieldcatalog-seltext_m = '客户帐号'。
fieldcatalog-col_pos =14。
fieldcatalog-outputlen =10。追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='vbeln_im'。
fieldcatalog-seltext_m ='送货编号'。
现场 dcatalog-col_pos =15。
fieldcatalog-outputlen =30。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='vbelv_im'。
fieldcatalog-seltext_m ='交货编号'。
fieldcatalog -col_pos =16。
fieldcatalog-outputlen =10。
APPEND fieldcatalog到fieldcatalog。
CLEAR fieldcatalog。
ENDFORM。

FORM sr_display_alv_report。
gd_repid = sy-repid 。

调用功能'REUSE_ALV_GRID_DISPLAY'
导出
i_callback_program = gd_repid
it_fieldcat = fieldcatalog []
i_save ='X'
表格
t_outtab = it_final
异常
program_error = 1
其他=2。
如果sy-subrc <>0。
消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
与SY-MSGV1 SY -MSGV2 SY-MSGV3 SY-MSGV4。
ENDIF。
ENDFORM。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


即使在提供了正确的代码之后,select语句也仅获取植物字段名称的字段-werks

SPAN {font-family:" Courier New"; 字体大小:10pt; 颜色:#000000; 背景:#FFFFFF; } .L0S31 {font-style:italic; 颜色:#808080; } .L0S32 {color:#3399FF; } .L0S33 {color:#4DA619; } .L0S52 {color:#0000FF; } .L0S55 {color:#800080; } .L0S70 {color:#808080; }


*&------------------------------------------ --------------------------- *
*&报告ZMMPRG1
*&---------- -------------------------------------------------- --------- *
*&
*&------------------------------ --------------------------------------- *
报告ZMMPRG1。
< br>表:mseg,kna1,t001w,makt,mara,marc。
类型:ty_mara的开头,
matnr类型的mara-matnr,
werks类型的marc-werks,
ty_mara的末尾,
ty_marc的开始,
matnr TYPE mara-matnr,
werks TYPE marc-werks,
ty_marc的结尾,
ty_mseg的开头,
matnr type mara-matnr,
werks类型marc-werks,
charg类型mseg-charg,
menge类型mseg-menge,
meins类型mseg-meins,
ebeln类型mseg-ebeln,
ebelp类型mseg- ebelp,
budat_mkpf类型mseg-budat_mkpf,
mblnr类型mseg-mblnr,
zeile类型mseg-zeile,
bwart类型mseg-bwart,
lbkum类型mseg-lbkum,
bukrs类型mseg-bukrs,
kunnr类型mseg-kunnr,
vbelp_im类型mseg-vbelp_im,
vbeln_im类型mseg-vbe ln_im,
shkzg类型mseg-shkzg,
dmbtr类型mseg-dmbtr,ty_mseg的结尾,
ty_makt的开头,
maktx类型的makt-maktx,
spras类型的makt- spras,
matnr类型mara-matnr,
ty_makt结束,
ty_t001w开头,
name1类型t001w-name1,
werks类型mseg-werks,
ty_t001w结束,
ty_kna1的开头,
kunnr类型kna1-kunnr,
name1的类型t001w-name1,
ty_kna1的结尾,
ty_final的开始,
matnr类型mseg-matnr,
> werks类型mseg-werks,
maktx类型makt-maktx,
name1类型t001w-name1,
charg类型mseg-charg,
menge类型mseg-menge,
meins类型mseg- meins,
ebeln类型mseg-ebeln,
ebelp类型mseg-ebelp,
budat_mkpf类型mseg-budat_mkpf,
mblnr类型mseg-mblnr,
zeile类型mseg-zeile,
bwart类型mseg-bwart,
lbkum类型mseg-lbkum,
bukrs类型mseg-bukrs,
kunnr类型mseg-kunnr,
vbelp_im类型mseg-vbelp_im,
vbeln_im类型mseg-vbeln_im ,
shkzg类型mseg-shkzg,
dmbtr类型mseg-dmbtr,
spras类型 makt-spras,
ty_final的末尾。
ty_makt类型的it_makt类型标准表,
ty_makt类型的wa_makt类型,
ty_t001w类型的标准表,
wa_t001w类型ty_t001w的类型,
it_kna1类型ty_kna1类型的标准表,
wa_kna1类型 ,
ty_mara的it_mara类型标准表,
wa_mara ty_mara类型标准表,
ty_final的标准表,
wa_final TYPE _final的类型,
fieldcatalog类型slis_t_fieldcat_alv和HEADER LINE, slis_layout_alv,
gd_repid,类似于sy-repid。
选择选项:
s_bukrs对于mseg-bukrs是必需的,
s_werks对于mseg-werks是必需的,
s_budat对于mseg-budat_mkpf。
选择开始。
PERFORM sr_data_retrivel。
PERFORM sr_build_fieldcatalog。
PERFORM sr_display_alv_report。
FORM sr_data_retrivel。

*从mseg INTO corre中选择矩阵 为it_marc中所有条目(其中werks = it_marc-werks)创建表it_mseg的字段。 如果sy-subrc = 0,则对it_mseg。
进行排序。
从makt中将matnr maktx选择到表it_makt的对应字段中,用于it_marc中的所有条目,其中matnr = it_marc-matnr。
endif。
如果sy-subrc = 0,则对it_makt进行排序。
从kna1中为表it_kna1的对应字段选择it_mseg中所有条目的kunnr name1,其中kunnr = it_mseg-kunnr。
endif。
将它_kna1排序。

将IT_MSEG上的LOOP放入WA_MSEG。
如果WA_MSEG-SHKZG ='H'。
WA_MSEG-DMBTR = WA_MSEG-DMBTR * +1。
wa_mseg -dmbtr ='S'。
wa_mseg-dmbtr = wa_mseg-dmbtr * -1。
WA_MSEG-MENGE = WA_MSEG-MENGE * wa_mseg-dmbtr。
ENDIF。
从WA_MSEG运输DMBTR修改IT_MSEG MENGE。
读取表it_​​mseg IN 使用密钥weks = wa_mseg-werks。
如果sy-subrc =0。
wa_final-matnr = wa_mseg-matnr。
wa_final-werks = wa_mseg-werks。
wa_final-maktx = wa_makt -maktx。
wa_final-charg = wa_mseg-charg。
wa_final-menge = wa_mseg-menge。
wa_final-meins = wa_mseg-meins。
wa_final-zeile = wa_mseg-zeile。
wa_final-bwart = wa_mseg-lbwart。
wa_final-lbkum = wa_mseg-lbkum。
wa_final-ebeln = wa_mseg-ebeln。
wa_final-ebelp = wa_mseg-ebelp。
wa_alfinal mblnr。
wa_final-kunnr = wa_kna1-kunnr。
wa_final-vbeln_im = wa_mseg-vbeln_im。
wa_final-vbelp_im = wa_mseg-vbelp_im。 wa_makt-maktx。
如果sy-subrc = 0。 -name1 = wa_t001w-name1。
endif。
endloop。
APPEND wa_final至it_final。
ENDFORM。


FORM sr_build_fieldcatalog。
fieldcatalog-fieldname ='MATNR'。
fieldcatalog-seltext_m ='材料编号'。
fieldcatalog-col_pos = 0.
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
CLEAR fieldcatalog。< br> fieldcatalog-fieldname ='WERKS'。
fieldcatalog-seltext_m ='植物'。
fieldcatalog-col_pos =1。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
CLEAR fieldcatalog。
fieldcatalog-fieldname ='MAKTX'。
fieldcatalog-seltext_m ='描述'。
fieldcatalog-col_pos =2。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog
CLEAR fieldcatalog。
fieldcatalog-fieldname ='NAME1'。
fieldcatalog-seltext_m ='植物描述'。
fieldcatalog-col_pos = 3.
fieldcatalog-outputlen = 20.
> APPEND fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='CHARG'。
fieldcatalog-seltext_m ='Batch'。
fieldcatalog-col_pos =4。
fieldcatalog-outputlen =20。
APPEND fieldcatalog TO fieldcatalog。
fieldcatalog-字段名 ='MENGE'。
fieldcatalog-seltext_m ='Quantity'。
fieldcatalog-col_pos =5。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。 MEINS'。
fieldcatalog-seltext_m ='基本单元'。
fieldcatalog-col_pos =6。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='ebeln '。
fieldcatalog-seltext_m ='采购订单号'。
fieldcatalog-col_pos =7。
fieldcatalog-outputlen =30。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='ebelp '。
fieldcatalog-seltext_m ='采购凭证项目编号'。
fieldcatalog-col_pos =8。
fieldcatalog-outputlen = 30.
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname = 'BUDAT_MKPF'。
fieldcatalog-seltext_m ='发布日期'。
fieldcatalog-col_pos =9。
fieldcatalog-outputlen =20。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname =' MBLNR'。
fieldcatalog-seltext_ m ='GR Number'。
fieldcatalog-col_pos =10。
fieldcatalog-outputlen =30。
APPEND fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='zeile'。 ='物料文档中的项目'。
fieldcatalog-col_pos =11。
fieldcatalog-outputlen =30。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='bwart'。 seltext_m ='运动类型'。
fieldcatalog-col_pos =12。
fieldcatalog-outputlen =30。追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='lbkum'。
fieldcatalog-seltext_m ='期初库存'。
fieldcatalog-col_pos =13。
fieldcatalog-outputlen =10。追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='kunnr'。
fieldcatalog-seltext_m = '客户帐号'。
fieldcatalog-col_pos =14。
fieldcatalog-outputlen =10。追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='vbeln_im'。
fieldcatalog-seltext_m ='送货编号'。
现场 dcatalog-col_pos =15。
fieldcatalog-outputlen =30。
追加fieldcatalog到fieldcatalog。
fieldcatalog-fieldname ='vbelv_im'。
fieldcatalog-seltext_m ='交货编号'。
fieldcatalog -col_pos =16。
fieldcatalog-outputlen =10。
APPEND fieldcatalog到fieldcatalog。
CLEAR fieldcatalog。
ENDFORM。

FORM sr_display_alv_report。
gd_repid = sy-repid 。

调用功能'REUSE_ALV_GRID_DISPLAY'
导出
i_callback_program = gd_repid
it_fieldcat = fieldcatalog []
i_save ='X'
表格
t_outtab = it_final
异常
program_error = 1
其他=2。
如果sy-subrc <>0。
消息ID SY-MSGID类型SY-MSGTY编号SY-MSGNO
与SY-MSGV1 SY -MSGV2 SY-MSGV3 SY-MSGV4。
ENDIF。
ENDFORM。

付费偷看设置
发送
3条回答
野沐沐
1楼-- · 2020-08-31 11:21

嗨Nidhi,

请使用CODE格式化程序放置代码。

如果您看到WERKS数据,则还应该看到MATNR数据。 您可以将MATNR的col_pos更改为" 0"以外的任何其他值,看看是否出现。 如果是,则请调试程序,查看丢失的数据。 这就是您的解决方法。

问候

GK

clasier
2楼-- · 2020-08-31 11:38

嗨Nidhi,

您没有填充内部表" LT_MARC"。 我看不到上述表中有任何代码。

谢谢

Gourab

我已经调试了。

有数据,但仅从一个字段获取值。

也尝试了col-pos东西,但没有用

一周热门 更多>