Suche…


Einführung

Mit Acumatica ERP können Sie Attribute für eine flexible, aussagekräftige Klassifizierung eines Unternehmens (Lead, Stock / Non Stock-Produkte usw.) gemäß den Anforderungen Ihres Unternehmens definieren. Ein Attribut ist eine Eigenschaft, mit der Sie zusätzliche Informationen für Objekte im System angeben können. Attribute werden im Kontext einer Klasse definiert, bei der es sich um eine Gruppierung der Geschäftskonten (einschließlich Leads, Opportunities, Kunden und Kunden), Bestand und Nicht-Lagerartikel nach einer oder mehreren Eigenschaften handelt.

Bemerkungen

Dieses Beispiel gilt für die Acumatica 6.0-Serie

In diesem Artikel finden Sie eine Anleitung zum Hinzufügen von Acumatica ERP-Attributunterstützung zur werkseitigen Verkaufsauftragsentität

Im Kern muss der Entity-Haupt-DAC über eine GUID-Spalte ( NoteID ) verfügen, um auf die CSAnswers Tabelle zu CSAnswers , und über ein Feld verfügen, das die Klasse der Entität CSAnswers .

Wir werden den Order Type , um eine Liste von Attributen zu definieren, um bestimmte auftragstypspezifische Informationen zu sammeln.

Erstellen Sie eine Diagrammerweiterung für SOOrderTypeMaint Graph und deklarieren Sie die Datenansicht, um eine Liste von Attributen für einen bestimmten Auftragstyp zu definieren. Wir werden CSAttributeGroupList<TEntityClass, TEntity>

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

Erstellen Sie eine Diagrammerweiterung für SOOrderEntry Diagramm, und deklarieren Sie die Datenansicht für Attribute, die für den aktuellen Auftragstyp spezifisch sind.

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

Erstellen DAC - Erweiterung für SOOrder DAC und erklären benutzerdefiniertes Feld mit verziertem CRAttributesField Attribute und geben Sie die ClassID Feld - in unserem Fall ist es OrderType .

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

    public abstract class usrAttributes : IBqlField { }

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

    #endregion
}

Ändern Order Types Seite ( SO201000 ) , wie unten 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>

Ändern Sales Orders Seite ( SO301000 ) , wie unten 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>

Laden Sie das Bereitstellungspaket herunter



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow