كيفية إنشاء X ++ مهمة دفعي في اكسابتا 3.0؟

StackOverflow https://stackoverflow.com/questions/170088

  •  05-07-2019
  •  | 
  •  

سؤال

وأود أن إنشاء وظيفة دفعة في X ++ لمايكروسوفت اكسابتا 3.0 (دايناميكس AX).

وكيف يمكنني إنشاء مهمة الذي ينفذ وظيفة X ++ مثل هذا واحد؟

static void ExternalDataRead(Args _args)
{
...
}
هل كانت مفيدة؟

المحلول

إليك الحد الأدنى اللازم لإنشاء وظيفة دفعة في AX:

وإنشاء وظيفة دفعة عن طريق إنشاء فئة جديدة تمتد الطبقة RunBaseBatch:

class MyBatchJob extends RunBaseBatch
{
}

وتنفيذ أسلوب pack() مجردة:

public container pack()
{
    return connull();
}

وتنفيذ أسلوب unpack() مجردة:

public boolean unpack(container packedClass)
{
    return true;
}

وتجاوز أسلوب run() مع التعليمات البرمجية التي تريد تنفيذ:

public void run()
{
    ;
    ...
    info("MyBatchJob completed");
}

وإضافة أسلوب main ثابت إلى صفك لإنشاء مثيل من الفصول الدراسية واستدعاء الحوار RunBaseBatch القياسية:

static void main(Args _args)
{
    MyBatchJob myBatchJob = new MyBatchJob();
    ;
    if(myBatchJob.prompt())
    {
        myBatchJob.run();
    }
}

إذا كنت تريد وظيفة دفعة أن يكون لديك وصفا في قائمة الدفعة، إضافة إلى طريقة description ثابت إلى صفك:

server client static public ClassDescription description()
{
    return "My batch job";
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top