在销售订单输入操作下的电子邮件销售订单流程中设置字段值
Set Field Value during Email Sales Order process under Slaes Order Entry Actions
我创建了一个新字段 UsrAcknowledged,布尔值,复选框,并将其放在 SOLine 详细信息网格中。当电子邮件销售 Order/Quote 流程在 SOOrder 的操作下 运行 时,我希望检查详细信息网格上的每一行。 SOOrderEntry_Extension:PXGraphExtension下我的代码如下
public CRActivityList<SOOrder> Activity;
public PXAction<SOOrder> notification;
[PXUIField(DisplayName = "Notifications", Visible = false)]
[PXButton(ImageKey = PX.Web.UI.Sprite.Main.DataEntryF)]
protected virtual IEnumerable Notification(PXAdapter adapter,
[PXString]
string notificationCD
)
{
foreach (SOOrder order in adapter.Get<SOOrder>())
{
var parameters = new Dictionary<string, string>();
parameters["SOOrder.OrderType"] = order.OrderType;
parameters["SOOrder.OrderNbr"] = order.OrderNbr;
Activity.SendNotification(ARNotificationSource.Customer, notificationCD, order.BranchID, parameters);
//order.OrderDesc = "Desc";
foreach (SOLine line in PXSelect<SOLine>.Select(Base, order.OrderNbr))
{
SOLineExt rowExt = line.GetExtension<SOLineExt>();
rowExt.UsrAcknowledged = true;
line.OrderQty = 5;
}
yield return order;
}
}
//order.Desc = "Desc" 是一个初始的简单测试,只是为了查看我的代码是否达到了预期的结果,以及产品描述是否按计划进行了更改。
我的代码编译和电子邮件处理 运行s 按计划进行,绿色检查成功,但确认复选框和订单数量均未更改。我真的不在乎订单数量,这只是另一个测试。
任何关于我可以更改以更新“已确认”复选框以在“SO 订单输入”屏幕上的“操作”下的“电子邮件销售”Order/Quote 期间选中的任何建议都将不胜感激
我会说你需要在更新 foreach 中的行值后调用 Base.Transactions.Update(line)。
我创建了一个新字段 UsrAcknowledged,布尔值,复选框,并将其放在 SOLine 详细信息网格中。当电子邮件销售 Order/Quote 流程在 SOOrder 的操作下 运行 时,我希望检查详细信息网格上的每一行。 SOOrderEntry_Extension:PXGraphExtension下我的代码如下
public CRActivityList<SOOrder> Activity;
public PXAction<SOOrder> notification;
[PXUIField(DisplayName = "Notifications", Visible = false)]
[PXButton(ImageKey = PX.Web.UI.Sprite.Main.DataEntryF)]
protected virtual IEnumerable Notification(PXAdapter adapter,
[PXString]
string notificationCD
)
{
foreach (SOOrder order in adapter.Get<SOOrder>())
{
var parameters = new Dictionary<string, string>();
parameters["SOOrder.OrderType"] = order.OrderType;
parameters["SOOrder.OrderNbr"] = order.OrderNbr;
Activity.SendNotification(ARNotificationSource.Customer, notificationCD, order.BranchID, parameters);
//order.OrderDesc = "Desc";
foreach (SOLine line in PXSelect<SOLine>.Select(Base, order.OrderNbr))
{
SOLineExt rowExt = line.GetExtension<SOLineExt>();
rowExt.UsrAcknowledged = true;
line.OrderQty = 5;
}
yield return order;
}
}
//order.Desc = "Desc" 是一个初始的简单测试,只是为了查看我的代码是否达到了预期的结果,以及产品描述是否按计划进行了更改。 我的代码编译和电子邮件处理 运行s 按计划进行,绿色检查成功,但确认复选框和订单数量均未更改。我真的不在乎订单数量,这只是另一个测试。 任何关于我可以更改以更新“已确认”复选框以在“SO 订单输入”屏幕上的“操作”下的“电子邮件销售”Order/Quote 期间选中的任何建议都将不胜感激
我会说你需要在更新 foreach 中的行值后调用 Base.Transactions.Update(line)。