您现在的位置是:主页 > 虚拟主机 >

云解析_查看服务器系统_折扣

2021-09-28 14:07虚拟主机 人已围观

简介这是我计划写的关于为SAP CRM定价编程Java Userexits的博客文章的第一部分。本系列文章将要求您理解定价和在CRM中开发Java用户出口的概念。请参考这一优秀的入门资源列表: SAP CRM Pri...

这是我计划写的关于为SAP CRM定价编程Java Userexits的博客文章的第一部分。本系列文章将要求您理解定价和在CRM中开发Java用户出口的概念。请参考这一优秀的入门资源列表:

SAP CRM Pricing和IPC的学习地图

我的系列文章将从这里开始,探索Java Userexit API。

在客户项目中,我总是带着的第一件事是CRM定价中的Userexit是必要的,淘客推广平台,这是一组"通用"要求。我几乎在每一个项目中都会用到它们,每次都会发现它们帮了很大的忙。要求是:

让我们输入所有要求:

这是一个非常简单的要求,每次执行时都返回true。

注意:在CRM中已经有一个通用的Userexit始终为true,称为stepsucces。我喜欢创建自己的一致性实现,并启用日志记录。

标准通用需求步骤成功。

同样简单,这个userexit总是返回false。这主要用于仅在ERP中相关的需求(例如在计费中),不需要在CRM中激活。

同样,这里使用自定义需求的主要原因是总是正确和总是错误都启用日志记录。它们将记录调用它们的上下文(定价过程或访问序列)和上下文中的特定位置(访问或步骤)。

这是通用userexits中更有趣的部分。一点背景:

一般来说,绝大多数需求归结为简单地将通信结构中的两个或多个值与该结构中的其他值或硬编码值进行比较。大多数情况下,用Java实现每一个需求,维护所有属性,大数据学习,打包存档,上传等都是过份的

另外,由于技术的不同,大多数情况下,Java部分是由专家来处理的,大数据专业,他必须为ERP中可能不超过一行的每一个简单需求而召集专家。

为了从实现需求中消除Java部分,我创建了一个通用需求,它被所有需求公式重用。通用需求使用通信结构BAdI设置的公式特定标志进行控制。这里是这样的:

您会注意到这个需求类继承自标准需求pricingreevant。我试着让它成为一种习惯,只执行与定价实际相关的项目——从标准需求继承而不是从标准需求继承com.sap.spe公司.condmgnt.finding.userexit用户退出.RequirementAdapter是一种简单的方法。

旁注:我无法确认原因是什么,但当我试图通过多个层次继承时,系统变得异常缓慢。这可能是特定安装的一个问题。

此一般要求采用一个名为ZZSUBRC的属性。只有当ZZSUBRC等于"0"时,需求才会返回TRUE,类似于ABAP中的约定。以下是/SAPCND/UEASS中的实现在上传到CRM后的样子:

注意:需要分配属性PRC\U指示符以使PricingRelevant(002)工作。

现在,对于我需要实现的每个需求公式,我将在通信结构中添加一个新的标志(CHAR1),它将控制特定的要求

并使用这些标志,我将需求分配给/SAPCND/UEASS中的公式编号。

现在完成了这项工作,只需将通信结构字段ZZ\u SUBRC\u REQ732设置为"0"表示真,或设置为其他任何表示假,就可以打开和关闭需求编号732。

这看起来像是针对每个需求的大量定制,但其想法是所有这些都可以由具备基本ABAP技能的人来完成,而不是CRM定价专家。现在打开和关闭需求非常简单:在BAdI CRM\u COND\u COM\u BAdI的实现中,将相关标志设置为"0"以启用需求。

如果将来某个时候定价程序的功能需求发生更改,任何具有基本ABAP知识的人都可以更改定价程序的行为需求用户退出BAdI CRM\u COND\u COM\u BAdI.

同样,如果需要新的需求用户退出,ABAP开发人员可以继续扩展字段目录,在/SAPCND/UEASS中创建新条目,并在BAdI中实现需求。无需额外的Java编码。

一旦通用用户出口到位,当出现新的功能需求时,轻云,我只需问自己同样的问题:在初始化定价之前,是否可以根据可用信息做出用户出口决策?如果这是一个yes(99%的时间),那么我为我的通用决策创建一个新的公式,并在ABAP中编程userexit逻辑。没有额外的Java代码,所有东西都在一个地方,更易于维护,ABAP程序员可以访问。

这是一个相当简单的介绍-我希望我可以继续这个系列很快与一些更复杂的概念。

曼纽尔,我们需要这样的博客,继续!

我有一个问题,您是否可以在复制例程中使用参数?

另一点是,我目前有一个博客草稿,它应用了添加"control"字段的技术"do your stuff in the BADI,we love ABAP",然后实现一个单一的通用Java代码,到目前为止还不错,但正如你所知fieldcatalog有他的局限性,这应该引起注意,否则,创建新定价表的字段可能会用完。你不觉得吗?

干杯!

Luis

此方法仅适用于不需要定价执行本身信息的操作,如运行总计、净值等。这适用于大多数要求,然而,一旦你使用价值公式,这种方法将很快达到极限,你将不得不再次用Java实现。

Tags: 折扣  解析  系统  查看  服务器 

站点信息

  • 文章统计97829篇文章