• Budget check in PPS


    Issue:

    In PPS, if budget check of shopping cart, the system only check the net value (without the tax value), but the back-end system is customized to check budget in purchase order with tax value.

    ########Steps to reproduce########
         1. Log in to SRM Portal
         2. Employee Self-Service > Create a new Shopping Cart.
         3. Choose Description item.
         4. Enter a descripton. Enter 1 EA. Enter 1 EUR.
         5. Go to Item Deatils > Accounting tab > enter Earmarked funds (2000229) and position (001).

         6. See that the total value = 1,04 EUR (VAT included).
         7. Check the Shopping Cart. The system only display a warning message for the budget check. (It's only checking 1 EUR!!!!).
         8. Change the item value to 1,01 EUR (1,05 EUR total value) and check the shopping cart. The system displays an error message.

    This is a known issue in extended scenario. See note 1450876 (SRM 7.0 SP10)

    But in classic scenario, the problem remains since p_item-tax_code keeps blank instead of tax code N1.

    LBBP_PDCOIF13/FILL_COMMITMENT_FROM_ITEM
    * add non-deductible tax amount to purch_val
    *     get tax info for line item, evaluate non-deductible flag, then add tax amount
          REFRESH lt_tax_detail.
          p_purch_val = p_item-value.
          CALL FUNCTION 'BBP_PDTAX_GETDETAIL'
            EXPORTING
              i_p_guid = p_item-guid
              i_p_kind = 'B'
            TABLES
              e_tax    = lt_tax_detail.
          LOOP AT lt_tax_detail INTO ls_tax.
            CHECK ( not ls_tax-stazf IS INITIAL ) AND ls_tax-tax_code = p_item-tax_code AND ls_tax-del_ind IS INITIAL.
            p_purch_val = p_purch_val +  ls_tax-tax_amount.
          ENDLOOP.

    -->per debugging, p_item-tax_code    blank  <   !!!
    this value is transfered via the following path:  lt_item  >po_item  >i_po_item  >p_item

    Early in preparing tax code when creating shopping cart,

    When lt_tax is filled with N1, the program is back to form TAX_CALCULATE_AND_MODIFY, in line 210:
    *    take over the tax-code as in itemGetdetail
    *    necessary due to performance improvement in PO
          IF iv_object_type EQ c_po.
            READ TABLE lt_tax WITH KEY p_guid = lt_item_t-guid
                                     BINARY SEARCH.
            IF sy-subrc EQ 0.
                lt_item-tax_code = lt_tax-tax_code.   <    !!!! Root Cause!!
            ENDIF.

    IV_OBJECT_TYPE                           BUS2121
    C_PO                                           BUS2201

    A new note 1709350 is created to fix it.

    *>>>> START OF DELETION <<<<<
          IF iv_object_type EQ c_po.
    *>>>> END OF DELETION <<<<<<<
    *>>>> START OF INSERTION <<<<
    *    in SC, the tax_code should be considered
          IF ( iv_object_type EQ c_po ) OR ( iv_object_type EQ c_shop ).
    *>>>> END OF INSERTION <<<<<<

    other notes:

    1380091. This note will make sure non-deductible tax flag is available on ERP structures.   

    1296010  Pilot release 700 SP01

    1087123  Main note: In general budget check works net.
    Exception: PO budget check works gross in case of non-deductible tax (e.g. Add-On: EA-PS Funds Management).

    30472 2012

  • 相关阅读:
    Visual Studio 2017开发环境的安装
    git fetch拉取他人分支(转)
    highchart宽度自适应的问题-图表压缩到一起
    AngularJS官网打不开
    深入解析CSS样式层叠权重值(转)
    angularJS添加form验证:自定义验证
    angular ngRoute小例子
    bower学习(转)
    iframe的打怪1
    清除浮动的方法
  • 原文地址:https://www.cnblogs.com/lazymango/p/2477545.html
Copyright © 2020-2023  润新知