昨天晚上调试一个程序,奋战到将近3点
才找到原因。问题就出在 SHP_DELIVERY_CREATE_FROM_STO 这个 sap的标准函数上。
再用简单的数据单独对这个函数测试。
采购订单 | 行项 | 数量 | 单位 |
4600021861 | 360 | 900 | M |
4600021861 | 370 | 900 | M |
4600021861 | 380 | 600 | M |
现在要针对上面的数据,创建转储的交货单(公司间交易的交货单),测试数据如下:
1、当我所有行都作完全数量的创建时,没有问题,能够正创建.
输入
输出 (很正常,行数,数量都正确 交货单 41037971)
2.当其中有只创建部分数量时,就诡异了。。。
输入 (360行项不是全部数量,只出 899 ,正常情况应该是结果同上,只是360的数量是 899)
输出 ( 360 行项不见了,变成两个 370 行去了)
看更多诡异的.
输入
输出(两个380行了,其它两行没了)
输入
输出
输入 (当只有最后一个是不完全数量时,能够正常 )
输出
这问题真是蛋疼呀(调试这鬼东西,我一坐就是7个多小时), 没办法去改这个函数,只能从调用的地方入手了。
我在调用前,把只要是不完全数量的都单独提出来,作为单个项来创建一个交货单。 算是绕过这个问题了。
此时此刻已经是凌晨了,没敢吵醒那本就愤愤不平的老婆大人,自已躲在小房间里猫了一宿。
2012/02/16
标签:SHP,BAPI,创建,CREATE,输入输出,交货单,数量,360,行项 From: https://blog.51cto.com/fangkailove/5889832