We are using standard costing which has its pitfalls when the cost is changing all the time for raw materials.
In general, is your organization quoting off of standard costs or are they getting the actual costs from your purchasing department?
Are your suppliers issuing future price increases? How are you capturing that in the system so that your sales department has those costs when they are quoting?
In short, if you are using standard costing, what are you quoting off of? And are you keeping the standard costs up to date with the new costs as suppliers change their prices? Or are you keeping your standards so that you see a variance? If so, then how are you quoting or how do you provide your sales team the tools needed to quote with actual prices so that you aren’t losing money.
Is there a way to quote based off current costs and still keep a standard cost so that you can see the variances throughout the year?
I wish there was a quoting and costing option for material costs like there is with burden and labor.
I just answered a similar question for a new customer where their requirements during the sales cycle was to do this very thing… in their case, most of their products come from foreign soil, and the shipping time can be over 1 month. Once an item is shipped, they know its cost, but they are still quoting at the old cost.
My suggestion (which we are proceeding with) is to:
create a NEW COST ID called “Current Cost”
Continually load the current Purchase cost for all products
roll the cost for this new costID “continually” (Ok… maybe only once per week).
make a BPM that will override the COSTID that is used to retrieve the costs when creating a quote, and load the costs from the CURRENT COST table.
Step 4 is the only thing that requires “custom code” to make it work.
You can contact your CAM (Customer Account Manager) and request help with this. I am not exactly sure how complicated the BPM will be, but my motto of “It’s only data” applies here… there must be a way to do it. The data is there, and the BPM would need to be able to “trick” the system to get the data from the right source.
I don’t see a cost ID anywhere in the server calls…
At least it isn’t called explicitly. I’ll need to decompile the code to see what it is referencing in the dataset to source the cost ID.
Probably part and site if I had to guess. which is okay because I have some old sites in my database that are no longer used so I could maybe trick it.
I don’t see any logical parameters in the method call that dictate pricing…
Yes, you and I both know that site and cost ID will be in the equation, but the BO method does not have either of those fields as a parameter. It seems to be handled in a .dll behind the scenes, but I have not been able to decompile that and figure out where.
I sense that something in the datasets is passed to a method in the .dll that then does the cost retrieval. Since I don’t have the ability to modify a .dll I would have to modify the dataset to get the result I want, but then would that mess up the quote? I have no idea.
It might have to be a completely post process BPM that updates QuoteMtl costs from the other cost ID and then runs the update worksheet method. Not sure.
Is this really the only way to go about this Tim, there’s nothing more in Epicor to accommodate this business case?
It might have to be a completely post process BPM that updates QuoteMtl costs from the other cost ID and then runs the update worksheet method. Not sure.
<
Actually, this was one of the ideas I was throwing around in my head… let the epicor process run, then go in and “adjust” the results… but that BPM would be a little intense.
Yeah, but since you are suggesting a BPM that tells me there is nothing built out in Epicor to completely handle this reality of standards and volatile actual costs that are needed for quoting.
It is handled on the labor and burden side cause you have costing and quoting rates, but not standard costs.