Sök…


Introduktion

Med Acumatica ERP kan du definiera attribut för flexibel, meningsfull klassificering av en enhet (Lead, Stock / Non-Stock Items Etc.) efter behov för ditt företags specifika behov. Ett attribut är en egenskap som gör att du kan specificera ytterligare information för objekt i systemet. Attribut definieras i sammanhanget för en klass som är en gruppering av företagskonton (inklusive potentiella kunder, möjligheter, kunder och fall), lager och icke-aktieobjekt av en eller flera av deras egenskaper.

Anmärkningar

Detta exempel är tillämpligt på Acumatica 6.0-serien

Den här artikeln innehåller instruktioner för hur du lägger till Acumatica ERP-attributstöd till extern försäljningsorder

Kärnan måste ditt enhets huvudsakliga DAC ha GUID-kolumn ( NoteID ) för att referera CSAnswers tabellen och måste ha fält som identifierar entitetens klass.

Vi kommer att använda Order Type att definiera en lista över attribut för att samla in särskild ordertypspecifik information.

Skapa en grafförlängning för SOOrderTypeMaint graf och förklara SOOrderTypeMaint att definiera en lista med attribut för en viss ordertyp. Vi kommer att använda out-of-box CSAttributeGroupList<TEntityClass, TEntity>

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

Skapa en grafförlängning för SOOrderEntry graf och förklara SOOrderEntry för attribut som är specifika för den aktuella ordertypen.

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

Skapa DAC-förlängning för SOOrder DAC och förklara användardefinierat fält dekorerat med CRAttributesField attribut och ange ClassID fältet - i vårt fall är det OrderType .

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

    public abstract class usrAttributes : IBqlField { }

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

    #endregion
}

Ändra Order Types sida ( SO201000 ) enligt nedan använder Anpassning 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>

Ändra sidan med Sales Orders ( SO301000 ) enligt nedan med hjälp av 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>

Ladda ner distributionspaketet



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow