We have a scenario where one of our vendors can raise a case with us to detail multiple invoices which they believe are overdue.These individual cases are automatically loaded into a queue using the SalesForce connector.
Using ReFramework, the TransactionItem contains the case number, and using this we retrieve a data table containing the list of invoices which have been queried.
At present i have two options in mind to tackle this scenario
Loop through the data table within process.xaml handling each line.
Pro: easy to understand, allows for completion of 1 case before moving to the next
Con: limited error and retry facility from reframework
Implement a dispatcher/performer model, where the dispatcher loads the individual invoices into a second queue and the performer actions this secondary queue.
Pro: allows for easy retry/error handling, allows for tracking of volume and handling time in Orchestrator
Con: complexity to reconcile invoice line resolution against parent case resolution.
I can see the benefit of both, but feel the reconciliation piece might make option 2 much more difficult to implement with any stability.
Does anyone have experience with a similar scenario?