2020-08-27 11:03发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
如何在LSMW中维护标题和项目关系? 我有两个文件,一个具有标题记录,另一个具有每个标题记录的Item详细信息。
我必须编写代码,以便在标头记录中填充值(在映射和翻译中)后,该条目的项目记录是否也被填充? 我想知道:
我需要创建一个循环语句,还是LSMW可以处理此关系?
谢谢
LSMW将处理此问题,不需要LOOP。 在"定义源结构"步骤中,首先定义HEADER,然后在HEADER下定义DETAIL。 现在,在下一步中,您需要将字段添加到结构中。 您必须确保将关键字段添加到将它们绑定在一起的两个结构。 它们的名称必须完全相同。 这是程序将记录绑定在一起的方式。 就是这样。
Rards,
Rich Heilman
Hi。
我必须为IDoc CRMXIF_ORDER_M01处理LSMW。 麻烦的是,我必须使用不同的Partner Function插入3 partner_no。 但是在映射过程中,我不知道如何设置。
你能给我个主意吗?
最诚挚的问候,
Maciek
HI Abhimanyu,
让我们说您为项目文本定义的源结构是ITEM_TEXTS。 在E1BPSDTEXT的字段映射部分中,在更改模式下双击'__BEGIN_OF_RECORD__'。 它将弹出警告消息,说"是"并继续。 删除本节中存在的所有编码,但是在执行此操作之前,将这些行复制到某个位置(例如x缓冲区)。 您将在下面需要这些行。 只需在其中添加以下行即可。
如果v_transferred_texts ='X'。
*-所有文本均已传输,无需再次处理。
skip_record。
endif。
您需要在
" __ GLOBAL_DATA__"部分如下。
数据:v_transferred_texts类型c。
现在在更改模式下双击" _END_OF_RECORD_"。 它将弹出警告,但是您可以说"是"并继续。 这将打开编码窗口,其中的" transfer_record"中包含一行代码。 在这里,您需要按如下所示添加编码。
*-移动标题文本
在HEADER_TEXTS上滚动。
*-这应该一直存在
g_edidd_segnam ='E2BPSDTEXT000'。
g_edidd_segnum ='0021'。
g_edidd_psgnum ='000001'。
g_edidd_hlevel ='02'。
清除E1BPSDTEXT。
*-填写以下字段的每个字段
E1BPSDTEXT-DOC_NUMBER = SALESHEADER-ORDERNUMBER。
E1BPSDTEXT-ITM_NUMBER ='000000'。
E1BPSDTEXT-TEXT_ID = HEADER_TEXTS-TEXTID。
E1BPSDTEXT-LANGU = SY-LANGU。
E1BPSDTEXT-LANGU_ISO
E1BPSDTEXT-FORMAT_COL
E1BPSDTEXT-TEXT_LINE = HEADER_TEXTS-TEXT。
E1BPSDTEXT-FUNCTION ='005'。
transfer_record。
ENDLOOP。
*-现在移动项目文本
在ITEM_TEXTS上滚动。
E1BPSDTEXT-ITM_NUMBER = ITEM_TEXTS-ITM_NUMBER。
E1BPSDTEXT-TEXT_ID = ITEM_TEXTS-TEXTID。
E1BPSDTEXT-LANGU_ISO =
E1BPSDTEXT-TEXT_LINE = ITEM_TEXTS-TEXT。
*-设置文本已传输的标志
v_transferred_texts ='X'。
此致
拉克西米。
最多设置5个标签!
LSMW将处理此问题,不需要LOOP。 在"定义源结构"步骤中,首先定义HEADER,然后在HEADER下定义DETAIL。 现在,在下一步中,您需要将字段添加到结构中。 您必须确保将关键字段添加到将它们绑定在一起的两个结构。 它们的名称必须完全相同。 这是程序将记录绑定在一起的方式。 就是这样。
Rards,
Rich Heilman
Hi。
我必须为IDoc CRMXIF_ORDER_M01处理LSMW。 麻烦的是,我必须使用不同的Partner Function插入3 partner_no。 但是在映射过程中,我不知道如何设置。
你能给我个主意吗?
最诚挚的问候,
Maciek
HI Abhimanyu,
让我们说您为项目文本定义的源结构是ITEM_TEXTS。 在E1BPSDTEXT的字段映射部分中,在更改模式下双击'__BEGIN_OF_RECORD__'。 它将弹出警告消息,说"是"并继续。 删除本节中存在的所有编码,但是在执行此操作之前,将这些行复制到某个位置(例如x缓冲区)。 您将在下面需要这些行。 只需在其中添加以下行即可。
如果v_transferred_texts ='X'。
*-所有文本均已传输,无需再次处理。
skip_record。
endif。
您需要在
中定义" v_transferred_texts"" __ GLOBAL_DATA__"部分如下。
数据:v_transferred_texts类型c。
现在在更改模式下双击" _END_OF_RECORD_"。 它将弹出警告,但是您可以说"是"并继续。 这将打开编码窗口,其中的" transfer_record"中包含一行代码。 在这里,您需要按如下所示添加编码。
*-移动标题文本
在HEADER_TEXTS上滚动。
*-这应该一直存在
g_edidd_segnam ='E2BPSDTEXT000'。
g_edidd_segnum ='0021'。
g_edidd_psgnum ='000001'。
g_edidd_hlevel ='02'。
清除E1BPSDTEXT。
*-填写以下字段的每个字段
E1BPSDTEXT-DOC_NUMBER = SALESHEADER-ORDERNUMBER。
E1BPSDTEXT-ITM_NUMBER ='000000'。
E1BPSDTEXT-TEXT_ID = HEADER_TEXTS-TEXTID。
E1BPSDTEXT-LANGU = SY-LANGU。
E1BPSDTEXT-LANGU_ISO
E1BPSDTEXT-FORMAT_COL
E1BPSDTEXT-TEXT_LINE = HEADER_TEXTS-TEXT。
E1BPSDTEXT-FUNCTION ='005'。
transfer_record。
ENDLOOP。
*-现在移动项目文本
在ITEM_TEXTS上滚动。
*-这应该一直存在
g_edidd_segnam ='E2BPSDTEXT000'。
g_edidd_segnum ='0021'。
g_edidd_psgnum ='000001'。
g_edidd_hlevel ='02'。
清除E1BPSDTEXT。
*-填写以下字段的每个字段
E1BPSDTEXT-DOC_NUMBER = SALESHEADER-ORDERNUMBER。
E1BPSDTEXT-ITM_NUMBER = ITEM_TEXTS-ITM_NUMBER。
E1BPSDTEXT-TEXT_ID = ITEM_TEXTS-TEXTID。
E1BPSDTEXT-LANGU = SY-LANGU。
E1BPSDTEXT-LANGU_ISO =
E1BPSDTEXT-FORMAT_COL
E1BPSDTEXT-TEXT_LINE = ITEM_TEXTS-TEXT。
E1BPSDTEXT-FUNCTION ='005'。
transfer_record。
ENDLOOP。
*-设置文本已传输的标志
v_transferred_texts ='X'。
此致
拉克西米。
一周热门 更多>