Hi,
I have a batch job created by code using sysOperationFramework with executionMode:relaible async (no dialog appears class gets called when a button is clicked directly)
For reliable async, when it runs, a record gets created in batch job table, then it disappears and only appears in batch job history table.
So since alot of batch job records gets created each time it runs. How can i change batch group for it?
Can i do it from the UI? Or only by code? And how?
An update to my last reply above.
I was able to fix the issue for scheduled batch by adding an extra line for batch header (in order for the batch group value to appear at both tables[batch,batchJob. So at the end, it looked like this
controller.batchInfo().parmGroupId(DParameters::find().DBatchGroup); controller.batchInfo().parmBatchHeader().parmBatchGroup(DParameters::find().DBatchGroup);
controller.parmReliableAsyncBatchGroupId(DParameters::find().DBatchGroup); controller.batchInfo().parmGroupId(DParameters::find().DBatchGroup); controller.batchInfo().parmBatchHeader().parmBatchGroup(DParameters::find().DBatchGroup);
I've noticed the following:
if i try ScheduledBatch as execution mode and put this line in controller (assume DBatchGroup value is Generic)
controller.batchInfo().parmGroupId(DParameters::find().DBatchGroup);
protected void new() { super(classStr(DService),methodstr(DService,perpareD),SysOperationExecutionMode::ScheduledBatch); } public static Controller construct(Id _Id = '') { Controller controller = new Controller(); controller.parmShowDialog(false); controller.parmShowProgressForm(false); Contract contract = controller.getDataContractObject(); contract.Id(_Id); controller.batchInfo().parmGroupId(DParameters::find().DBatchGroup); return controller; }
controller.parmReliableAsyncBatchGroupId(DParameters::find().DBatchGroup);
protected void new() { super(classStr(DService),methodstr(DService,perpareD),SysOperationExecutionMode::ReliableAsync); } public static Controller construct(Id _Id = '') { Controller controller = new Controller(); controller.parmShowDialog(false); controller.parmShowProgressForm(false); Contract contract = controller.getDataContractObject(); contract.Id(_Id); controller.parmReliableAsyncBatchGroupId(DParameters::find().DBatchGroup); return controller; }
Hi Mohit,
I tried ParmReliableAsyncBatchGroupId("Workflow")
But it's still saved in "batch job table" as empty batch group
What shall i do?
Hi Mohit,
So for reliable async, i can only change it by code? I can't do it from the UI?
Hi, Please check this thread for adding batch group by code. Although not verified answer but see if it helps.
André Arnaud de Cal...
292,111
Super User 2025 Season 1
Martin Dráb
230,934
Most Valuable Professional
nmaenpaa
101,156