I've got the following problem: on my 4.6c R3 production instance factory calendar had been setup as 7 working days a week but recently the need was to change it to 5 working days a week due to the introduction of route calculation to determine correct dates for the sales orders.
We changed the factory calendar (which did deliver the correct result for the sales orders) only to discover that the "Usage" value determined for the materials by MC44 got totally wrong (usage with the 5 working days calendar was approximately 30 to 50% LESS than with the 7 days working calendar !!)
As soon as we did restore factory calendar back to 7 working days a week MC44 was again fine (obviously sales orders date got wrong...).
My impression is that everything is based on the way data from table MVER is determined depending on the factory calendar (which is apparently driven by function module DATE_CONVERT_TO_FACTORY_DATE).
I guess I could change from customizing the calendar for the shipping point: in that case my expectation is that sales orders date should be fine as well as results from MC44 but I'm not totally sure about that.
Any idea ? Do you know which is the way table MVER is populated based on the calendar settings ?
Many thanks in advance for your help.
I doubt that SAP is capturing the data in MVER table wrong with a change of working days in a calendar.
But it might be that SAP does not read the MVER records in MC44 transaction that fall onto a non-workingday after the calendar change. (Just an assumption, I have not read the code)
So for the year of this calendar change you would need to set the flag "daily usage" which controls that SAP reads the material documents instead of the MVER records.
from the logical point of view sounds reasonable but....
1) even if I didn't fully debug the program (otherwise I guess I would know the answer ) looks like MVER is the only one considered in terms of usage
2) even if you forget point 1 (I could obviously be wrong) you're missing one information that I didn't mention: our usage (or consumption if you prefer) is 98% done from Monday to Friday; sometimes we do something on Saturday but this is kind of an exception.
Based on the above, despite the factory calendar is setup on 7 working days a week, our material usage is basically done on 5 working days a week. Described this way you'll immediately understand that, even if the program reads the data based on the number of working days, changing the calendar from 7 to 5 should cause a decrease of only 2-3%, in our case changing the factory calendar from 7 to 5 working days is causing a decrease of 30% to 50%.
I believe the program is reading the table in a different way based on the factory calendar, I'll try to give you an example:
01 Mon 10
02 Tue 20
03 Wed 30
04 Thu 40
05 Fri 50 ---> total week 1 far 150
06 Sat 2
07 Sun 0 -
> total of the weekend 2
08 Mon 100
09 Tue 200
10 Wed 300
11 Thu 400
12 Fri 500 -
> total week 2 1500
13 Sat 6
14 Sun 0 -
> total of the weekend 6
For the 2 weeks, factory calendar 7 working days a week, total usage would be 1658.
In your case, switching to 5 working days a week, it should deliver usage only for Monday to Friday, which is 1658 - (2+6)=1650 (i.e. difference is peanuts)
As I said, I couldn't get to the end of the debug, but my impression was that, switching to 5 working days a week (based on the above example) the program would read 10 "days" so from Monday 01 to Wednesday 10, in that case the total would be 1658 - (4005006) = 752 (now difference is huge...).
So...... maybe main question could be: which is the way MVER is populated ?