on 02-20-2014 2:13 PM
Hi Gurus,
I have a customer that has 1000 sites. These 1000 sites use a UI that was in-house developed.The backend system is SAP.
All sites must have accurate/daily price information.
For that there is a solution in place that takes articles and simulates the pricing (like va01). After the pricing is found, the result are carried to a Z table. This Z table is where pricing information is picked up and displayed on the UI. This simulation runs at a nighlty job.
What happens is: with so many part numbers and sites, this job takes a very long time to run and if there are many price changes, this could potentially dump.
Is there another way I can get all new prices faster, and have this job finishing without issues?
P.S. when simulation occurs, we only use one pricing condition, 1 access sequences, but we have 6 A tables.
Any help is appreciated.
Thx
Hi
I am seeing that you already got many suggestions and some of them are really valueable. I have one more suggestion but for that I have to know that what is user UI and in which environment it was developed? I am asking this just to have an idea that whether it would be possible to sync this UI with RFC connection with your SAP system. With this You won't need any batch job or any load on system. You can fetch data directly from SAP in your third party UI by integrating or syncing SAP with this UI with some RFC connection.
Have you thought about this?
Thank$
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Carlos,
Hope your problem is solved by now. I am curious to know what solution did you come up with. Kindly share.
anurag
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Carlos,
We had a similar requirement and this is what we did. Created a custom program to fill all the details which are needed for the PRICING function module and then called the same in the program. Then we setup Parallel processing for the list of customers and set the batch job to run at a time when the least number of jobs are running.
Regards,
Shashi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Carlos,
Even I think splitting the job and making it run frequently say every 2 hours will be little better option and it will reduce the chance of system giving dump.
Hope this helps.
regards,
Sagar Wagh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
1) Before updating the whole Ztable you need to have validation if there are any changes to the price if the record exist in the Ztable then update that record.
2) You can also have new field in that Ztable with the date and time log so that you can track when the record is changed.
3) Make a differenciation on creating new records and updating existing records in Ztable.
This will help you in reducing the time for updating the Ztable through batch job and you will also have the track of changes in the Ztable.
Let me know if you have any questions.
Rajesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Carlos,
Other than the batch split process mentioned above. I just want to add the following:
As i understand there are two different areas where the potential problem could be or where the performance gain can happen.
1. Simulation of pricing (reading)
and
2. Populating the Z table (writing)
For part 1 of the problem:
Is there a way you can reduce number of tables accessed from 6? This may give you some performance gain. Are they exclusive?
For part 2 of the problem:
As a parallel exercise, I would suggest to talk to your DBA and work on your Z table on any creative indexing or splitting the table can speed up the write process as well.
ar
Carlos,
In the past we had a similar requirement to push all the material prices to a front end CRM system on a daily basis. The condition records were updated almost every day to reflect certain variations in the material prices. With the help of an ABAPer we wrote a Z program as an interface between SAP and the front end system. Not all condition types were needed by the front end system, so we controlled our custom condition types by means of a TVARV variable. By sending out the required condition types from the KONP table using the interface as a daily batch job we achieved the requirement with minimum impact on system performance.
Hope this helps,
Ravin
Carlos,
in case you work with change pointers just try to clean obsolete entries of relevant tables. maybe this make your program run faster. Of course best of all is to schedule you jobs more frequent. we do almost the same in our procedure and we execute jobs like yours every hour.
hope it help you.
Carlos,
Could you carry this process out in a number of smaller batches instead of just one?
It's not a long-term solution but may stop the job dumping in the short term.
Thanks,
Brian
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Carlos,
To confirm my understanding of the issue: Every night, the job takes the price changes and updates a Z table which is used for pricing reference by the UI.
Are you updating only new prices and price changes or everything all pricing data are loaded regarding if no changes are carried?
Regards,
Ervis
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Carlos,
As I understand, the problem is in the batch job that runs nightly. It appears more like a DBA issue than SAP. Nevertheless, questions for you:
Is the whole table rewritten every night or is it an incremental update?
Has your DBA done performance tuning on the database?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.