Я только начинаю кодировать в Acumatica и пытаюсь добавить Секторы на экран клиента. Я создал таблицу секторов SQL (TRSector) с именами и кодами 18 различных секторов. Я также создал другую таблицу SQL (TRCustSectorActive), которая содержит все комбинации учетных записей клиентов и кодов секторов с дополнительной информацией (активна она или нет, даты и т. Д. c). Идея состоит в том, что каждый клиент будет иметь информацию о каждом секторе.
Я пытаюсь добавить селектор для секторов на странице клиента (AR303000). Проблема, с которой я сталкиваюсь, заключается в том, что даже если мой селектор показывает правильно, если я пытаюсь изменить сектор, мой выбор автоматически возвращается к первой строке. Я предполагаю, что я делаю что-то не так при соединении двух моих столов? Или я должен иметь CurrentSector представление на моем графике?
Вот более подробная информация о моем коде. Селектор в моем TRCustSectorActive DA C выглядит следующим образом:
#region SectorCD
[PXDBString(20, IsKey = true, IsFixed = true, IsUnicode = true, InputMask = "")]
[PXUIField(DisplayName = "Filière")]
[PXSelector(
typeof(Search2<TRCustSectorActive.sectorCD, LeftJoin<TRSector, On<TRCustSectorActive.sectorCD, Equal<TRSector.sectorCD>>>, Where<TRCustSectorActive.bAccountID, Equal<Current<Customer.bAccountID>>>>),
typeof(TRCustSectorActive.sectorCD),
typeof(TRSector.name),
typeof(TRCustSectorActive.active)
)]
public virtual string SectorCD { get; set; }
public abstract class sectorCD : IBqlField { }
#endregion
Я присоединился к TRSector DA C, чтобы я мог отображать названия секторов в выделении.
Вид в расширении CustomerMaint выглядит следующим образом:
public PXSelect<TRCustSectorActive, Where<TRCustSectorActive.bAccountID, Equal<Current<Customer.bAccountID>>>> Sector;
И на странице я добавил этот бит:
<px:PXFormView ID="DefFiliere" runat="server" Caption="Activation Filières" DataMember="Sector" RenderStyle="Fieldset" DataSourceID="ds" TabIndex="2100">
<Template>
<px:PXLayoutRule runat="server" ControlSize="SM" LabelsWidth="SM" StartColumn="True" />
<px:PXSelector runat="server" ID="edSector" DataField="SectorCD"/>
<px:PXLayoutRule runat="server" StartColumn="True" LabelsWidth="SM" ControlSize="SM" />
<px:PXCheckBox runat="server" ID="edActive" DataField="Active"/>
</Template>
</px:PXFormView>