Zoeken…


Invoering

Met Acumatica ERP kunt u attributen definiëren voor flexibele, zinvolle classificatie van een entiteit (Lead, Stock / Non-Stock Items enz.) Zoals vereist voor de specifieke behoeften van uw bedrijf. Een kenmerk is een eigenschap waarmee u aanvullende informatie voor objecten in het systeem kunt opgeven. Attributen worden gedefinieerd in de context van een klasse die een groepering is van de zakelijke accounts (inclusief leads, opportunities, klanten en cases), voorraad- en niet-voorraadartikelen op basis van een of meer van hun eigenschappen.

Opmerkingen

Dit voorbeeld is van toepassing op Acumatica 6.0-serie

Dit artikel biedt een handleiding voor het toevoegen van Acumatica ERP-kenmerkondersteuning aan out-of-box verkooporderentiteit

In de kern moet de hoofd-DAC van uw entiteit de GUID-kolom ( NoteID ) hebben om te verwijzen CSAnswers tabel CSAnswers en moet deze een veld hebben dat de klasse van de entiteit identificeert.

We zullen gebruik maken van Order Type om een lijst met attributen te definiëren om specifieke ordertype-specifieke informatie te verzamelen.

Maak een SOOrderTypeMaint voor SOOrderTypeMaint Graph en declareer gegevensweergave om een lijst met attributen voor een bepaald SOOrderTypeMaint te definiëren. We zullen out-of-box CSAttributeGroupList<TEntityClass, TEntity>

public class SOOrderTypeMaintPXExt : PXGraphExtension<SOOrderTypeMaint>
{
    [PXViewName(PX.Objects.CR.Messages.Attributes)]
    public CSAttributeGroupList<SOOrderType, SOOrder> Mapping;
}

Maak een SOOrderEntry voor SOOrderEntry Graph en declareer gegevensweergave voor kenmerken die specifiek zijn voor het huidige SOOrderEntry .

public class SOOrderEntryPXExt : PXGraphExtension<SOOrderEntry>
{
    public CRAttributeList<SOOrder> Answers;
}

Maak een DAC-extensie voor SOOrder DAC en verklaar een door de gebruiker gedefinieerd veld dat is versierd met het kenmerk CRAttributesField en geef het ClassID veld op - in ons geval is dit OrderType .

public class SOOrderPXExt : PXCacheExtension<SOOrder>
{
    #region UsrAttributes

    public abstract class usrAttributes : IBqlField { }

    [CRAttributesField(typeof(SOOrder.orderType))]
    public virtual string[] UsrAttributes { get; set; }

    #endregion
}

Wijzigen Order Types pagina ( SO201000 ), zoals hieronder met behulp van Customization Engine

<px:PXTabItem Text="Attributes">
  <Template>
    <px:PXGrid runat="server" BorderWidth="0px" Height="150px" SkinID="Details" Width="100%" ID="AttributesGrid" 
                MatrixMode="True" DataSourceID="ds">
        <AutoSize Enabled="True" Container="Window" MinHeight="150" />
        <Levels>
            <px:PXGridLevel DataMember="Mapping">
                <RowTemplate>
                    <px:PXSelector runat="server" DataField="AttributeID" FilterByAllFields="True" AllowEdit="True" 
                                    CommitChanges="True" ID="edAttributeID" /></RowTemplate>
                <Columns>
                    <px:PXGridColumn DataField="AttributeID" Width="81px" AutoCallBack="True" LinkCommand="ShowDetails" />
                    <px:PXGridColumn DataField="Description" Width="351px" AllowNull="False" />
                    <px:PXGridColumn DataField="SortOrder" TextAlign="Right" Width="81px" />
                    <px:PXGridColumn DataField="Required" Type="CheckBox" TextAlign="Center" AllowNull="False" />
                    <px:PXGridColumn DataField="CSAttribute__IsInternal" Type="CheckBox" TextAlign="Center" AllowNull="True" />
                    <px:PXGridColumn DataField="ControlType" Type="DropDownList" Width="81px" AllowNull="False" />
                    <px:PXGridColumn DataField="DefaultValue" RenderEditorText="False" Width="100px" AllowNull="True" />
                </Columns>
            </px:PXGridLevel>
        </Levels>
    </px:PXGrid>
  </Template>
</px:PXTabItem>

Wijzigen Sales Orders pagina ( SO301000 ), zoals hieronder met behulp van Customization Engine

<px:PXTabItem Text="Attributes">
  <Template>
    <px:PXGrid runat="server" ID="PXGridAnswers" Height="200px" SkinID="Inquire" 
                Width="100%" MatrixMode="True" DataSourceID="ds">
        <AutoSize Enabled="True" MinHeight="200" />
        <ActionBar>
            <Actions>
                <Search Enabled="False" />
            </Actions>
        </ActionBar>
        <Mode AllowAddNew="False" AllowDelete="False" AllowColMoving="False" />
        <Levels>
            <px:PXGridLevel DataMember="Answers">                        
                <Columns>
                    <px:PXGridColumn TextAlign="Left" DataField="AttributeID" TextField="AttributeID_description" 
                                        Width="250px" AllowShowHide="False" />
                    <px:PXGridColumn Type="CheckBox" TextAlign="Center" DataField="isRequired" Width="80px" />
                    <px:PXGridColumn DataField="Value" Width="300px" AllowSort="False" AllowShowHide="False" />
                </Columns>
            </px:PXGridLevel>
        </Levels>
    </px:PXGrid>
  </Template>
</px:PXTabItem>

Implementatiepakket downloaden



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow