Thursday, November 3, 2011

Pricing Procedure _ Condition Value (V.1)

ZPR2 value = Net Value 1 / (100 + MWST configured percentage)

  1. Configure in V/08




  1. Expected Result


  1. Code of Condition Value

FORM FRM_KONDI_WERT_998.
*{   INSERT         DEVK900324                                        1
  DATA: ls_knumh LIKE konp-knumh,
        ls_komv  LIKE LINE OF xkomv,
        ls_stunr LIKE ls_komv-stunr,
        ls_kwert LIKE ls_komv-kwert.

  IF komk-taxk1 IS NOT INITIAL AND komp-taxm1 IS NOT INITIAL.
*  -- Calculate the amount of Net Value 1
    ls_stunr = xkomv-stunr.
    LOOP AT xkomv INTO ls_komv WHERE kschl IS NOT INITIAL
                                 AND kposn = komp-kposn
                                 AND stunr < ls_stunr.
      ls_kwert = ls_kwert + ls_komv-kwert.
    ENDLOOP.
*  -- Get percentage value o MWST
    READ TABLE xkomv INTO ls_komv WITH KEY kschl = 'MWST'
                                           kposn = komp-kposn.

    IF sy-subrc = 0.
*  -- sign of value
      IF ls_komv-knega = 'X'.
        ls_komv-kbetr = 0 - ls_komv-kbetr.
      ENDIF.

*  -- 5% -> 1.05, 10% -> 1.10
      ls_komv-kbetr = ls_komv-kbetr + 100000.
      xkwert = ls_kwert * 100000 / ls_komv-kbetr.
      xkomv-kbetr = xkwert * 1000 / xkomv-kawrt.
    ENDIF.
  ENDIF.
*}   INSERT
ENDFORM.

No comments:

Post a Comment