‎2009 Dec 30 7:11 PM
Hi all, Iu2019m working in an important Project and I have a critic issue related with the performance during the creation of a sales order. The program (a z development) that creates the sales order is a very simple development; it only has the call to the BAPI_SALESORDER_CREATEFROMDAT2.
Weu2019re going to generate approximately 130000 sales orders with one item each every month, and the program takes about 20 seconds per sale order. Actually, with our estimation, the process would take more than 722 hours.
We need to generate this orders during a day at least.
Does somebody have a solution for this issue?
Does anyone have experience processing large volumes of data?
Thank you in advance!
‎2009 Dec 30 7:48 PM
Trace the sales order creation and identify where the time lag is. A single order should not take that long. We create orders with ref to contracts that have hundreds of items on them and it doesn't take that long. Your SQL trace will identify the issue. Most likely it's in custom code or in code that had been fixed in an OSS note.
‎2009 Dec 30 7:48 PM
Trace the sales order creation and identify where the time lag is. A single order should not take that long. We create orders with ref to contracts that have hundreds of items on them and it doesn't take that long. Your SQL trace will identify the issue. Most likely it's in custom code or in code that had been fixed in an OSS note.
‎2009 Dec 30 8:15 PM
I Found the oss note 1260002, i thing that resolved this problem.
‎2009 Dec 30 10:43 PM
Hi Joel,
I hope the SAP note already helps.
My experience says you should determine the maximum number of orders to create before calling BAPI_TRANSACTION_COMMIT (or commit work). This takes some experimenting because a lock table overflow can be quite harmful because you it's hard to find out was has been created and what has not.
Create an order similar to one of your mass upload and check in locks overview what and how many locks are set. I remember in mass customer master data change, we ran in to trouble after 20 000 customer changes without commit.
You could consider parallel processing, the easiest way is creating IDOCS. We had sales orders created by IDOCS like 5 per second.
Regards,
Clemens
‎2009 Dec 31 4:10 PM