点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家,
在DEFAULT.LGF中,我正在使用LOOKUP来获取一个值,该值存储在COMPANY维中与要处理的记录的当前成员相同的成员中。 对于其他维度,值存储在特定成员上,这部分没有问题。
我在COMPANY的DIM指令上停留了一种语法,如下所示:
* LOOKUP购买计划 * DIM FOB:ACCOUNT = ACC_93 * DIM FOB:TIME =年份.INP * DIM FOB:SUPPLIER = SUP_UNDEF * DIM FOB:COMPANY = ??? //使用什么语法? * DIM FOB:PHASE = P_002 * ENDLOOKUP
然后我的呼叫代码将是
*当帐户
*是ACC_52
* REC(FACTOR = LOOKUP(FOB),ACCOUNT = ACC_162)//FOB
* ENDWHEN
我尝试了以下操作,但均未成功(LOOKUP(FOB)无法检索到任何值)
* DIM FOB:COMPANY = COMPANY.ID
* DIM FOB:COMPANY = COMPANY
我发现一种可行的解决方案是按如下方式编写它:
* DIM FOB:COMPANY =%COMPANY_SET%
但是只有在我的范围内只有1个公司的情况下它才有效。
当我加载具有两个不同COMPANY的数据并触发DEFAULT逻辑的文件时,程序包失败,并且出现以下错误:
(DI45和DI75是COMPANY维度的成员)。
因此,似乎所有公司成员都同时位于%COMPANY_SET%变量内。
任何帮助将不胜感激。
预先感谢
亚历山大(Alexandre)
对不起,但是为什么您要完全使用LOOKUP? 您是否正在其他模型中寻找值?
如果您正在其他模型中寻找数据,只需使用* DIM FOB:COMPANY = ...
删除该行(如果未指定) 您将使用当前记录COMPANY:)
您好,我想了解一下,如果您想使用维度COMPANY的属性,则应使用* SELECT,然后使用变量 在LOOKUP命令中。
Hello Vadim,
感谢您的回答,实际上我正在寻找同一模型中的数据。 我曾经使用元组来执行此操作,但在与BPC顾问讨论后,他建议我即使在相同模型中也要使用LOOKUP。 实际上,我发现它非常方便且性能良好。 您认为这不是一个好的解决方案吗?
该问题似乎是针对DEFAULT逻辑所特有的,因为当我删除COMPANY维的那一行时,计算没有发生,但是当我在另一个脚本逻辑中执行同样的操作时,它就可以正常工作!
无论如何,感谢您确认删除该行是正确的解决方案。
Alexandre
对不起,Alan,但是在这种情况下,主题作者不想使用该属性,而只是WHEN/ENDWHEN中COMPANY的当前成员。
而且如果是财产,则无需对LOOKUP使用SELECT-仅* DIM DIMNAME = DIMNAME.PROPERTYNAME
请阅读我的博客 https://blogs.sap.com/2014/06/09/how-to-write-defaultlgf /
在LOOKUP示例中,您将看到定义的MEASURE!
如果要在同一模型中查找值,请使用元组表达式代替LOOKUP!
好的,但是我可以说它无需指定MEASURE即可运行
一周热门 更多>