如何使用PDI创建带有序列号的GoodsTag?

2020-08-20 23:30发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 1,在PDI...

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

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


专家们,

  • 1,在PDI中,我们可以使用以下代码创建GoodsTag:

var aa = GoodsTagGenerator.Create();

if(aa.GoodsTagSpecification.Count()> 0)

{

foreach(aa.GoodsTagSpecification中的var goodtags)

{

goodtags.GoodsTagTypeCode =" 3";

goodtags.Text = ins_this.ProductDescription;

goodtags.MaterialKey.ProductID.content = ins_this.Product.content;

goodtags.GoodsTagMaterialQuantity.content = 1;

goodtags.GoodsTagMaterialQuantity.unitCode =" EA";

goodtags.IdentifiedStockKey.ID.content = ins_this.BatchCode.content;

goodtags.NextExternalSerialID =" abcdef";

}

}

其他

{

var goodtags = aa.GoodsTagSpecification.Create();

if(goodtags.IsSet())

{

goodtags.GoodsTagTypeCode =" 3";

goodtags.Text = ins_this.ProductDescription;

goodtags.MaterialKey.ProductID.content = ins_this.Product.content;

goodtags.GoodsTagMaterialQuantity.content = 1;

goodtags.GoodsTagMaterialQuantity.unitCode =" EA";

goodtags.IdentifiedStockKey.ID.content = ins_this.BatchCode.content;

goodtags.NextExternalSerialID =" abcdef";

//可疑代码

//goodtags.CreateIndividualMaterials();

//

//foreach(goodtags.GoodsTagSpecificationIndividualDetails.IndividualMaterial中的var ser)

//{

//ser.ServiceProcessInformation.SerialID =" 12345";

//}

//var ser = goodtags.GoodsTagSpecificationIndividualDetails.Create();

//if(ser.IsSet())

//{

//ser.IndividualMaterial.ParentIndividualProduct。 =" 12345";

//}

}

}

aa.GenerateGoodsTags();

  • 2,GoodsTag中有外部引用,但没有序列号,我想使用代码添加序列号,怎么办?
  • 3,在系统BO(GoodsTag,GoodsTagGenerator)中,节点IndividualMaterial无法使用事件(创建),并且我不知道如何使用函数CreateIndividualMaterials()?
  • 问题:如何使用PDI创建带有序列号的GoodsTag?

非常感谢。

Benny Huang

(68.6 kB)
7条回答
渐行渐远_HoldOn
2020-08-21 00:05
  • ð直接我们不能在外向交货中附加序列号。

我们可以在后发货屏幕中附加"下一个序列号"字段,该字段来自以下站点物流批次业务对象。

应保留序列号的节点是SerialNumberAssignment节点。

用户需要执行以下提到的以下步骤:-

1。 在"修改现场物流批次,物料输出节点"之后编写脚本。 物料输出节点代表过帐发货屏幕中的行项目。

2。 从MATERIAL_OUTPUT导航到SERIAL _NUMBER_ASSIGNMENT。 BO:SITE_LOGISTICS_LOT节点:MATERIAL_OUTPUT关联:SERIAL _NUMBER_ASSIGNMENT

3。为每个序列号和属性创建SerialNumberAssignment节点的实例。填充SERIALID,MATERIALOUTPUTUUID。

4。 在MATERIAL_OUTPUT上的SerialNumberAssignment节点AFTER_MODIFY上调用Confirm Action可以多次被调用\

/*

为以下项添加SAP Business ByDesign脚本语言实现:

业务对象:SiteLogisticsLot

节点:MaterialOutput

事件:AfterModify

注意:

-要访问业务对象节点的元素,

使用路径表达式,例如this。

-要使用代码完成功能,请按CTRL + J。

-解决方案在以下情况下使用此脚本:

-修改包含此脚本的节点中任何字段的值。

-节点本身被同一解决方案中的另一个业务对象修改。

*/

导入ABSL;

//var b = 0;

//如果(b == 0)

//{

//如果(this.MTest == false)

//{

//if(!this.ConfirmMainInventorySeparatingValues.MaterialKey.ProductID.content.IsInitial())

//{

////var y = this.ConfirmMainInventorySeparatingValues.MaterialKey.ProductID。

//////var iin = SiteLogisticsLot.Retrieve(this.ID);

////var mat = iin.MaterialOutput.GetFirst();

////var instSerial = mat.SerialNumberAssignment.Create();

//

//

//var rt:SiteLogisticsLot.SerialNumberAssignment的元素;

//rt.SerialID =" 9";

//rt.MaterialOutputUUID.content = this.ConfirmMainInventorySeparatingValues.MaterialUUID.content;//" 00163e6b75071ed8bcf4a7691f622fee";

//var inst = this.SerialNumberAssignment.Create(rt);

//

//var a = 9;

//b = b + 1;

//this.MTest = true;

//

//}

//}

//}

BR

Rahul

一周热门 更多>