Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Update Pricing Condition in Outbound Delivery

Former Member
0 Kudos

Hello,

Is there a BAPI or FM which updates the Pricing Condition in an outbound delivery document. UPS Freight charges needs to be stored with the condition type "ZFRT".

Any help highly appreciated.

Regards

Manik

14 REPLIES 14

Former Member
0 Kudos

Hi

Try to read the table KONV: KONV-KNUMV = LIKP-KNUMV

Max

ferry_lianto
Active Contributor
0 Kudos

Hi Mani,

Have you looked BAPI BAPI_PRICES_CONDITIONS?

Please check below sample codes.

wtable1-table_no = '306'.

wtable1-applicatio = 'V'.

wtable1-cond_type = 'ZPR0'.

wtable1-operation = '009'.

wtable1-varkey = '13001001USD 000000000050068946'.

wtable1-valid_to = '99991231'.

wtable1-valid_from = '20051101'.

wtable1-cond_no = '$000000001'.

APPEND wtable1 TO table1.

wtable2-operation = '009'.

wtable2-cond_no = '$000000001'.

wtable2-created_by = sy-uname.

wtable2-creat_date = '20051022'.

wtable2-cond_usage = 'A'.

wtable2-table_no = '110'.

wtable2-applicatio = 'V'.

wtable2-cond_type = 'ZPR0'.

wtable2-varkey = '13001001USD 000000000050068946'.

wtable2-valid_from = '20051101'.

wtable2-valid_to = '99991231'.

APPEND wtable2 TO table2.

wtable3-operation = '009'.

wtable3-cond_no = '$000000001'.

wtable3-cond_count = '01'.

wtable3-applicatio = 'V'.

wtable3-cond_type = 'ZPR0'.

wtable3-scaletype = 'A'.

wtable3-scalebasin = 'C'.

wtable3-scale_qty = '1'.

wtable3-cond_p_unt = '1'.

wtable3-cond_unit = 'EA'.

wtable3-calctypcon = 'C'.

wtable3-cond_value = '454'.

wtable3-condcurr = 'USD'.

APPEND wtable3 TO table3.

CALL FUNCTION 'BAPI_PRICES_CONDITIONS'

  • EXPORTING

  • PI_initialmode = 'X'

  • PI_BLOCKNUMBER =

TABLES

ti_bapicondct = table1

ti_bapicondhd = table2

ti_bapicondit = table3

ti_bapicondqs = table4

ti_bapicondvs = table5

to_bapiret2 = table6

to_bapiknumhs = table7

to_mem_initial = table8

EXCEPTIONS

update_error = 1

OTHERS = 2.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

READ TABLE table6 WITH KEY type = 'E' TRANSPORTING NO FIELDS.

IF sy-subrc = 0.

loop at table6 into ret.

write: / ret-type, ret-message, ret-id, RET-LOG_NO, RET-LOG_MSG_NO,

RET-MESSAGE_V1, RET-MESSAGE_V2, RET-MESSAGE_V3, RET-MESSAGE_V4,

RET-PARAMETER,RET-ROW,RET-FIELD.

endloop.

ELSE.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

*EXPORTING

  • WAIT =

IMPORTING

return = ret

.

ENDIF.

Hope this will help.

Regards,

Ferry Lianto

Please reward points if helpful.

0 Kudos

Thank You very much. Will try this and get back to you.

Regards

Manik

Former Member
0 Kudos

Ferry,

Where do I map the delivery number and what are the contents in varkey field?

Manik

0 Kudos

Fery,

Thanks. What do I map the outbound delivery number field?

Manik

ferry_lianto
Active Contributor
0 Kudos

Hi,

Varkey is the key of the condition table Axxx where xxx is from 001 to 999.

Hope this will help.

Regards,

Ferry Lianto

ferry_lianto
Active Contributor
0 Kudos

Hi Manik,

I don't think you need to map delivery number.

Once the pricing condition updated, delivery number should get the new pricing.

Regards,

Ferry Lianto

Former Member
0 Kudos

Ferry,

I apologize for my ignorance. But how does the BAPI know which delivery number should the pricing condition be added?

Manik

ferry_lianto
Active Contributor
0 Kudos

Hi Manik,

The BAPI will not recognized the outbound delivery number.

Basically, once the pricing condition 'ZFRT' updated, the delivery number will get new conditon from this links.

LIKP-KNUMH <> KONV-KNUMH <> Axxx-KNUMH

Again, hope this will answer your doubt.

Regards,

Ferry Lianto

Please reward points if helpful.

Former Member
0 Kudos

I tried to use this BAPI, but didn't work. It created entry in A306 and KONH and return KNUMH number. But there is no entry created in KONV talbe and condition has not added to the delivery document.

0 Kudos

did you ever solve this?

0 Kudos

Use KONV_UPDATE function module

0 Kudos

So appreciate for your comment. That's what I'm looking for. It helps a lot.

Bye BDC. lol.

0 Kudos

Hello Xin

Did the FM work?? I am trying to update pricing condition in delivery header via BAPI, I had no success with BAPI_OUTB_DELIVERY_CHANGE, WS_DELIVERY_UPDATE_2 and BAPI_DELIVERYPROCESSING_EXEC. Some help will be really appreciated.

Thank you

Shounak