Acumatica 在选项卡中添加处理页面
Acumatica Adding processing page within tab
我正在尝试在自定义页面的选项卡中创建自定义处理页面。我正在使用自定义扩展并在我的扩展 class.
中声明了 DAC
我无法将图表的 DataMember 设置为我的 PXProcessing 对象
我正在处理BLC
public class tableProcess: PXGraph<submittalProcess>
{
public PXCancel<PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable> 取消;
public PXProcessing<PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable,其中<PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable.contractID,等于<Current<Contract.contractID>>>> fixtureItems;
public提交过程()<br>
{
fixtureItems.SetProcessCaption("Approve");
fixtureItems.SetProcessAllCaption("Approve All");
fixtureItems.SetProcessDelegate<ProjectCustom.submittal>(委托(ProjectCustom.submittal 图,PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable 项)
{
graph.Clear();
graph.ApproveOrder(项目,真实);
});
}
}
主要 BLC delcaring 操作
public class submittal: PXGraph<submittal, ProjectEntry_Extension.atcProjectLinesTable>
{
public PXSelect<ProjectEntry_Extension.atcProjectLinesTable> Orders;
public void ApproveOrder(ProjectEntry_Extension.atcProjectLinesTable order, bool isMassProcess = false)
{
Orders.Current = order;
Orders.Update(order);
Persist();
if (isMassProcess)
{
PXProcessing.SetInfo(String.Format(
"Order {0} has been successfully approved.", order.ItemNumber));
}
}
public PXAction<ProjectEntry_Extension.atcProjectLinesTable> Approve;
[PXProcessButton]
[PXUIField(DisplayName = "Approve")]
protected virtual IEnumerable approve(PXAdapter adapter)
{
foreach (ProjectEntry_Extension.atcProjectLinesTable order in adapter.Get())
{
Actions.PressSave();
PXLongOperation.StartOperation(this, delegate()
{
submittal graph = PXGraph.CreateInstance<submittal>();
graph.ApproveOrder(order);
});
yield return order;
}
}
我试过使用他们的命名空间将 tableProcess.fixtureItems 分配给网格,但它超出了它的扩展 class 范围。
有没有办法在我的 ProjectEntry_Extension class 中初始化 tableProcess?
目前 Acumatica 不允许在另一个页面的选项卡内创建嵌套页面。在您的情况下,最好通过声明选择列和 Process/Process 处理网格的所有按钮来模拟选项卡内处理屏幕的外观。要为处理网格中的选定记录或所有记录启动某些过程,请使用静态 PXLongOperation.StartOperation
方法,如 T200[=15] 的 实施处理操作 部分中所述=] 培训班.
我正在尝试在自定义页面的选项卡中创建自定义处理页面。我正在使用自定义扩展并在我的扩展 class.
中声明了 DAC我无法将图表的 DataMember 设置为我的 PXProcessing 对象
我正在处理BLC
public class tableProcess: PXGraph<submittalProcess>
{
public PXCancel<PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable> 取消;
public PXProcessing<PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable,其中<PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable.contractID,等于<Current<Contract.contractID>>>> fixtureItems;
public提交过程()<br>
{
fixtureItems.SetProcessCaption("Approve");
fixtureItems.SetProcessAllCaption("Approve All");
fixtureItems.SetProcessDelegate<ProjectCustom.submittal>(委托(ProjectCustom.submittal 图,PX.Objects.PM.ProjectEntry_Extension.ProjectLinesTable 项)
{
graph.Clear();
graph.ApproveOrder(项目,真实);
});
}
}
主要 BLC delcaring 操作
public class submittal: PXGraph<submittal, ProjectEntry_Extension.atcProjectLinesTable>
{
public PXSelect<ProjectEntry_Extension.atcProjectLinesTable> Orders;
public void ApproveOrder(ProjectEntry_Extension.atcProjectLinesTable order, bool isMassProcess = false)
{
Orders.Current = order;
Orders.Update(order);
Persist();
if (isMassProcess)
{
PXProcessing.SetInfo(String.Format(
"Order {0} has been successfully approved.", order.ItemNumber));
}
}
public PXAction<ProjectEntry_Extension.atcProjectLinesTable> Approve;
[PXProcessButton]
[PXUIField(DisplayName = "Approve")]
protected virtual IEnumerable approve(PXAdapter adapter)
{
foreach (ProjectEntry_Extension.atcProjectLinesTable order in adapter.Get())
{
Actions.PressSave();
PXLongOperation.StartOperation(this, delegate()
{
submittal graph = PXGraph.CreateInstance<submittal>();
graph.ApproveOrder(order);
});
yield return order;
}
}
我试过使用他们的命名空间将 tableProcess.fixtureItems 分配给网格,但它超出了它的扩展 class 范围。
有没有办法在我的 ProjectEntry_Extension class 中初始化 tableProcess?
目前 Acumatica 不允许在另一个页面的选项卡内创建嵌套页面。在您的情况下,最好通过声明选择列和 Process/Process 处理网格的所有按钮来模拟选项卡内处理屏幕的外观。要为处理网格中的选定记录或所有记录启动某些过程,请使用静态 PXLongOperation.StartOperation
方法,如 T200[=15] 的 实施处理操作 部分中所述=] 培训班.