自从6.10或2017R2升级到2018R1以来,CROpportunity上的自定义字段不显示已保存的值

Sim*_* ML 4 acumatica acumatica-kb

我在自定义项目中对CROpportunity进行了DAC扩展,该项目在6.10和2017R2中运行良好.现在我将我的网站升级到2018R1,我的自定义字段不再起作用了.保存记录后,即使数据库正确保存了值,自定义字段也会变为空白.

为什么会这样?

Sim*_* ML 8

在2018R1版本中,PX.Objects.CR.CROpportunity成为了投影PX.Objects.CR.Standalone.CROpportunity.

为了使投影正确获取其自定义字段值,您还需要自定义独立DAC并将BQL字段设置PX.Objects.CR.CROpportunityPX.Objects.CR.Standalone.CROpportunity.

这是一个例子:

public class CROpportunityExt : PXCacheExtension<PX.Objects.CR.CROpportunity> 
{
    #region UsrTest
    [PXDBDecimal(BqlField = typeof(CROpportunityStandaloneExt.usrTest))]
    [PXUIField(DisplayName="Test Field")]

    public virtual Decimal? UsrTest { get; set; }
    public abstract class usrTest : IBqlField { }
    #endregion
}

public class CROpportunityStandaloneExt : PXCacheExtension<PX.Objects.CR.Standalone.CROpportunity>
{
    #region UsrTest
    [PXDBDecimal]
    [PXUIField(DisplayName="Test Field")]

    public virtual Decimal? UsrTest { get; set; }
    public abstract class usrTest : IBqlField { }
    #endregion
}
Run Code Online (Sandbox Code Playgroud)