奖金计算问题

2020-09-12 13:12发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 针对面向初学...

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

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


大家好,

针对面向初学者的SAP Cloud Applications Studio的"奖金计算" youtube教程仍然面临一些问题。 链接

首先,本教程向您展示了如何非常简单地计算奖金:如果"总收入"大于"目标金额",则供应商将获得奖金。

然后,它向您展示如何对所有销售订单(对于给定时间范围内的选定员工)进行更好的奖金计算循环,并汇总变量中的收入值。

我无法保存并激活"计算奖金操作",因为它给了我一个错误:

错误1 [激活]未经授权可在BonusPlan-Root-Action-CalculateBonus.absl中使用SalesOrder; 它不在公共解决方案模型中



我已经阅读了有关此可能解决方案的内容,但对我而言不起作用:

//CustomerQuote:设置业务对象类型-可选(默认值:30 =系统设置的销售报价;其他值:2059 =销售订单)

selParameter.Add(query.TypeCode," I"," EQ"," 2059");



这是 Action-CalculateBonus.absl

导入ABSL;
 导入AP.CRM.Global;
 导入AP.FO.BusinessPartner.Global;

 var查询;
 var selParameter;
 var结果;

//查询给定时间范围内选定员工的销售订单
 查询= SalesOrder.QueryByElements;
 selParameter = query.CreateSelectionParams();
 selParameter.Add(query.PartyEmployeeResponsiblePartyKey.PartyID.content," I"," EQ",BusinessPartner.Retrieve(this.ToEmployee.UUID).InternalID);
 selParameter.Add(query.DateTime," I"," BT",this.StartDate.ConvertToGlobalDateTime(),this.EndDate.ConvertToGlobalDateTime());
 结果= query.Execute(selParameter);

//循环所有销售订单并汇总值
 var tempRevenueSum = 0;
 foreach(结果为var SalesOrder_Instance){
 tempRevenueSum = tempRevenueSum + SalesOrder_Instance.TotalValues.NetAmount.content;
 }
//分配总奖金
 this.TotalRevenue.content = tempRevenueSum;

 if(this.TotalRevenue.content> this.TargetAmount.content){
 this.TotalBonus.content = this.TotalRevenue.content *(this.BonusRate/100);
 }其他{
  this.TotalBonus.content = 0;
 }
 

有人知道要解决吗?

MD

(58.5 kB)
3条回答
代楠1984
2020-09-12 13:50

你好戴维,

您是在ByDesign租户中还是在Cloud4Customer租户中?

稍后 一个没有SalesOrder BO。 因此,错误消息是有道理的。

再见,
。 Horst

一周热门 更多>