Источник:
http://alexvoy.blogspot.com/2016/03/...ory-using.html
==============
If you add tasks to a batch job using SysOperation framework, like the following:
[...]
while (mapIterator.more())
{
if (!batchHeader)
{
batchHeader = this.getCurrentBatchHeader();
}
controller = wblDirPartyMergeTaskController::construct();
[...]
if (batchHeader)
{
batchInfo = controller.batchInfo();
batchHeader.addRuntimeTask(controller, this.getCurrentBatchTask().RecId);
}
else
{
setPrefix(batchInfoStr);
controller.parmExecutionMode(SysOperationExecutionMode::Synchronous);
controller.run();
}
mapIterator.next();
}
if (batchHeader)
{
batchHeader.save();
}
}
You need to set Execution mode to Synchronous while initializing your service class controller.
// class wblDirPartyMergeTaskController extends SysOperationServiceController
public void new()
{
super();
// default for controllers in these classes is synchronous execution
// batch execution will be explicitly specified. The default for
// SysOperationServiceController is ReliableAsynchronous execution
this.parmExecutionMode(SysOperationExecutionMode::Synchronous);
this.parmOther(newValue);
}
Otherwise you will see nothing in bath tasks history infolog.
Источник:
http://alexvoy.blogspot.com/2016/03/...ory-using.html