When a record in the SpecHed table is changed - If SpecId changed then UD04.Shortchar01 needs to be updated and if SpecID.Description changed then UD04.ShortChar02 needs to be updated.
I was hoping a bpm could handle this but unsure how to do it. Can any of you kind people help ?
Thanks in advance
This can be done with UD04.UpdateExt method… it can be done all with widgets
You need to create a widget that “Invoke BO Method” and choose the UD04 Update Ext method… then create the parameters for the DataSet.
Once you have the dataset created, then use the “Fill table By Query” widget to populate the UD04 dataset created… you will need to populate the Company, Keys 1-5, and the two fields you mentioned above. Attach the widgets (Fill table, then BO Method widget), and it is done. no C# code needed.
The “Query” in the “Fill table by query” needs to examine your TT Record to find the changed record, and then populate the Dataset with the values.
timshuwy thanks ever so much
Im unsure what to enter into the Binding parameters setup
Can I check
The Speched table is the table that will be changed, which should then update the UD04 Table.
So should the Method Directive be placed on Specification.UpdateExt OR UD04.UpdateExt?
Apologies im completely new to this widget
The method would go on the Specification.Update (Post proc I’d assume), then the widget in the method will use UD04.UpdateExt.
As Tim said, you need to map the values. One thing you didnt mention is how Spec = UD04. With the UD tables, you have to have a unique (combination) of keys. So you’d have like UD04.Key1 = SpecType + UD04.Key2 = SpecID for example.
This makes it a little weird in this case because while you can change SpecID, you cant change a UD04 Key. Yet, in order to make the records, you need the keys.
For this reason, I dont think the widget alone will solve your requirement. (At least not without a bunch of dangling orphaned UD04 records)