我想在X ++ for Microsoft Axapta 3.0(Dynamics AX)中创建批处理作业.
如何创建一个执行像这样的X ++函数的作业?
static void ExternalDataRead(Args _args)
{
...
}
Run Code Online (Sandbox Code Playgroud)
这是在AX中创建批处理作业所需的最低限度:
通过创建扩展RunBaseBatch该类的新类来创建批处理作业:
class MyBatchJob extends RunBaseBatch
{
}
Run Code Online (Sandbox Code Playgroud)
实现抽象方法pack():
public container pack()
{
return connull();
}
Run Code Online (Sandbox Code Playgroud)
实现抽象方法unpack():
public boolean unpack(container packedClass)
{
return true;
}
Run Code Online (Sandbox Code Playgroud)
run()使用要执行的代码覆盖方法:
public void run()
{
;
...
info("MyBatchJob completed");
}
Run Code Online (Sandbox Code Playgroud)
main在类中添加静态方法以创建类的实例并调用标准RunBaseBatch对话框:
static void main(Args _args)
{
MyBatchJob myBatchJob = new MyBatchJob();
;
if(myBatchJob.prompt())
{
myBatchJob.run();
}
}
Run Code Online (Sandbox Code Playgroud)
如果您希望批处理作业在批处理列表中有描述,请description向您的类添加静态方法:
server client static public ClassDescription description()
{
return "My batch job";
}
Run Code Online (Sandbox Code Playgroud)