Requirement – Simulate the pricing in SD
Steps : In any Program/Calss or User-Exit
Build the KOMK and KOMP values as needed in the program dynamically
Implement the below code – In this example, values are hardcoded
DATA : lt_komv TYPE komv_itab,
ls_komk TYPE komk,
ls_komp TYPE komp.
ls_komk-vkorg = '1000'. "Sales org
ls_komk-vtweg = '10'. "D.channel
ls_komk-spart = '00'. "Division
ls_komk-kunnr = '1000000000'. "customer
ls_komk-auart = 'ASTA'."doctype
ls_komk-kappl = 'V'.
ls_komk-werks = 'A000'. "Plant
ls_komk-kalsm = 'ASDTDUS'. "Pricing procedure
ls_komk-prsdt = '20251013'.
ls_komk-fbuda = '20251013'.
ls_komk-fkdat = '20250206'.
ls_komk-erdat = '20251013'.
ls_komk-audat = '20251013'.
ls_komk-land1 = 'US'.
ls_komk-regio = 'PA'.
ls_komk-taxk1 = '1'.
ls_komk-vbtyp = 'C'.
ls_komk-kokrs = 'A000'.
ls_komk-sap_object_type = 'SALES ORDER'.
ls_komk-crossitem_prc_date = '20251013'.
ls_komk-konda = '01'.
ls_komk-kdgrp = '01'.
ls_komk-hwaer = 'USD'.
ls_komk-waerk = 'USD'.
ls_komk-zterm = 'B204'.
ls_komk-inco1 = 'FOB'.
ls_komk-inco2 = 'PPD'.
ls_komk-inco2_l = 'PPD'.
ls_komk-pltyp = 'ST'.
ls_komk-aland = 'US'.
ls_komk-wkreg = 'MA'.
ls_komk-vsart = 'PP'.
ls_komk-konda = '01'.
ls_komk-kdgrp = '01'.
ls_komk-bukrs = '1000'.
ls_komk-knrze = '1000000000'.
ls_komk-kunre = '1000000000'.
ls_komk-kunwe = '1000000000'.
ls_komk-vkorgau = '1000'.
ls_komk-fkart = 'ASTA'.
ls_komk-borel = 'X'.
ls_komp-kposn = '000010'.
ls_komp-matnr = 'MAT123'. "Mat
ls_komp-werks = 'A000'. "Plant
ls_komp-wkreg = 'MA'.
ls_komp-bwkey = 'A000'.
ls_komp-meins = 'EA'.
ls_komp-mglme = '1.000'.
ls_komp-sktof = 'X'.
ls_komp-attyp = '00'.
ls_komp-wkreg = 'MA'.
ls_komp-matkl = 'MATGGB01'.
ls_komp-taxps = '000010'.
ls_komp-mgame = '1.000'.
ls_komp-vrkme = 'EA'.
ls_komp-lagme = 'EA'.
ls_komp-umvkz = '1'.
ls_komp-umvkn = '1'.
ls_komp-pmatn = 'MAT123'. "Material
ls_komp-prsfd = 'X'.
ls_komp-evrwr = 'X'.
ls_komp-prctr = '1620'.
ls_komp-aubel = '$TEMP'.
ls_komp-aupos = '000010'.
ls_komp-pstyv = 'ATAN' "Item. category
ls_komp-katr6 = '1A1'.
ls_komp-kursk = '1.00000'.
ls_komp-spart = '10'.
ls_komp-kursk_dat = '20251013'.
ls_komp-prsok = 'A'.
ls_komp-fg_recalc = 'X'.
ls_komp-use_multival_attr = 'X'.
ls_komp-lprio = '02'.
ls_komp-ix_komk = '1'.
ls_komp-ix_vbap = '0'.
ls_komp-knttp = 'M'.
CALL FUNCTION 'PRICING'
EXPORTING
calculation_type = 'C'
comm_head_i = ls_komk
comm_item_i = ls_komp
TABLES
tkomv = lt_komv
- SVBAP =
- CHANGING
- REBATE_DETERMINED = ‘ ‘
.






























