2017-04-19 26 views
0

加入訪問用戶定義的字段我有稱爲「UsrIsTeacherBook`的自定義字段,它加入到InventoryItem具有以下擴展名:通過延伸在Acumatica

namespace Lasalle.TeacherBooks 
{ 
    public class InventoryItem_TeacherBooks_Extension : PXCacheExtension<InventoryItem> 
    { 
     [PXDBBool] 
     [PXUIField(DisplayName = "Is Teacher Book")] 
     public virtual bool? UsrIsTeacherBook { get; set; } 
     public abstract class usrIsTeacherBook : IBqlField { } 
    } 
} 

我需要能夠訪問該值SalesOrder屏幕上的SOLine網格中此IsTeacherBook字段的名稱。我在銷售訂單屏幕上的SOLine網格中添加了一個自定義字段UsrTeacherBook,但我無法弄清楚如何使用InventoryItem UsrIsTeacherBook的值填充此字段。

我試圖通過以下方式定製的SOLine場的屬性:

[PXDBBool] 
[PXUIField(DisplayName="Teacher Manual", Visible = true, Enabled = false)] 
[PXFormula(typeof(Selector<SOLine.inventoryID, InventoryItemExt.usrIsTeacherBook>))] 

但是,這產生了驗證錯誤,「類型名稱‘usrIsTeacherBook’不在類型「PX.Objects存在。 IN.InventoryItemExt」。」

什麼是正確的方式來訪問InventoryItem IsTeacherBook字段填充SOLine網格上我的字段?

回答

0

您的擴展類名稱爲InventoryItem_TeacherBooks_Extension,而不是在PXFormulaAttribute中使用的InventoryItemExt。你應該要麼改變你的擴展名InventoryItemExt或修改與InventoryItem_TeacherBooks_Extension.usrIsTeacherBook PXFormula聲明

+0

謝謝,魯斯蘭!我還需要添加命名空間,以便完整的聲明是'Lasalle.TeacherBooks.InventoryItem_TeacherBooks_Extension.usrIsTeacherBook'。代碼現在正在工作。 – abulger