- Apologies, I missed the original point.
Basically all the facilities to “group” events together (e.g. appSeqn, appLastSeqn, etc.) have been deprecated. You may be able to use an activation identifier and a JOIN to group docs together.
“If we publish all 500 records as one canonical document or a document list of canonical documents, what is the benefit of using Broker and canonical document?”
If the 500 documents must always be treated by all receivers as a group, then they should be published as 500 items within a single document, not as 500 independent documents. This question usually pops up when people try to publish line items of a PO as independent docs–they are not independent, they are part of a PO and so should part of the PO published document.
If the 500 items are really independent, and some of the subscribers really process them as independent items, then publishing 500 documents is the right thing to do. But if one of the subscribers still needs them as a group, then the target process needs to be designed to collect the 500. You may be able to use the join facilities of subscription triggers to do this. Another approach is to use a staging area to collect docs until they’ve all arrived. Key to any approach is knowing when you’ve received all the documents–that must be taken care of one way or another.
“…what is the benefit of using Broker…”
You probably don’t want to get me started on that topic! There are lots of threads where I’ve voiced my opinion on that–IMO, the vast majority of business integrations do not need it.
- “If middleware did receive a source, a file in this discussion, recovery should be transparent to customers since we have the source data.” It’s your job as the solution developer to make sure the solution saves the data somewhere to allow for reprocessing without going back to the source. Trading Networks can be used for this. So can Modeler processes. Even so, sometimes it may be necessary to go back to the source system to have data retransmitted–and the integration tool will always get the blame, regardless of the root cause.
Broker will not hold on to a document once it’s been processed. And if there were no subscribers at the time of the publication, it will not be transmitted to anything nor saved (Broker doesn’t have a “dead letter queue” like some other systems).
Off-topic rant: “…transparent to customers…” Are they really customers? Are they literally paying for a service (not funny money or internal accounting)? Or are they simply in another group using integration services? If the latter, would strongly encourage not calling them customers. A much better relationships between internal groups is as partners delivering goods and services to the real customer that buys these goods/services from the company. Referring to internal groups as customers often sets up expectations that cause confusion and frustration for everyone.