Hey gang, before you write vague references to things like “write a function”, “use a BPM”, or “fuggle the liftvarhaven” I am new to the world of BPM and Functions so I will need direction on where to even start. The only thing I know is what is possible and I know how to access Method Directive and Function Maintenance, but I wouldn’t even know where to start after that. So please either point me at some good training or take me step by step if you can. I’ve looked at a few posts similar to what I want and I got lost very quickly as the people in the threads were talking at a higher level.
I do have minimal Application Studio experience, I have a fair SQL background so BAQs are not too bad for me, I do also have programming background (admittedly on a deprecated language, but I can more or less handle C#). OK enough about me and my situation, now on to the challenge at hand.
We will rely very heavily on Epicor CPQ for our product line items. We are pretty close to having 20 CPQs completed, I anticipate that 95%+ of our line items will be driven by CPQ. Our sales team will be handling Quotes with upwards of 50 line items at times. Asking them to check the “Engineered” button on each line before sending a quote will be a real time suck. Epicor quotes cannot be printed until all lines are marked as Engineered. CPQ line items come into the Quote as Part on the fly, therefor the Engineered flag is not set. Only one of our CPQ products will actually require Engineering to review prior to quote submission. We would like to allow our sales team to send quotes without waiting and without the time suck.
I theorize we could write an Epicor Function to check the “Engineered” flag on each line item at the click of a button on the Quote screen. The reason I say Function and not BPM is that we may want to leave the lines in the un-Engineered state to allow CPQ editing until right before quote submission.
I know likely comments might steer in a different direction however let me make a few direct questions in case I am on the right path:
- Is an Epicor Function tied to a button on the Quote Entry page the right direction?
- When setting up the Function I am assuming (making an arse out of myself) I would be pretty much using a code block, but if there is somewhere else I need to start please point me in a direction. I don’t mind if you point me at documentation or training, I have been looking. So far I feel overwhelmed knowing where to start.
- Is there any reference materials on the code i can use in these code blocks and how to reference the particular Quote Detail lines in a loop to check if they are checked or not and make the appropriate change?
PS we are working with a consultant on other pieces already and could have them work on this, but I feel I will need to learn sooner or later and I think now is the time.
Also thanks in advance this community has already been a great help.