在Acumatica中安排一些任务
我有以下任务:以某个间隔执行某个事件。在T200手册中,我发现它可以通过处理页面完成。为此我需要添加带后缀处理的图形。但是让我感到困惑的是如何让按钮显示按钮Process,Process All,Schedules?另一个问题是如何在Acumatica中按某个时间表执行一些操作?什么是推荐的方法?在Acumatica中安排一些任务
从其他种类的Acumatica页区分处理的图形关键的一点是,他们有PXProcessing<>
类型或PXProcessingJoin<>
的数据视图 - 这些,连同在图形中定义的处理程序,会使系统创建进程,进程全部和计划按钮在相应的屏幕上。一般你的图形看起来就像这样:
public class YourProcessingGraph : PXGraph<YourProcessingGraph>
{
//Data view that provides a list of items to process
public PXProcessing<ARInvoice,
Where<ARInvoice.released, Equal<boolFalse>>> DocumentsToProcess;
public YourProcessingGraph()
{
DocumentsToProcess.SetProcessDelegate(DoActualProcessing);
//You can also change button captions
DocumentsToProcess.SetProcessCaption("Do");
DocumentsToProcess.SetProcessAllCaption("Do For All");
}
public static void DoActualProcessing(List<ARInvoice> itemsToProcess)
{
// Do something cool here
}
}
您可以在Acumatica的源代码如何正确地定义在T200培训处理图你提到还有一个更好的例子 - 例如ARDocumentRelease
图。
Acumatica不依赖于你定义的(无论是数模转换器或图形)确定什么时候什么就是什么,所以过程后缀(以及进入和MAINT)是类的名称只是一个风格/惯例的问题。 (一个重要的例外是,配备Cst
前缀/后缀的定制对象,但它们有一点不同的故事。)
至于定期执行一些动作,为此,你使用自动化调度(SM205020) - 这是当您在任何处理屏幕上单击时间表按钮时,屏幕将打开。您可以创建一个计划,在特定的处理屏幕上启动处理。时间表可以根据执行频率进行调整,以匹配您的目标,甚至可以进行一些额外的过滤。
什么是ARDocumentList? – 2015-02-09 08:48:17
对不起,这是一个复制粘贴错误 - 应该是DocumentsToProcess。检查更新的代码。我的错。 – 2015-02-09 10:04:19
所以......这是两个不同的问题。 – 2015-02-06 16:37:54