即使处于保持状态,Acumatica也会编辑列

时间:2017-09-18 14:46:45

标签: customization acumatica

“采购订单”屏幕(PO301000)具有“保留”复选框,选中该复选框后,用户无法编辑“文档详细信息”选项卡中的列。

我想编辑列,而不管是否打开订单选择了保留复选框。

1 个答案:

答案 0 :(得分:1)

您可以使用自动化步骤来完成此任务。

选择您的采购订单屏幕,然后在步骤ID上选择“NL Open”。 (见下文)

然后使用FieldName找到“PO Line”TableName,并选择取消选中“已禁用”框。然后保存您的更改。

enter image description here

然后假设您要修改Grid的Qty字段,您可以扩展POOrderEntry图,并在RowSelected事件处理程序上添加您的自定义逻辑(并设置启用所需的字段):

public void POLine_RowSelected(PXCache sender, PXRowSelectedEventArgs e)
    {
        POLine line = (POLine)e.Row;
        POOrder order = Base.Document.Current;
        if (order == null || line == null || Base.IsExport) return;

        if (order.Status == POOrderStatus.Open)
        {
            PXUIFieldAttribute.SetEnabled<POLine.orderQty>(sender, line, true);
        }
    } 

当POOrder处于打开状态时(保持未选中),上面的示例将启用数量字段。以下是涉及自定义用户字段的类似问题的另一个链接:How to enable a custom field on PO301000 when the PO is in Open status?