将搜索功能添加到销售订单行网格上的AlternateID

时间:2016-10-18 19:52:18

标签: acumatica

我想在销售订单行网格的AlternateID字段中添加一个pxselector,以搜索SOHeader上标识的客户的单个项目的多个备用ID。我添加了以下代码:

namespace PX.Objects.SO {  
    public class SOOrderEntry_Extension:PXGraphExtension<SOOrderEntry> {
        #region Event Handlers
        [PXMergeAttributes(Method = MergeMethod.Merge)]
        [PXSelector(typeof(Search<INItemXRef.alternateID, 
            Where<INItemXRef.inventoryID, Equal<Current<SOLine.inventoryID>>,  
            And<INItemXRef.bAccountID, Equal<Current<SOOrder.customerID>>>>>),  
            typeof(INItemXRef.alternateID),
            typeof(INItemXRef.inventoryID),
            typeof(INItemXRef.bAccountID)
        )]

        public void SOLine_AlternateID_CacheAttributeCacheAttached() {}
        #endregion
    }
}

我还从“交易”网格中删除了文本控件,并将其重新添加为选择器。

我的选择器按预期显示在AlternateID字段上,但是当单击选择器时,会显示错误"Error #107: View doesn't exist"。 这是一个例子来自Acumatica的Ruslan上周在俄亥俄州参加了框架培训,但我显然错过了一步。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

George,你为你的事件处理程序添加了一个错误的名称,这会导致错误。尝试使用下面的代码段替换您的处理程序:

[PXMergeAttributes(Method = MergeMethod.Merge)]
[PXSelector(typeof(Search<INItemXRef.alternateID>),
    typeof(INItemXRef.alternateID),
    typeof(INItemXRef.inventoryID),
    typeof(INItemXRef.bAccountID))]
public void SOLine_AlternateID_CacheAttached(PXCache sender)
{
}