Application Development and Automation 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: 
Read only

Sales order creation BAPI with configuration data

Former Member
0 Likes
943

Hi,

I am creating Sales order through BAPI_SALESORDER_CREATEFROMDAT2, the order is getting created but I am not getting the characteristic values. I filled the structures required for the configuration part.

If possible please post the code for the config part.

Thanks,

Santosh

Hi,

I am creating Sales order through BAPI_SALESORDER_CREATEFROMDAT2, the order is getting created but I am not getting the characteristic values. I filled the structures required for the configuration part.

If possible please post the code for the config part.

Thanks,

Santosh

4 REPLIES 4
Read only

Former Member
0 Likes
661

hI,

Here is some sample code:

  • Order header

l_order_header-doc_type = 'ZQBV'.

l_order_header-distr_chan = '10'.

l_order_header-division = '00'.

if g_qals-werk eq '1100'.

l_order_header-sales_org = '1000'.

else.

if g_qals-werk eq '3100'.

l_order_header-sales_org = '3000'.

else.

message i001(00) with text-005.

endif.

endif.

l_order_header-purch_no_c = g_qals-prueflos. " <= lot

  • Partner data

l_order_partners-partn_role = 'AG'.

l_order_partners-partn_numb = g_qals-kunnr.

append l_order_partners to it_order_partners.

  • Order items => only one

l_order_items-itm_number = 10.

l_order_items-material = g_qals-matnr.

l_order_items-target_qty = 1.

append l_order_items to it_order_items.

  • Schedules for quantity

l_order_schdl-itm_number = 10.

l_order_schdl-req_qty = 1. " <= only 1 !

append l_order_schdl to it_order_schdl.

  • Conditions for value

l_order_conditions-itm_number = 10.

l_order_conditions-cond_type = 'PR00'.

l_order_conditions-cond_value = g_effort_sum.

l_order_conditions-currency = g_effort_unit.

append l_order_conditions to it_order_conditions.

  • BAPI to create sales order

CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'

EXPORTING

  • SALESDOCUMENTIN =

ORDER_HEADER_IN = l_order_header

  • ORDER_HEADER_INX =

  • SENDER =

  • BINARY_RELATIONSHIPTYPE =

  • INT_NUMBER_ASSIGNMENT =

  • BEHAVE_WHEN_ERROR =

  • LOGIC_SWITCH =

  • TESTRUN =

  • CONVERT = ' '

IMPORTING

SALESDOCUMENT = l_salesdocument

TABLES

RETURN = it_return

ORDER_ITEMS_IN = it_order_items

  • ORDER_ITEMS_INX =

ORDER_PARTNERS = it_order_partners

ORDER_SCHEDULES_IN = it_order_schdl

  • ORDER_SCHEDULES_INX =

ORDER_CONDITIONS_IN = it_order_conditions

  • ORDER_CONDITIONS_INX =

  • ORDER_CFGS_REF =

  • ORDER_CFGS_INST =

  • ORDER_CFGS_PART_OF =

  • ORDER_CFGS_VALUE =

  • ORDER_CFGS_BLOB =

  • ORDER_CFGS_VK =

  • ORDER_CFGS_REFINST =

  • ORDER_CCARD =

  • ORDER_TEXT =

  • ORDER_KEYS =

  • EXTENSIONIN =

  • PARTNERADDRESSES =

.

if not l_salesdocument is initial.

  • order successfully created

message i001(00) with text-001 l_salesdocument.

endif.

endif.

<b>Reward points</b>

Regards

Read only

Former Member
0 Likes
661

Hi Santosh,

here is the code 4 create sales order by BAPI

&----


*& Report ZSAN_BAPI_TEST1 *

*& *

&----


*& *

*& *

&----


REPORT ZSAN_BAPI_TEST1.

DATA: ORDER_HEADER LIKE BAPISDHEAD,

" Sales and Distribution Document Header

ORDERPARTNER LIKE BAPIPARTNR OCCURS 0 WITH HEADER LINE,

" SD Document Partner

ORDER_ITEM_IN LIKE BAPIITEMIN OCCURS 0 WITH HEADER LINE,

" Create SD Document Item

HEADER_IND LIKE BAPISDHEADX,

" Checkbox Fields for Sales and Distribution Document Header

RETURN LIKE BAPIRETURN1 OCCURS 0 WITH HEADER LINE,

" Return Parameter

W_ORDER LIKE BAPIVBELN-VBELN.

" Sales Document

*Initialize values

ORDER_HEADER-DOC_TYPE = 'TA'.

ORDER_HEADER-SALES_ORG = '5555'.

ORDER_HEADER-DISTR_CHAN = '55'.

ORDER_HEADER-DIVISION = '55'.

ORDERPARTNER-PARTN_NUMB = '0000003002'.

ORDERPARTNER-PARTN_ROLE = 'SP'.

APPEND ORDERPARTNER.

CLEAR ORDERPARTNER.

ORDER_ITEM_IN-MATERIAL = 'MAT1'.

ORDER_ITEM_IN-REQ_QTY = '2.000'.

APPEND ORDER_ITEM_IN.

CLEAR ORDER_ITEM_IN.

CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT1'

EXPORTING

ORDER_HEADER_IN = ORDER_HEADER

CONVERT_PARVW_AUART = 'X'

IMPORTING

SALESDOCUMENT = W_ORDER

RETURN = RETURN

TABLES

ORDER_ITEMS_IN = ORDER_ITEM_IN

ORDER_PARTNERS = ORDERPARTNER.

*Commit BAPI's process

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = 'X'.

FORMAT COLOR 6 INVERSE ON.

READ TABLE RETURN WITH KEY TYPE = 'E'.

IF SY-SUBRC = 0.

WRITE: 'Sales order not created' .

ELSE.

WRITE: ' Sales order NO.',W_ORDER COLOR 5, 'created successfully'.

ENDIF.

FORMAT COLOR OFF INVERSE OFF.

Read only

0 Likes
661

For standard order it is working fine.But I want to pass configuration data also.

Read only

Former Member
0 Likes
661

and for display Sales Order,

PARAMETERS: C_NUMBER LIKE BAPI1007-CUSTOMER ,

" Customer Number

S_ORG LIKE BAPIORDERS-SALES_ORG.

" Sales Organization

DATA: SALES_ORDERS LIKE BAPIORDERS OCCURS 0 WITH HEADER LINE,

" Order Items for Material

RETURN LIKE BAPIRETURN OCCURS 0 WITH HEADER LINE.

" Return Parameter

*Get Sales order numbers

CALL FUNCTION 'BAPI_SALESORDER_GETLIST'

EXPORTING

CUSTOMER_NUMBER = C_NUMBER

SALES_ORGANIZATION = S_ORG

IMPORTING

RETURN = RETURN

TABLES

SALES_ORDERS = SALES_ORDERS.

*Get Title

FORMAT COLOR 6 INVERSE ON.

WRITE: /,1(13)'Sales order',

15(25)'Item number',

28(36)'Material',

38 'Short text'.

FORMAT COLOR OFF INVERSE OFF.

*Display Sales orders

LOOP AT SALES_ORDERS.

WRITE: /,4(13) SALES_ORDERS-SD_DOC,

17(25) SALES_ORDERS-ITM_NUMBER,

29(36) SALES_ORDERS-MATERIAL,

40 SALES_ORDERS-SHORT_TEXT.

ENDLOOP.

If useful Reward me with ur valueable points.

Thanks

Sanket