cancel
Showing results for 
Search instead for 
Did you mean: 

Pricing Question

0 Kudos

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

Accepted Solutions (0)

Answers (8)

Answers (8)

moazzam_ali
Active Contributor
0 Kudos

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$

0 Kudos

Carlos,

Hope your problem is solved by now. I am curious to know what solution did you come up with.  Kindly share.

anurag

0 Kudos

Hi Guys

We are still working ion this requirement. We have not come up with a def answer for this issue.

shashi_thakur
Contributor
0 Kudos

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

Former Member
0 Kudos

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

0 Kudos

Hi Sagar

That's what I am doing now (manually), til a better solution is defined.

Former Member
0 Kudos

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


0 Kudos

Rajesh

I agree, but sometimes we have massive prices changes, and that will make the job slow again just with the changes alone.

Former Member
0 Kudos

Then you can go for the split the batch job based on the some criteria where it will reduce the time.


0 Kudos

So there is no other solution for fining price faster? Something that could be faster than va01 simulation?

0 Kudos

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

former_member212707
Active Participant
0 Kudos

How about building a price feed to the front end system and send the values of the condition records from KONP for all the condition types that you desire to send? This can be done on a daily basis or per your convenience.

This way you dont have to simulate VA01 everytime.

Thanks,

Ravin

0 Kudos

Hi Anurag

Yes, we are thinking about reducing the number of tables to be accessed, but we are checking with the business. Also Yes, they are all exclusive.

I will check  on the option of creative indexing and table split.

0 Kudos

Ravin

I am not sure how would this work. Would mind giving more details?

Former Member
0 Kudos

hi Carlos,

ask your ABAP team to do a performance analysis to yor batch program to see where most of the time is spended.

former_member212707
Active Participant
0 Kudos

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

Former Member
0 Kudos

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.

Former Member
0 Kudos

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

0 Kudos

Hi Brian

Thx .

That's what I am doing now.

Former Member
0 Kudos

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

0 Kudos

Hi Elvis,

Yes, all information is reloaded, even if no changes.

Former Member
0 Kudos

You could set up two jobs, one for price changes and one for new prices (materials). so you do not have to replace the data with same data every night. Let me know if you need more info.

0 Kudos

Hey Elvis

Like I mentioned to Rajesh, sometimes we have massive changes in prices, and that will make the change job be almost as heavy as the new price one.

0 Kudos

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?

0 Kudos

Anurag:

The answers are:

Is the whole table rewritten every night or is it an incremental update?

Whole table re-written

Has your DBA done performance tuning on the database?

Not sure