如何清除物料组的循环代码设置(DTW,DI API或GUI)

2020-08-14 14:22发布

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

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


我们最近从较早版本迁移到了SAP B1 9.1。

似乎在项目组中定义了默认的库存周期代码,运行以下查询可以确认这一点:

从OITB T0中选择T0。[ItmsGrpCod],T0。[ItmsGrpNam],T0。[CycleCode] 

结果将显示一些已定义周期代码的物料组,而其他项目组尚未定义周期代码。

当我为在项目组中定义了周期代码的项目组创建新项目时,将仓库添加到项目主数据的库存标签时,周期代码将根据项目组设置预先填充 。 我不希望这种情况发生。

一些指南和其他主题建议您可以更改
设置->库存->项目组中每个项目组的周期代码。

但是,项目组设置中没有循环码设置。

SAP 9.1安装中根本没有此类设置。

如何从项目组中删除循环组设置?

到目前为止我尝试过的方法:

1。 将数据传输向导与以下CSV一起使用:

编号;循环码
 编号;循环码
 100;
 101;
 102; 

它表示已更新,但是当我再次运行查询时,循环代码仍然保持不变。

2。 使用DI API
但是我不知道如何取消设置cyclecode参数。 DI不会接受0作为新值。
即使我从未定义循环组的物料组中获取CycleCode时返回的结果为0,也无法设置0值。

 ItemGroups oItemGroup =(SAPbobsCOM.ItemGroups)oCompany.GetBusinessObject(BoObjectTypes.oItemGroups);
 如果(oItemGroup.GetByKey(100))
 {
     logMsg(" ItemGroup CycleCode:" + oItemGroup.CycleCode.ToString()); //显示数值结果
     int newCycleCode = 0;
     oItemGroup.CycleCode = newCycleCode;
     int retVal = oItemGroup.Update();
     如果(retVal!= 0)
     {
         logMsg("更新群组" + oItemGroup.GroupName +"的周期代码时出现问题:" + oCompany.GetLastErrorDescription());
     }
 }
 

此脚本将显示无效的循环码错误消息。

还有另一种方法可以"重置" oItemGroup.CycleCode吗?

任何帮助将不胜感激!

谢谢。

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

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


我们最近从较早版本迁移到了SAP B1 9.1。

似乎在项目组中定义了默认的库存周期代码,运行以下查询可以确认这一点:

从OITB T0中选择T0。[ItmsGrpCod],T0。[ItmsGrpNam],T0。[CycleCode] 

结果将显示一些已定义周期代码的物料组,而其他项目组尚未定义周期代码。

当我为在项目组中定义了周期代码的项目组创建新项目时,将仓库添加到项目主数据的库存标签时,周期代码将根据项目组设置预先填充 。 我不希望这种情况发生。

一些指南和其他主题建议您可以更改
设置->库存->项目组中每个项目组的周期代码。

但是,项目组设置中没有循环码设置。

SAP 9.1安装中根本没有此类设置。

如何从项目组中删除循环组设置?

到目前为止我尝试过的方法:

1。 将数据传输向导与以下CSV一起使用:

编号;循环码
 编号;循环码
 100;
 101;
 102; 

它表示已更新,但是当我再次运行查询时,循环代码仍然保持不变。

2。 使用DI API
但是我不知道如何取消设置cyclecode参数。 DI不会接受0作为新值。
即使我从未定义循环组的物料组中获取CycleCode时返回的结果为0,也无法设置0值。

 ItemGroups oItemGroup =(SAPbobsCOM.ItemGroups)oCompany.GetBusinessObject(BoObjectTypes.oItemGroups);
 如果(oItemGroup.GetByKey(100))
 {
     logMsg(" ItemGroup CycleCode:" + oItemGroup.CycleCode.ToString()); //显示数值结果
     int newCycleCode = 0;
     oItemGroup.CycleCode = newCycleCode;
     int retVal = oItemGroup.Update();
     如果(retVal!= 0)
     {
         logMsg("更新群组" + oItemGroup.GroupName +"的周期代码时出现问题:" + oCompany.GetLastErrorDescription());
     }
 }
 

此脚本将显示无效的循环码错误消息。

还有另一种方法可以"重置" oItemGroup.CycleCode吗?

任何帮助将不胜感激!

谢谢。

付费偷看设置
发送
5条回答
DafaDDDa
1楼-- · 2020-08-14 15:07

嗨贾斯珀,

首先,您需要创建一个新的循环代码。

然后查询ocyc表

查找循环代码,并在DTW模板中使用该代码将其更改为一个组。

循环代码是数字值。/p>

问候,

钦丹

当学会了学习
2楼-- · 2020-08-14 15:18

嗨,

看来,它只是在组级别上看。 是否勾选了主库存项目。 但是实际上只有库存物料应该具有周期计数。

问候,

钦丹

zhangjiyang1323
3楼-- · 2020-08-14 15:07

你好,

在dtw中, 在dtw模板中将该字段保留为空白,请尝试使用正斜杠,看看它是否对您有用?

谢谢

Joseph

SC_Yao
4楼-- · 2020-08-14 15:20

不起作用。 DTW提供了以下错误消息:
"值必须是'ItemGroups'的属性'CycleCode'中的整数"

DafaDDDa
5楼-- · 2020-08-14 15:08

您可能需要稍晚一些才能查看这篇文章,但是 对于希望解决此问题的未来用户可能会有帮助...

好吧,我试图使用SDK添加或更新项目组(oItemGroups),系统返回有关"无效周期代码"的错误

该错误消息与实际问题完全无关,问题在于在数据库上启用了"高级总账科目确定"(公司详细信息>基本初始化:启用高级总账科目确定),因此系统 将使用一些规则在帐户中过帐交易。

因此,启用此功能后,请勿为任何帐户设置值

甚至不要在对象(oItemGroups)的以下字段上设置空,空或零

SAP_Object.ExpensesAccount

SAP_Object.RevenuesAccount

SAP_Object.InventoryAccount

SAP_Object.CostAccount

SAP_Object.TransfersAccount

SAP_Object.VarianceAccount

SAP_Object.PriceDifferencesAccount

SAP_Object.NegativeInventoryAdjustmentAccount

SAP_Object.DecreasingAccount

SAP_Object.IncreasingAccount

SAP_Object.ReturningAccount

SAP_Object.ExchangeRateDifferencesAccount

SAP_Object.GoodsClearingAccount

SAP_Object.DecreaseGLAccount

SAP_Object.IncreaseGLAccount

SAP_Object.WIPMaterialAccount

SAP_Object.WIPMaterialVarianceAccount

SAP_Object.WipOffsetProfitAndLossAccount

SAP_Object.InventoryOffsetProfitAndLossAccount

SAP_Object.ExpenseClearingAct

SAP_Object.StockInTransitAccount

SAP_Object.ShippedGoodsAccount

SAP_Object.SalesCreditAcc

SAP_Object.PurchaseCreditAcc

我希望这会有所帮助

迭戈·纳瓦斯

2020-07-25

一周热门 更多>