• Duplicated Conditions Types


    Issue:

    1. SRM contract with multiple conditions types are assigned to shopping cart

    image

    image

    image

    2. The SC is converted to PO using the program BBP_SC_TRANSFER_GROUPED

    image

    3. PO is created with duplicated condition types, meanwhile PO cannot be open.

    image

    image

    This is happening only when a contract assigned to a SC is converted to a PO. When a contract is directly assigned to a PO, the conditions are not duplicated and system is fine.

    Analysis:

    Call stack

    30 FORM           GET_ITEM_CONDITIONS                 SAPLPRC_INT                LPRC_INTF31
    29 FUNCTION     PRC_INT_ITEM_ADD_COND_MULTI    SAPLPRC_INT                LPRC_INTU50
    28 FUNCTION     PRC_PD_ITEM_ADD_COND               SAPLPRC_PRICING_API    LPRC_PRICING_APIU16
    27 FORM           PRC_MAINTAIN_SINGLE                   SAPLBBP_PDPRC            LBBP_PDPRCF02
    26 FUNCTION     BBP_PDPRC_UPDATE                       SAPLBBP_PDPRC            LBBP_PDPRCU01
    25 FORM           PRC_UPDATE_CALL                         SAPLBBP_PDIGP             LBBP_PDIGPF3K
    24 FORM           PRICE_AND_VALUE_DETERMINE         SAPLBBP_PDIGP             LBBP_PDIGPF3J

    - In call stack 24, the initial condition in IT_PRIDOC[] has 7 entries including two has valid values: O1CT and Z056

    image

    - In call stack 27, 2 more conditions are added (Z056, PRXX)

    image

    - So in call stack 30, you can see 9 entries in lt_condition, in which has 4 valid entries: PBXX, O1CT, Z056, Z056

    image

    This is resulted by FM PRC_PD_ITEM_ADD_COND

    image

    Here, the IF is:

    image

    This is caused by the below setting in condition type:

    image 

    image

    Here are the difference between “no restrictions” and “the manual condition has priority”

    Regarding the condition FRA1, we can see that the IPC Pricing Engine is returning two conditions, but only one is active. The other one is inactive 'M' (INACTIVE_DUE_TO_MANUAL_ENTRY). This is due to the customizing of the condition type. That means that the automatic found condition is deactivated by the manual one.

    image

    But the condition ZOA1 has no such restrictions as you can see below. The field "Manual entries" has the value "No restrictions". That means you can have in the Purchase Order an automatic found condition ZOA1 as well as manual condition ZOA1.

    718482 2013

    212345 2011

  • 相关阅读:
    使用Git--将本地项目提交到Github
    海量数据处理面试题
    web前后端安全问题
    mysql关键字如何当字段使用
    一个Java项目开发流程(正规级别)
    开发工具idea中撤回代码和恢复撤销代码快捷键
    layui前端使用
    shiro标签
    常见SVN图标的含义
    最常见到的runtime exception 异常
  • 原文地址:https://www.cnblogs.com/lazymango/p/3263813.html
Copyright © 2020-2023  润新知