使用.NET添加SAP B1的AR发票服务

2020-08-15 01:48发布

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

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


专家您好,

我有一个 VB.net 2015程序,我试图从其中添加Ar Invoice服务 表(源)。

可以在scenario.png文件中看到ar发票数据:

我想通过基于入口id的DI API使用 vb.net 2015添加两个ar服务发票 值,即20000、20001和20003。接下来,文档基于doc2值,即tes-1和tes-2。

结果为3个文档,但所有文档均由重复数据组成。 所有发票行都由相同的两个entryid行组成。 通过查询可以检查出错误的结果,可以在rong_result.png文件中看到。

如您所见,AR服务发票表中总是重复出现Source entryid行。

可以在Expect.png文件中看到预期结果:

这是我的代码:

 sSQL ="选择"" ENTRYID"","" ROW"",""组"","" TYPE"","" DOC1"","" DOC2"","&_
 """ DOC3"",""详细信息"",""单元""来自"" SCHEMA""。"" TABLE_SOURCE""其中"&_
 "按"" ENTRYID"","" ROW"" asc排序
  dtDetail1 = GetHANA(sHANA,sConn)
  如果dtDetail1.Rows.Count <= 0那么
  DOCStart = False
  DETErrMsg =" $$$ Inf $$$"
 万一
  对于每个RowDetail1作为dtDetail1.Rows中的DataRow
 oRec1.DoQuery("从"" SAPB1""中选择不同的"" U_GL""。"" @ ACCT"""&_
 "其中TO_NVARCHAR("" U_DOC3"")='"&RowDetail1.Item(" DOC3")&"'")
  如果oRec1.RecordCount = 0则
 引发新异常("有数据")
 万一
 oAR.Lines.AccountCode = oRec1.Fields.Item(" U_GL")。Value
 oAR.Lines.UserFields.Fields.Item(" U_UDF1")。Value = RowDetail1.Item(" TYPE")
 oAR.Lines.UserFields.Fields.Item(" U_UDF2")。Value = RowDetail1.Item(" DOC1")
 oAR.UserFields.Fields.Item(" U_UDF3")。Value = RowDetail1.Item(" DOC3")
 oAR.NumAtCard = RowDetail1.Item(" DOC2")
 oAR.Lines.ItemDescription = RowDetail.Item(" GROUP")
 oAR.Lines.Price = RowDetail.Item(" UNIT")
 如果LEFT(RowDetail.Item(" TYPE"),1)=" X"然后
 oAR.Lines.WTLiable = SAPbobsCOM.BoYesNoEnum.tYES
 其他
  oAP.Lines.WTLiable = SAPbobsCOM.BoYesNoEnum.tNO
 万一
 oAR.Lines.Add()
 下一个RowDetail1 

任何帮助将永远被感激

Rgds

史蒂夫

(15.8 kB)

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

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


专家您好,

我有一个 VB.net 2015程序,我试图从其中添加Ar Invoice服务 表(源)。

可以在scenario.png文件中看到ar发票数据:

我想通过基于入口id的DI API使用 vb.net 2015添加两个ar服务发票 值,即20000、20001和20003。接下来,文档基于doc2值,即tes-1和tes-2。

结果为3个文档,但所有文档均由重复数据组成。 所有发票行都由相同的两个entryid行组成。 通过查询可以检查出错误的结果,可以在rong_result.png文件中看到。

如您所见,AR服务发票表中总是重复出现Source entryid行。

可以在Expect.png文件中看到预期结果:

这是我的代码:

 sSQL ="选择"" ENTRYID"","" ROW"",""组"","" TYPE"","" DOC1"","" DOC2"","&_
 """ DOC3"",""详细信息"",""单元""来自"" SCHEMA""。"" TABLE_SOURCE""其中"&_
 "按"" ENTRYID"","" ROW"" asc排序
  dtDetail1 = GetHANA(sHANA,sConn)
  如果dtDetail1.Rows.Count <= 0那么
  DOCStart = False
  DETErrMsg =" $$$ Inf $$$"
 万一
  对于每个RowDetail1作为dtDetail1.Rows中的DataRow
 oRec1.DoQuery("从"" SAPB1""中选择不同的"" U_GL""。"" @ ACCT"""&_
 "其中TO_NVARCHAR("" U_DOC3"")='"&RowDetail1.Item(" DOC3")&"'")
  如果oRec1.RecordCount = 0则
 引发新异常("有数据")
 万一
 oAR.Lines.AccountCode = oRec1.Fields.Item(" U_GL")。Value
 oAR.Lines.UserFields.Fields.Item(" U_UDF1")。Value = RowDetail1.Item(" TYPE")
 oAR.Lines.UserFields.Fields.Item(" U_UDF2")。Value = RowDetail1.Item(" DOC1")
 oAR.UserFields.Fields.Item(" U_UDF3")。Value = RowDetail1.Item(" DOC3")
 oAR.NumAtCard = RowDetail1.Item(" DOC2")
 oAR.Lines.ItemDescription = RowDetail.Item(" GROUP")
 oAR.Lines.Price = RowDetail.Item(" UNIT")
 如果LEFT(RowDetail.Item(" TYPE"),1)=" X"然后
 oAR.Lines.WTLiable = SAPbobsCOM.BoYesNoEnum.tYES
 其他
  oAP.Lines.WTLiable = SAPbobsCOM.BoYesNoEnum.tNO
 万一
 oAR.Lines.Add()
 下一个RowDetail1 

任何帮助将永远被感激

Rgds

史蒂夫

(15.8 kB)
付费偷看设置
发送
1条回答
何必丶何苦呢
1楼 · 2020-08-15 02:13.采纳回答

设法解决了这个问题。

一周热门 更多>