SysOperation Framework (Batch)

Replace *object* with your class name

Contract Class

[DataContractAttribute] 
class *contractClassName*
{
str testParameter

[DataMemberAttribute('Test Parameter')]
public str parmTestParameter(str _testParameter = testParameter)
{
testParameter = _testParameter;

return testParameter;
}
}

Service Class

class *serviceClassName* extends SysOperationServiceBase 
{ 
	public void process(contractClassName _contract)
	{ 
		//Do something
	} 
}

Controller Class

class *controllerClassName*  extends SysOperationServiceController
{ 
	protected void new() 
	{ 
			super(classStr(serviceClassName), methodStr(serviceClassName, process), SysOperationExecutionMode::Synchronous); 
	}
			
	public ClassDescription defaultCaption() 
	{ 
		return "Process Job"; // Replace with label of job name
	}
			
	public static controllerClassName construct(SysOperationExecutionMode _executionMode = SysOperationExecutionMode::Synchronous) 
	{ 
		controllerClassName controller; 
				
		controller = new controllerClassName(); 
		controller.parmExecutionMode(_executionMode); 
				
		return controller; 
	}
			
	public static void main(Args _args) 
	{ 
		controllerClassName controller; 
				
		controller = controllerClassName::construct(); 
		controller.parmArgs(_args); 
		controller.startOperation(); 
	}
}

Action Menu Item

Object TypeClass
ObjectcontrollerClassName

Leave a comment