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

BAPI_SALESORDER_CREATEFROMDAT2

Former Member
0 Likes
1,329

AFTER USING THE FOLLOWING CODE IN THE RETURN PARAMETER IT GIVES ME THAT I NEED TO ENTER SOLD TO PARTY...... BUT WHEN I TRY TESTING IT AND PASS THE PARAMETER THRU SE37 IT CREATES SD DOC. KINDLY HELP. IAM PASSING MINIMUM PARAMTERS TO CREATE SD DOC THRU BILLING REF DOC.

&----


*& Report ZNMTEST1

*&

&----


*&

*&

&----


REPORT znmtest1.

TABLES: vbak,vbap.

DATA: BEGIN OF errmsg OCCURS 10.

INCLUDE STRUCTURE bapiret2.

DATA: END OF errmsg.

DATA: begin of return OCCURS 1 .

INCLUDE STRUCTURE BAPIRET2.

data: end of return.

*data: return like BAPIRET2 occurs 1 with header line.

DATA: sd_vbeln TYPE BAPIVBELN-VBELN.

DATA: order_header_in LIKE bapisdhd1.

DATA: begin of order_partners OCCURS 0 .

INCLUDE STRUCTURE BAPIPARNR.

data: end of order_partners.

DATA: order_items_in LIKE bapisditm OCCURS 10 WITH HEADER LINE.

DATA: it_vbrp LIKE vbrp OCCURS 10 WITH HEADER LINE.

PARAMETER: svbeln LIKE vbrk-vbeln OBLIGATORY,

kunnr LIKE kuagv-kunnr OBLIGATORY,

werks LIKE vbap-werks OBLIGATORY.

START-OF-SELECTION.

  • SELECT * FROM vbrp INTO CORRESPONDING FIELDS OF TABLE it_vbrp WHERE vbeln = sd_vbeln AND pstyv = 'ZTAB'.

  • LOOP AT it_vbrp.

order_header_in-doc_type = 'ZQIC'.

order_header_in-sales_org = '1000'.

order_header_in-distr_chan = '30'.

order_header_in-division = '00'.

order_header_in-ref_doc = svbeln.

ORDER_HEADER_IN-REFDOCTYPE = 'ZQSR'.

ORDER_HEADER_IN-SD_DOC_CAT = 'C'.

CLEAR order_partners.

order_partners-partn_numb = kunnr.

order_partners-partn_role = 'SP'.

APPEND order_partners.

  • ENDLOOP.

CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'

EXPORTING

  • SALESDOCUMENTIN =

order_header_in = order_header_in

  • ORDER_HEADER_INX =

  • SENDER =

  • BINARY_RELATIONSHIPTYPE =

  • INT_NUMBER_ASSIGNMENT =

  • BEHAVE_WHEN_ERROR =

  • LOGIC_SWITCH =

  • TESTRUN =

  • CONVERT = ' '

IMPORTING

salesdocument = sd_vbeln

TABLES

RETURN = return

  • ORDER_ITEMS_IN =

  • ORDER_ITEMS_INX =

order_partners = order_partners

  • ORDER_SCHEDULES_IN =

  • ORDER_SCHEDULES_INX =

  • ORDER_CONDITIONS_IN =

  • 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 =

.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = '1'

IMPORTING

RETURN = errmsg

.

WRITE: / sd_vbeln.

*write: / errmsg.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,051

Hi,

1. Pass a structure to ORDER_HEADER_INX . Pass 'X' to all the respective values that you are passing in ORDER_HEADER_INX.

2. Pass ORDER_ITEMS_IN, ORDER_ITEMS_INX , ORDER_SCHEDULES_IN and ORDER_SCHEDULES_INX .

3. Call FM BAPI_TRANSACTION_COMMIT.

Reward points if the answer is helpful. If the question is answered, please close the thread.

Regards,

Mukul

7 REPLIES 7
Read only

Former Member
0 Likes
1,051

Hi Navid,

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = '1'

IMPORTING

RETURN = errmsg

.

In this function module dont enterany value against WAIT.

Try out this.

Reward Points if it solved your issue.

regards,

Kiran I

Read only

0 Likes
1,051

hi

1.pass this structure also--> ORDER_HEADER_INX put the value as X if you r

passing the field in ORDER_HEADER_IN. same way fill the ORDER_ITEMS_INX also

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

<b> WAIT = 'X'.</b>

u r passing 1.

hope it works

Please Close this thread.. when u r problem is solved

Reward if Helpful

Regards

Naresh Reddy K

Read only

Clemenss
Active Contributor
0 Likes
1,051

Hi navid,

you don't pass any items to the order. Try again with at least one item. Probably the system gets confused when trying to save empty order.

Note: The message 'Enter sold-to party' not necessarily means what it says.

Note: Please release CAPS LOCK. It saves our eyes.

Regards,

Clemens

Read only

Former Member
0 Likes
1,051

actually i was trying to create a sales order by reference and thats why i did not fill any line item.

Read only

Former Member
0 Likes
1,052

Hi,

1. Pass a structure to ORDER_HEADER_INX . Pass 'X' to all the respective values that you are passing in ORDER_HEADER_INX.

2. Pass ORDER_ITEMS_IN, ORDER_ITEMS_INX , ORDER_SCHEDULES_IN and ORDER_SCHEDULES_INX .

3. Call FM BAPI_TRANSACTION_COMMIT.

Reward points if the answer is helpful. If the question is answered, please close the thread.

Regards,

Mukul

Read only

0 Likes
1,051

why is it necessary to do so. can you explain it to me please. thank you in advance

Read only

Former Member
0 Likes
1,051

the problem i was having is that in order_header_in there were 2 refernce fields and probabaly i was putting it the wrong one. my problem was not related to commit but populating the bapi. everybody thanks for your input.