I’ve got a Data Directive that runs off the SysAgentSched, it runs each day and checks on the InvcHead table for the due date of the invoice, if the condition is met it sets the AutoPrint Ready field to true
All good so far… this happens
I have a second DataDirective that checks the InvcHead for changes of the AutoPrintReady field and it is meant to run the Auto Print in the directive…
The problem I have is that the second Data Directive doesn’t fire off when the field is set by the first Directive
The second Data Directive will only fire when I manually change the field in the UI
Is this a known problem and does anyone know of a work-a-round???
Data Directives are fired off an internal trigger which doesn’t always fire when you bypass the business object and write directly to the table (like you are doing in your first Data Directive)
You should use the Business Object to make that update if you want the secondary DD to trigger.
Particularly the field changed from x to y triggers need a BI (Before Image) which only comes from the BO (or if its manually created)
Thanks @josecgomez, I’ve seen that post before, It’s more about printing a BAQ report to a local printer, I’m trying to fire off the Auto Print on the Invoice Head of selected invoices, this will then send the overdue invoices to the customer using break routing
The second data directive is not called at all? or it is not called only when there is a condition for AutoPrintReady?
if data directive for invoice head us triggered with no condition then one of the quickest solution right now I can think is to use bpmcallcontext field as a pointer to trigger the invoice head data directive.
Yeah I figured that, calling BO’s from BPM C# is my biggest stumbling block at the moment, while hunting around this site I was able to work out how to fire of the print without having to update the field in InvcHead