LSMW在"读取数据"步骤中未写入任何数据。

2020-09-15 20:18发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨,古鲁, 在LSMW中,使用...

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

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


嗨,古鲁,

在LSMW中,使用IDOC方法创建PM订单。 我遵循了为IORDER idoc创建LSMW的步骤,并且在"读取数据"步骤未写入任何记录。 我正在使用文本文件作为源。 我没有收到任何错误,但是读取文件中没有写入dtaa。

请帮助。

谢谢

Sridhar Gardas

5条回答
CPLASF-自律
2020-09-15 20:38

我看到您定义了一个名为ZEDC_DC40的源结构,但是没有分配任何源文件。 由于它是源结构中最重要的部分,因此您必须拥有一个为其分配了记录的文件,只有这样,它才会开始从该文件和其他文件中写入读取的记录。

我发现您关注了我的博客 https://blogs.sap.com/2013/06/02/lsmw-migration-with-idoc-method-and-using-idoc-as-source-part2-import /但很遗憾,您忽略了一部分。 我在博客中发布了有关Idoc文本文件的信息。 您将源结构定义为好像有一个Idoc作为源,但实际上没有Idoc作为源,您有单独的文本文件,这些文件的制表符分隔内容。 如果它是一个Idoc,那么在单词E2ORHDR和下一个字段AUFNR之间实际上将有57个空格(或其他字符)。 但是您的文件是从Excel创建的,因此没有固定的列宽。 因此,您甚至不需要在源文件和字段定义中使用IDENT和Filler之类的字段。

与此相关的下一个错误是在步骤7指定文件中。 您错过了表明您的源文件具有标题信息的信息。 如果没有此信息,SAP会将源文件的第一行视为数据,并在EQUNR字段中填充单词EQUNR,其他所有字段都一样。

现在返回到字段定义。 从IDENT字段中删除"标识字段内容",您无需标识任何内容,因为您只有一条记录而不是无尽的文件,如我的博客中所示: https://blogs.sap.com/wp-content/uploads/2013/06/idoc_225512.jpg

总体而言,我想说的是您的源代码定义中根本不应该拥有结构ZEDC_DC40,因为如果您使用Excel下载而不是Idocs作为源代码,则实际上没有数据。 因此,每个结构和源文件中的IDENT和Filler字段都是如此,如果您没有Idoc作为源文件,则它们是多余的。

我进一步看到您在源结构中定义了长度为8的日期字段,但在源文件中用10个字符填充了日期字段,点也开始计数(2018.07.23),这导致字段 该字段的右侧会出现麻烦,因为任何内容都被那些重叠的2个字符转移。



一周热门 更多>