I’m trying to create a method directive that updates the ECCExtPayMethod table when there is a change in a field in the Customer table. The problem I’m running into is that I can’t figure out what method to use - neither the ECCCustomer nor the ECCExtension business objects have traditional “Update” or “UpdateExt” methods.
Is there another way to update a value in the ECCExtPayMethod table when a value in the Customer table changes that I’m missing? Or does anyone know which BO method to use?
That’s exactly what I’ve tried, but the ECC BO methods aren’t nearly as well-documented (or obvious) as other BO methods like Customer or SalesOrder. (Also, the tables I would need access to to update directly - ECCExtPayMethod & ECCExtShipVia - aren’t exposed for some reason…I created an Epicor Idea to expose these in BAQ Designer)
I have tried adding a condition that checks for a change to CreditCardOrder on Customer.Update, and if true, Invoke BO Method. That’s where I’m having trouble. The ECCCustomer BO only has 2 methods and neither do what I need. I then tried ECCExtension, which has 230 methods, but no “Update” method.
Since I can’t seem to trace the calls between Kinetic and ECC, I reviewed the ECC logs (within Magento) and see that the CUS message is the one that brings over allowed payment methods. So I looked at the methods prefaced with “CUS”, and after reviewing those it seems that instead of using an Update method, XML is generated by one or more of these methods then passed up to ECC. I see CusFinalXML and CusPayload methods, but without documentation I don’t know what format those methods expect data in.
I also tried creating a function that I call from the BPM, passing in the CustNum to be updated from the BPM then building out an ECCExtensionCustomerTableset (which does give access to the fields I need), but I can’t seem to get that to work either. I get a Success message but the table data never updates. Here’s how I have it configured:
We’re hosted so I don’t think I have access to an event viewer.
I’m curious if there’s any way for me to know if the transaction is successful. I know in raw SQL I can use a TRY/CATCH block and output any errors, but I don’t know if it’s possible with a widget?
Can’t say I use the widgets too often but if you use custom code to update the record you can add try catches and display a message if an error is encountered