是否可以从ABSL的销售订单中覆盖销售计量单位?

2020-09-27 00:13发布

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

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


亲爱的比亚迪社区,

在纸上如此简单,我为此而发疯。

我只想从ABSL编码中覆盖销售订单项目的Quantity.unitcode。

此外,我从文档中可以看到,显示了一些代码可以覆盖quantity.content和quantity.unitcode。

当我创建FirstRequestedScheduleLine时,我的代码没有返回任何错误。

当我调试时,我可以看到我自定义对象中的值是好的,就像我的单位代码= Case为15,数量= 80。

但是当分配完成后,只有项目的Quantity.content会变成红色(分段值),分配的值为80。

对立面上的Quantity.unitcode在调试器中保持黑色(未更改任何值),并保留"产品主数据"->"销售"->"销售单位"的默认值,即"每个"。

我只是无法从ABSL编码覆盖此主数据值。

我可以通过UI进行更改,但不能从后端进行更改。

请注意,我的ABSL编码是在"批量数据运行"运行的自定义操作中。

对此有任何帮助吗?

非常感谢您的关注。

最诚挚的问候。

雅克·安东尼·奥利尔

如果您需要代码,但我知道它是正确的;)

 if(NouveauSalesOrder_Item.ItemProduct.IsSet()){
 NouveauSalesOrder_Item.ItemProduct.ProductKey.ProductID.content = RowItem.ItemProductID.content;


 如果(NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.IsSet())
 {
 NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.Quantity.unitCode = RowItem.RequestedQuantity.unitCode;
 NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.Quantity.content = RowItem.RequestedQuantity.content;
 NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.DateTimePeriod.StartDateTime.content = RowItem.DateToBeDelivered;


 var QuantityTrace = NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.Quantity;
 var stop =" stop";
 }

 否则if(!NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.IsSet())
 {
 var NouveauSalesOrder_Item_lines:NouveauSalesOrder_Item.ItemScheduleLine的元素;
 NouveauSalesOrder_Item_lines.Quantity.unitCode = RowItem.RequestedQuantity.unitCode;
 NouveauSalesOrder_Item_lines.Quantity.content = RowItem.RequestedQuantity.content;
 NouveauSalesOrder_Item_lines.DateTimePeriod.StartDateTime.content = RowItem.DateToBeDelivered;


 var UomTrace = NouveauSalesOrder_Item.ItemScheduleLine.Create(NouveauSalesOrder_Item_lines);
 var stop2 ="停止";
 }
 

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

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


亲爱的比亚迪社区,

在纸上如此简单,我为此而发疯。

我只想从ABSL编码中覆盖销售订单项目的Quantity.unitcode。

此外,我从文档中可以看到,显示了一些代码可以覆盖quantity.content和quantity.unitcode。

当我创建FirstRequestedScheduleLine时,我的代码没有返回任何错误。

当我调试时,我可以看到我自定义对象中的值是好的,就像我的单位代码= Case为15,数量= 80。

但是当分配完成后,只有项目的Quantity.content会变成红色(分段值),分配的值为80。

对立面上的Quantity.unitcode在调试器中保持黑色(未更改任何值),并保留"产品主数据"->"销售"->"销售单位"的默认值,即"每个"。

我只是无法从ABSL编码覆盖此主数据值。

我可以通过UI进行更改,但不能从后端进行更改。

请注意,我的ABSL编码是在"批量数据运行"运行的自定义操作中。

对此有任何帮助吗?

非常感谢您的关注。

最诚挚的问候。

雅克·安东尼·奥利尔

如果您需要代码,但我知道它是正确的;)

 if(NouveauSalesOrder_Item.ItemProduct.IsSet()){
 NouveauSalesOrder_Item.ItemProduct.ProductKey.ProductID.content = RowItem.ItemProductID.content;


 如果(NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.IsSet())
 {
 NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.Quantity.unitCode = RowItem.RequestedQuantity.unitCode;
 NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.Quantity.content = RowItem.RequestedQuantity.content;
 NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.DateTimePeriod.StartDateTime.content = RowItem.DateToBeDelivered;


 var QuantityTrace = NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.Quantity;
 var stop =" stop";
 }

 否则if(!NouveauSalesOrder_Item.FirstRequestedItemScheduleLine.IsSet())
 {
 var NouveauSalesOrder_Item_lines:NouveauSalesOrder_Item.ItemScheduleLine的元素;
 NouveauSalesOrder_Item_lines.Quantity.unitCode = RowItem.RequestedQuantity.unitCode;
 NouveauSalesOrder_Item_lines.Quantity.content = RowItem.RequestedQuantity.content;
 NouveauSalesOrder_Item_lines.DateTimePeriod.StartDateTime.content = RowItem.DateToBeDelivered;


 var UomTrace = NouveauSalesOrder_Item.ItemScheduleLine.Create(NouveauSalesOrder_Item_lines);
 var stop2 ="停止";
 }
 
付费偷看设置
发送
4条回答
SAP小菜
1楼 · 2020-09-27 00:43.采纳回答

最后我找到了!

文档忘记提及我们还需要在ItemProduct节点级别上写QuantumUnitOfMeasure。

如果销售基础计量单位不同,仅覆盖RequestScheduleLine是不够的。

因此,我需要在粘贴第一篇文章之前添加以下代码:

 NewSalesOrderItem.ItemProduct.QuantityMeasureUnitCode = RowItem.RequestedQuantity.unitCode;
 

现在这可以了!

所以,当您尝试在销售订单商品的IFrstRequestedScheduleLine中写入UnitCode时,请不要忘记先覆盖SalesOrder.Item.ItemProduct.QuantityMeasureUnitCode字段。

感谢您的关注。

最诚挚的问候。

Jacques-Antoine

四川大学会员
2楼-- · 2020-09-27 00:47

你好 May Thitsa Oo

是的,职能顾问已将"每个"设置为"基本销售单位",并设置了从"案例"到"每个"的100次转换。

所有类型的案件都在那里。 但是,当我尝试使用Z15(案例为15)而不是Each填充单位代码时,即使转换规则中Z 1 = 15 EA的转换也停留在Each上。

我测试了将Base Sales UoM更改为Z15(案例为15)并输入我的代码EA。

现在,我在销售订单项目中将Z15作为单位代码,并且不可能用EA覆盖。

每次配置都在接管。 我可以更改它的唯一方法是通过UI手动进行。

我尝试在"销售订单项目"上的"保存前"执行此操作,同样的事情,无法更改它。 奇怪的是我在调试器中没有收到一条消息。

感谢您的关注。

最诚挚的问候。

雅克·安东尼·奥利尔(Jacques-Antoine Ollier)

DafaDDDa
3楼-- · 2020-09-27 00:41

您好

您是否在"产品"主数据中为所需单位指定了数量转换?

此致

>

可以

奄奄一息的小鱼
4楼-- · 2020-09-27 00:43

嗨,

请让我知道您是否已找到解决方案。 https://archive.sap.com/discussions/thread/3891166。 我真的需要你的帮助。

感谢和问候。

强。

一周热门 更多>