您好,我的自定義項目仍然存在問題,我正在使用 acumatica,我需要在 pxselect 或字段更新上獲取相應的字段,您可以向我展示一種執行此操作的方法嗎?我已經嘗試了我在這里學到的所有內容。這是我創建的代碼public class APTranExt : PXCacheExtension<PX.Objects.AP.APTran> { #region UsrWholdingATC [PXDBString(10)] [PXUIField(DisplayName = "WholdingATC")] [PXSelector( typeof(Search<withholdingtaxx.atc>), typeof(withholdingtaxx.taxRate))] public virtual string UsrWholdingATC { get; set; } public abstract class usrWholdingATC : PX.Data.BQL.BqlString.Field<usrWholdingATC> { } #endregion #region UsrWholdingrate [PXDBDecimal] [PXUIField(DisplayName = "Wholdingrate")] public virtual Decimal? UsrWholdingrate { get; set; } public abstract class usrWholdingrate : PX.Data.BQL.BqlDecimal.Field<usrWholdingrate> { } #endregion #region UsrWholdingamount [PXDBDecimal] [PXUIField(DisplayName = "WholdingAmount")] public virtual Decimal? UsrWholdingamount { get; set; } public abstract class usrWholdingamount : PX.Data.BQL.BqlDecimal.Field<usrWholdingamount> { } #endregion這里的一切工作正常我成功創建了一個自定義表格,來自 pxselector 的顯示表格所以我需要的是,當我選擇 atc value 時,我還需要拉動稅率并將其放在 wholdingrate 字段中,謝謝您的幫助順便說一句,我嘗試在此處放置一些代碼,但當我在調試模式下運行時,它不會命中字段更新protected void APTran_UsrWholdingATC_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e) { var row = (APTran)e.Row; }
1 回答

慕蓋茨4494581
TA貢獻1850條經驗 獲得超11個贊
當我在調試模式下運行時,它不會命中字段更新
通常發生這種情況是因為字段編輯器控件沒有將屬性CommitChanges
設置為True
:
當在編輯器控件上CommitChanges設置為時,當用戶更改值后控件失去焦點時將調用該事件:TrueFieldUpdated
protected void APTran_UsrWholdingATC_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
APTran tran = e.Row as APTran;
if (tran != null)
{
APTranExt tranExt = tran.GetExtension<APTranExt>();
if (tranExt != null)
{
decimal? value = [...];
cache.SetValue<APTranExt.usrWholdingrate>(tran, value);
}
}
}
- 1 回答
- 0 關注
- 142 瀏覽
添加回答
舉報
0/150
提交
取消