当POOrder状态处于“待批准”状态时,我尝试启用某个字段,如“描述”字段,但是当我在POOrder_RowSelected事件上覆盖它时,它仍然不启用该字段 .
protected void POOrder_RowSelected(PXCache cache, PXRowSelectedEventArgs e, PXRowSelected InvokeBaseHandler)
{
if(InvokeBaseHandler != null)
InvokeBaseHandler(cache, e);
POOrder row = (POOrder)e.Row;
if (row != null)
{
if (row.Hold == false && row.Status == POOrderStatus.Balanced) // Balance is indicated on Pending appoval
{
PXUIFieldAttribute.SetEnabled<POOrder.orderDesc>(cache, row, true);
}
}
}
1 回答
您可以使用自动化步骤来完成此任务 .
选择您的采购订单屏幕,然后在步骤ID上选择“NL待批准” . (见下文)
然后使用FieldName“*”找到“Purchase Order”TableName并取消选中Disabled框 . 然后保存您的更改 .
然后你可以扩展POOrderEntry图,并在RowSelected事件处理程序中添加你的自定义逻辑(并设置启用所需的字段):
当POOrder处于Balanced Status时,上面的示例将启用Description字段 . 这是涉及自定义用户字段的类似问题的另一个链接:How to enable a custom field on PO301000 when the PO is in Open status?