Yes, wM will receive all 10 records in single time when it polls, but the notification service will execute 10 times for each record. The records will be processed in First In First Out manner.
“I mean…do we need to change any settings in the adapter notification to accept multiple records at sametime as a list.”
No. The records will be processed in First In First Out manner. By default wM won’t allow to form a list then execute the notification service only one.
Even if we have 100 records in the buffer table, using a single poll wM will receive 100 records, but 100 times notification service will get executed.
The above explained menthod is default behaviour wM.
If your intention to collect those 100 records and form a list then execute the notification service only once, then we need to write our own logic.
Here is the one.
-
Create a notification service, at this time automatically buffer table will get created. Note this buffer table name.
-
Once we ENABLE the notification then only the buffer table and other db components will get created in the db. (The buffer table & other db components like Trigger & sequence which are required for the notification will get created by wM). So ENABLE the notification.
-
Now SUSPEND the notification. If we SUSPEND, all the changes will be captured in the buffer table, but notification service won’t be executed b’coz it is suspended. Don’t ENABLE the notification.
-
Write another flow service which will fetch the records from the BUFFER table created in the first step & do the work what you want to do. At the end of this flow service delete BUFFER table completely.
By using this logic, service will get executed only once :-). And you can put this service in the scheduler and run whenever you want.
Note: If the amount of records is high, lets say 10000 or more then you might end up with memory out of exception. In that case you have to use large file handling logic in your flow.
Thanks
Saravanan S
#Adapters-and-E-Standards#Integration-Server-and-ESB#webMethods