0

when I add a new field, in the payment configuration tab.

It adds the field in location to the database, but at the same time I create DAC addressExt, I don't understand why.

here is the DAC of each one that created me.

First.

the field is created in this table: Location

namespace PX.Objects.CR.Standalone {

public class LocationExt : PXCacheExtension<PX.Objects.CR.Standalone.Location>
{
    #region UsrTest
    [PXDBBool]
    [PXUIField(DisplayName="test")]
    public virtual bool? UsrTest { get; set; }
    public abstract class usrTest : PX.Data.BQL.BqlBool.Field<usrTest> { }
    #endregion
}

}

second.

namespace PX.Objects.CR {

public class AddressExt : PXCacheExtension<PX.Objects.CR.Address>
{
    #region UsrTest
    [PXDBBool]
    [PXUIField(DisplayName = "test")]
    public virtual bool? UsrTest { get; set; }
    public abstract class usrTest : PX.Data.BQL.BqlBool.Field<usrTest> { }
    #endregion
}

}

view image:

I hope you understand, I'm not good at English.

enter image description here

Tibu
  • 31
  • 1
  • 8
  • I'm not sure I understand your question. Could you make it clearer or try asking it a different way? – Deetz Dec 16 '20 at 12:07

1 Answers1

0

This is actually being done by design. The DAC you are editing is a Projection consisting of multiple DACs. Check this link out from Sergey Marenich

PXProjection uses 2 Data Access Classes for quotes:

One class represents the table – PX.Objects.CR.Standalone.CRQuote. Another represents view as combination of DACs in select – PX.Objects.CR.CRQuote. And to correctly work, custom field needs to be added in both of the places. And Projection field should be linked to table field using BqlField property of DBFieldAttributes.

Patrick Chen
  • 1,028
  • 1
  • 6
  • 8