扩展或修改数据视图

Extend or modify a Data View

是否可以扩展页面的图形并修改数据成员?

我有一个新页面,可以为现有客户添加位置,但希望这些位置仅显示在我的页面上,而不显示在“客户”页面的“位置”选项卡中。 因此,我将扩展位置 table 以识别从我的新页面创建的记录,并且必须将客户位置数据成员修改为以下

    public PXSelect<LocationExtAddress, Where<LocationExtAddress.locationBAccountID, Equal<Current<BAccount.bAccountID>,
And<LocationExtAddess.extendedField, IsNull>>>> Locations;

BusinessAccountGraphBase class(这是 CustomerMaint 的基础 class)中声明的 Locations 数据视图没有声明委托:

public class BusinessAccountGraphBase<Base, Primary, WhereClause> : PXGraph<BusinessAccountGraphBase<Base, Primary, WhereClause>>
    where Base : BAccount, new()
    where Primary : class, IBqlTable, new()
    where WhereClause : class, IBqlWhere, new()
{
    ...
    public PXSelect<LocationExtAddress, Where<LocationExtAddress.locationBAccountID, Equal<Current<BAccount.bAccountID>>>> Locations;
    ...
}

因此,要修改 Locations 客户屏幕上的数据视图,您应该简单地为 CustomerMaint BLC 创建一个扩展,如下所示:

public class CustomerMaintExt : PXGraphExtension<CustomerMaint>
{
    public PXSelect<LocationExtAddress, 
        Where<LocationExtAddress.locationBAccountID, Equal<Current<BAccount.bAccountID>,
            And<LocationExtAddess.extendedField, IsNull>>>> Locations;
}

有关此主题的详细信息,请参阅 Acumatica Customization Guide