Performing Product assignment in Production Model, in Business ByDesign using Cloud Application Studio
Many of our manufacturing customers integrate their ByDesign tenants with other SAP systems, which they use as the base master data system where they handle the relevant production master data such as Bill of Material, Bill of Operation, Production model.
In their base system, when they modify these master data objects, they would like to perform the same modification in ByDesign solution. Considering manual modification can result in errors, the ask is to have the modifications automatically done. While there are certain web services to cater to these master data elements, there are certain actions which cant be performed with web services at the moment. An Add-on can be built in such cases.
In an earlier blog, the use case of modifying an existing Bill of operations is discussed.
In this blog, a different use case will be discussed.
Disclaimer : Please note that the blog is primarily for demonstration purposes and the users should apply their discretion in adopting any suggestions provided in blog. This is purely an educational blog, primarily giving directions on achieving a certain use case. The main intent is to showcase the functionality and hence the typical guidelines of CAS development in relation to naming conventions, code optimisation, error handling etc are not followed.
Use Case : At present, other than UI, there is no way to perform product assignment (of BOM items) to activity (of BOO) in production model.
Solution Approach using Add-on:
Relevant nodes and actions of production master data are exposed for consumption via PDI. Hence an add-on can be built.
In this demonstration, I primarily took the following steps.
Step a) Capture the required parameters in terms of the production model where the assignment has to be performed and the item group and activity info, such that the components in item group can be assigned to activity.
Step b) Build an action, which will read the parameters passed in previous step to perform the required assignment.
For the assignment action to be performed, its important to know at-least one change state UUID of any of the component of the item group to be assigned. For getting change state UUID, we first navigate to bill of material – variant, which has been used in production model. Once the change state UUID is obtained, the action of assignment will be performed on that, against the activity where the item group components are to be assigned.
Here is the code snippet.
Step c) Testing using UI. In the below example, upon clicking ‘Update Model’ button, add-on solution will pick up all the components of the item group ‘Control-B’ and assign to activity ‘ACT0020’, in the production model ‘MCA-0001A’
If the activity IDs are maintained unique across model, then the above approach can be taken. Incase the activity IDs are unique at operation level and not at production model level, then you need to take operation ID as well as input parameter to find out the right activity to which the product assignment has to be performed.
Similarly other modifications on existing production model can be performed using simple add-ons. Users can also built custom web-services for such modifications and then consume the same.
Hope this helps.