Integrating MM & SD Modules in Same Client to Create Sales order in Supplying Company Code Using PO raised in Receiving Company Code By I-Doc Message Type ORDERS Part1
Hi Friends in this document I’m going to explain about integrating purchasing and sales process between different company codes maintained in same server & client by using EDI & I-Docs with message type ORDERS. Once the Sales order is created in Supplying company code, confirmation is sent to receiving company code by using message type ORDRSP.
Prerequisites:
- Knowledge of MM & SD
- Two organization structures: one for purchasing and another for sales
Purchasing: Company Code:8888, Plant: 8881, Purchase Organization: 8881,
Sales: Company Code:6666, Delivering Plant: 6661, Sales Area:6666, 66, 66, Shipping Point 6666.
3. Basic I-Docs knowledge
Steps:
- Check Logical system assigned to your client in transaction SCC4.
2. Create RFC destination (of type ABAP Connection) to the logical system in transaction SM59. Here give the same name as of logical system & fill target host & system number as shown below. In logon & security Tab fill client, username & password. To check the connection click on Remote logon & connection test. If you are able to remotely log in to target client then proceed to the next step.
3. Create a port of type Transactional RFC in transaction WE21. You can give port name manually or else system will assign one based on your selection. select I-Doc version as SAP release 4.X & give RFC destination name which was created in Step No.2 .
4. Create Vendor Master in Transaction XK01 with Organizational elements of Purchasing System i.e, Company Code:8888 & P.Org: 8881. In Correspondence Company Code data, maintain Account with Vendor field with the customer number that you will create in Step No.7
5. In transaction WE20 create Partner of type LI(Vendor) & give the vendor number created in Step No.4 & Save it. Now Click on ‘+’ button in outbound parameters area as shown below.
6. Enter the Partner Role VN and select message type as ORDERS.
In Outbound options tab, enter the receiver port which was created in Step No.3. Select the transfer idoc immediately to transfer the Idoc as soon as it was created. Select the Basic type as ORDERS05
In message control Tab Enter the Output Message type of Purchaser order Ex. NEU as shown below and select process code as ME10.
In EDI Standard Tab maintain as shown below. For more details press F1 in that particular field.
7. Create Customer Master in Transaction XD01 with organizational elements of Sales System i.e., Company Code:6666 Sales Area: 6666, 66, 66. In correspondence company code data, maintain Account at customer field with vendor number created in Step No.4.
8. In transaction WE20 create Partner of type KU (Customer) & give the Customer number created in Step No.7 & Save it. Now Click on ‘+’ button in outbound parameters area as shown below.
Enter the Partner Role SP and select message type as ORDRSP.
In Outbound options tab, enter the receiver port which was created in Step No.3. Select the transfer idoc immediately to transfer the Idoc as soon as it was created. Select the Basic type as ORDERS05
In message control Tab Enter the Confirmation Message type of Sales Order Ex. BA00 as shown below and select process code as SD10.
In EDI Standard Tab maintain as shown below’ For more details press F1 in that particular field.
9. In transaction WE20, expand Partner type LS(Logical System) & select the Logical system which was assigned to your client in Step No.1 (This Logical system already exists & don’t required to create).
Now Click on ‘+’ button in inbound parameters area as shown above. Select message type as ORDERS.
In Inbound options tab, Select the process code ORDE and select trigger immediately & to process the I-doc immediately.
10. Similarly maintain inbound parameters for message type ORDRSP to the same logical system with process code ORDR (order confirmation)
11. Create Condition record in transaction NACR for message type NEU (purchase order Print out EDI) with combination P.Org & EDI Vendor.
Enter the P.Org:8881 & Vendor:2096 and press enter. Select Medium 6(EDI), 4(send immediately) & Language EN)English). Then save it.
Note: The partner role selected here is used as partner role in Step No.6.
Note: In message control tab you have to maintain this message(NEU) in step No.6.
12. Similarly Create Condition record in transaction NACR for message type BA00(Sales Order Confirmation) with Combination Order Type.
Enter the the sales order document type ‘OR’ and press enter. Select Medium 6(EDI), 4(send immediately) & Language EN)English). Then save it.
Note: The partner role selected here is used as partner role in Step No.8.
Note: In message control tab you have to maintain this message(NEU) in step No.8.
13. Create Material master in Transaction MM01 with organzational elements of purchasing system i.e., Plant:8881. Maintain basic data, purchasing, plant storage data & accounting views. Fill Gross weight & net weight fields in basic data tab. remaining as normal.
14. Extend the material created in Step No.13 in transaction MM01 with organizational elements of Sales system i.e., Plant:6661, Sales Area:6666, 66, 66. Maintain Sales1&2, sales plant data, storage plant data, accounting views.
15. Create standard purchasing info record in Transaction ME11, with vendor:2096, Material; 2070, P.org:8881, Plant: 8881.
In General Data maintain Vendor Material Number field with material Number in Sales system (Same number as both systems are using same material number). In Condition tab maintain Gross price. Ex. Rs.300 per TO
16. Create Condition Record for inputTax Condition type MWVS in transaction FV11. Slect key combination Ex.Domestic Taxes. Where i4 is the Input tax code with 10% input tax in Country India
17. Create Condition record For Gross Price Condition Type ‘PR00’ in transaction VK11 with required key combination & maintain the Gross Price. Ex.300 Per Tonne
18. Create Condition Record For output tax condition type MWST in transaction VK11 with required key combination. Where S1 is the ouput tax code with 10% output tax in country India.
19. Maintain the Sales Area for the Customer & vendor combination in Transaction VOE2
Note: Maintain the vendor number manually(as there is no search help) with prefix zeros if required as SAP will look for the same.
20. Convert External Partner Numbers to internal partner numbers. Here we have to convert external ship to party(8881 receiving plant) to internal ship to party 100211. To achieve this make entries as below in Transaction VOE4.
21. In your sales pricing procedure make sure that condition types EDI1 & EDI2 exists at the end of the schema as shown below. Those two condition types stores unit price and total value of item expected by customer(i.e., Price maintained in PO). These two condition types are for information purpose & can be used for blocking sales order & billing if the price differs from price in sales order. Transaction V.25 is to be used to release from blocking.
Testing:
Step1. Make sure the stock exists in delivering plant(6661). Then Create PO in Transaction ME21N in receiving plant 8881
In PO Item Materials Data tab observe vendor material number field filled or not. if you haven’t created info record you can maintain manually.
In Confirmation tab maintain Confirmation Control key as 0001(Confirmations) & mark Acknowledgement required check box.
In messages observe NEU message was triggered with medium 6(EDI). Save the PO & make sure PO message was sent. Use transaction code ME9F if required.
Step2: In Transaction WE02 Check the outbound I-doc Status of message type ORDERS.
Here Idoc 911045 as shown above. If it is successfully processed it will have status 3.
Step3. Then Check Inbound IDoc of Message type ORDERS. Here the IDoc 911046. If it is successfully processed and have status 53 then get the sales order number as shown below.
Step4. Open the sales order in Transaction VA03. Obsrve PO Number, order quantity, delivery date & customer material number.
In item Conditions Tab observe condition types EDI1 &EDI2 are updated with Unit price & total value of material ordered in PO respectively
In item Order data tab observe below details
Step5. Now Make sure sales order Message type BA00 was sent. in VA03 Goto Extras > Output > Header > Edit.
Step6. In Transaction WE02 Check Outbound IDoc status of Message type ORDRSP.
Here Idoc 911047 as shown above. If it is successfully processed it will have status 3.
Step7: Then Check Inbound IDoc of Message type ORDRSP. Here the IDoc 911048. If it is successfully processed and have status 53 then check information message saying purchasing doc XXX successfully processed as shown below.
Step8: Now Display the purchase order in ME23N and in item confirmations tab observe the sales order number is updated with confirmed schedule line as shown below.
-End Of Document Part1
In Continuation of this document I will explain about ‘processing delivery in SD and goods receipt in MM for the above business process using IDocs’ in my next document http://scn.sap.com/docs/DOC-45777
Thanks For Reading & Please share your reviews & feedback….
Regards
Satish
Hi Satish
Nice helpful document.
Thanks a lot
Atul
HI Atul,
Welcome Dear and thanks for the feedback
Regards
Satish
Excellent process description. Looking forward for the second part
Hi Jurgen,
Many thanks for the feedback..
Regards
Satish
Hi,
Great Explanation. Thanks.....
Hi Ravindra,
Thank You very much for the feedback..
Regards
Satish
Hi,
I Need help. I don't know how to use IDOCs. Is it possible in r3 server like ideas. Can you please give me any document related to IDOC's
How to find this in our server with basics of IDOC's. If you have please provide with t-codes and screen with document
http://scn.sap.com/docs/DOC-34785
i seen this document but how to use in ideas . what are the needed to use idocs
T
Hi Ravindra,
Good to knew that you wanted to learn about idocs...You can work in SAP IDES to practice on IDocs. No issues but follow below steps which may be use ful to you.
1. In your logon pad click on change item after selecting your system shortcut.
a. Here note server name(you can also find that at After logging in to your IDES client goto menu bar > system > status..here in 'database data' section note 'host' name.) Ex.gcecc62
b. Note the system number/instance number. Ex.00
2. Goto transaction SCC4 and note logical system assigned to your client.
3. Goto transaction SM59 n create an ABAP connection with the name you noted in step2. In technical settings tab give target host with the name noted in step1a and select host name radio button. In system number give the number noted in step1b. In logon&security tab enter language, client, username&password. Then save it. Now if you are able to logged in automatically to that client after clicking on 'remote logon' button You can proceed to further steps as explained in this document.
Useful transaction codes are sale, scc4, sm59, we21, we20, bd64(only reqd if you are working on cross client or cross server. note:the above document is with in one client so no bd64), bd10,11,14,15, we02,05, bd87, we19.
I currently dont have any documents with step by step procedure...I will share if found or will write one if required..
Hope it helps...have a nice time with IDocs...:)
Regards
Satish
Really good document
Good One...Many Thanks.
Best Regards,
Naresh K.
Dear Rajender & Naresh,
Thank you very much for the feedback.. 😎
Regards
Satish
Satish ,
Dont have words to describe ur Talent .Wonderful ........Keep it Up 🙂 .
Thanks,
Naren
Hi Narendra,
Thank you very much for your feedback and appreciation...:)
Regards
Satish
thanks sharing, very helpful.
Thank you Satish Nice effort.Very useful document. Keep on sharing this kind of documents.
thanks,
Srinu.
Thanks Satish for sharing. Its very informative esp. the settings related to Idocs.
Keep up the good work! 🙂
Regards,
Ram
HI Srinivas & Ram,
Thank you very much for the feedback..
Regards
Satish
Dear,
After long back ,I had time to look into your Documents.I have read your first document only .In 20th Step ,you have maintained EOE4 instead of VOE4 Transaction .I have changed that only.
Thanks,
Naren
Hi Naren,
Thank You very much for correcting the document. I too added Tcode VOE2 which I forgot to mention earlier.
Regards
Satish
Hi Satish
i got good knowledge of mm & sd integration, i tested this and got results
thank you very much.
Regards
Vamsi
Hi vamsi,
Thank You very much for the feedback. Good to knew it has helped you someway.
Regards
Satish
Thanks a lot Satish....
I was troubling with this issue for 3-4 months...
w/o your help it was not possible.
All credit goes to you...
Cheers 🙂 !!
Please follow me if possible.
HI Nikhil,
Good to knew that this document is helped You and You are always welcome.
Can You please tell me what are the additional findings you made in the last 3 months on this topic which are not mentioned in this 3 * document so that I will include them in the doc to make it 5 *. 😏 Because it was showing in your words but not in actions. Hey don't take otherwise, wanted to knew have I missed something in the document or My documentation itself has to be improved. 😕
Regards
Satish
Hello Satish.
No doubt your work document is good..But I got stuck in solving pricing procedure errors regarding EDI1 & EDI2. After a lot of efforts I had to alter my customized pricing procedure to add these two conditions.
Can you elaborate how should I get rid off this error? without changing my regular pricing procedure? I mean if i have not used these two conditions in my pricing procedure, then why system throughs error in inbound Idoc processing?
Regards,
Nikhil G.
Dear,
we can use any one of Condition Type in our Pricing Procedure only why because these two Condition Types are having Condition Class is B-Prices.Actually ,no need to take / add these two condition types to our Pricing Procedure.
I think ,you know ,if two condition types had Condition class B then any one goes to Inactivate stage.
Thanks,
Naren
Dear Nikhil,
First of all thank You very much for the feedback.
Those two condition types namely EDI1 & EDI2 are must be maintained in your pricing procedure. These two condition types stores unit price and total value of item expected by customer(i.e., Price maintained in PO). As said by Narendra,these two condition types are for information purpose & can be used for blocking sales order & billing if the price differs from price in sales order. transaction V.25 is to be used to release from blocking. Hope it is clear now.
Wanted to include this in document but forgot to take screen shots of pricing procedure. but now i will include. Once again thank you for the feedback.
Regards
Satish
Hey Satish,
that would be very generous of you..
Will wait for your updation.
Regards,
Nikhil Ghadge.
Hello!
I would like to ask you a question about this matter. It would be possible to configure the ORDERS idoc (create sales order) without modifying the pricing procedure by adding the EDI1 and EDI2 condition types?
I've tried it but I get this error (V1206) when process the idoc in foreground:
Condition EDI1 is missing in pricing procedure A V ZW0000
Thanks and best regards,
Mónica.
Great Document
This is the document I was searching for very long period
Thanks Satish
Hi Praveen,
Thank You very much for your feedback on this document.
Regards
Satish
Hi Satish,
Great work!
Thanks,
Ashok Kumar Telugu
HI Ashok,
Thanks a lot for your appreciation.
Regards
Satish
Hi satish,
Very nice document... Thanks a lot for sharing...
Tnx
Nayeem.
Hi Satish,
Very nice document. A must have document applicable for all industry business process.
Thanks a lot.
Hi Nayeem & Vikas,
Thank You very much for your feedback.
Regards
Satish
Excellent document... really helpful.
Thanks for sharing.
Hi Satish,
Really a very informative document.
Thanks for taking all the effort in preparing this.
kudos to you 🙂
Best Regards,
Khushi
Hi Satish,
Thanks.... its very helpful doc.
regards,
Krishnanand Rai
Nice presentation flow.
Hello Satish,
Impressive explanation it helped me a lott..Good job.
Hi Satish,
its very usefull document.
Regards
Srinivas.
Hello Babu
Your blog is very informative and knowledgeable for SCN users.I was searching doc like it and luckily I have found today. It is very interesting and excellent piece of document. It clearly shows your hard work and effort which would help us. Now, I have got good knowledge of MM & SD Integration.
Keep it buddy
Arshiyan
Hi Arshiyan,
Thanks for your feedback and appreciation
Regards
Satish
Hi Babu,
your blog is very helpful, thanks, man.
Hi bro
Its simply outstanding 😉
Regards
Partha
Good effort ......... keep continue...
Dear All,
Once again thank you for your feedback & appreciation.
Regards
Satish
Hi Satish
Thanks for sharing the document. I am working on IS retail and applied the same there. I am able to create PO and that created an outbound IDOC. But not able to find the reason why inbound has not created. Please suggest what may be the reason. (there is no inbound idoc created).
Hi Satish,
Thank you so much for this excellent documentation. Whole series provides a lot of help on this end to end process.
Great!!! So helpful, thank you for sharing.
Wonderful document. I was looking for something like this.
Keep going. Great work!
Great document.
I went through this step by step in our test system. I have one question , in my case the E1EDK01-BSART for outbound IDOC from PO always is populated with order type 'NB'.
Did you use some user exists to blank it out. Once its blanked out then the Inbound IDOC posting automatically picks up OR order type from VOE2 transaction.
Hi! Thanks a lot for the document, it's great! I have a problem: The NEU message is processed but the IDOC ORDERS doesn´t generate the sales order and gives the following error:
Fill in all required entry fields
Do you have any idea about this error? Thanks a lot!
Best regards
Nice presentation
Excellent ...!!....Very useful document.
All,
I followed the document as it is but only Outbound doc is created. There is no sales order created ....Where can I trouble shoot and it hsows only outbound idoc not inbound idoc.
Thanks.
SIva
Hi Satish,
Could you please attach images about the delivered document, i´m financial consultant and be check options for transfer prices.
Best regards.
Terrific Explanation ➕ .
Hi Satish,
I am not able to view the content which you have specified
Regards
Ashish
Excellent document!! Does anybody have some useful links how to set up returns flow with IDOCs?
Great work Satish. expecting more blogs from you.
Regards.
G.V.Shivakkumar
Impressive document. Can this process work in the same company code as well? We have a scenario that we need to keep in the same company code.
Great Post!!! How can it works with S/4 HANA using BRF+?
Thank you!
Great article! thanks for sharing.
Hi ,
in this scenario which you explain is with same client right
what are the things i need do in case i have different client's example sender is 300 receiver is 200
Hi,
The content you've given is really great and your effort should be much appreciated.
Trying to figure one thing.
I've followed the steps you've given. Idocs are getting generated properly but in the Inbound Idoc, "No pricing procedure could be determined" error is coming up even though I configured the pricing procedure properly. I've given the screenshot of the error and pricing procedure. Kindly guide me through this issue.
Screenshot of the Pricing Procedure
Screenshot of the error.
Hello
Thanks for this helpful document, the same setting I replicated but I do face this issue
VKORG, VTWEG, SPART cannot be determined for customer 0000100237 , vendor 0000100411
Message no. VG204
Diagnosis
No sales organization, distribution channel or division were sent to the IDOC. This data is necessary if a sales order is to be added automatically. If this data is unavailable, you cannot create a sales order document.
Procedure
If data on the sales organization, distribution channel and division have not been entered in the IDOC, it must be determined using a user