2017-05-25 4 views
1

ich über den DAC den RefNbr Selektor angepasst ein paar andere benutzerdefinierte Spalten zu haben, aber es gilt nur die zusätzliche Selektorspalte zum AR-Rechnungs Bildschirm:RefNbr Selector: AR Rechnung vs Verteilung Rechnung

[PXCustomizeSelectorColumns(
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.refNbr), 
 
typeof(PX.Objects.AR.ARInvoice.invoiceNbr), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.docDate), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.finPeriodID), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.customerID), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.customerID_Customer_acctName), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.customerLocationID), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.curyID), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.curyOrigDocAmt), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.curyDocBal), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.status), 
 
typeof(PX.Objects.AR.Standalone.ARRegisterAlias.dueDate), 
 
typeof(PX.Objects.AR.ARRegisterExt.usrProjectId), 
 
typeof(PX.Objects.AR.ARRegisterExt.usrProjectName))]

erfolgreich hinzugefügt, um die Rechnungen und Memos Bildschirm in FINANCE: enter image description here

Aber zeigt nicht auf die Verteilung von Rechnungen Bildschirm die verwendet denselben (?) DAC: enter image description here

Gibt es eine Möglichkeit, den Selektor auch dem Verteilungsrechnungsselektor hinzuzufügen?

sehe ich, dass es zwei verschiedene RefNbr Felder sind, die nach oben zeigen, wenn ein Feld das Hinzufügen einer von ihnen anzufertigen, aber die Auswahl nur einer von ihnen hinzufügt ... (also nahm ich die Bildschirme die gleiche DAC verwenden)

enter image description here

+0

Können Sie bitte fügen Sie Ihren Code zu der Frage –

+0

Sicher, ich habe mehr Bilder und Code hinzugefügt, obwohl das Problem scheint ein Fehler sein, nicht mit dem Code – Ahmed

Antwort

2

SOInvoiceEntry graph überschreibt das Feld in einem Cache angebrachte Methode:

[PXDBString(15, IsKey = true, IsUnicode = true, InputMask = ">CCCCCCCCCCCCCCC")] 
[PXDefault()] 
[PXUIField(DisplayName = "Reference Nbr.", Visibility = PXUIVisibility.SelectorVisible, TabOrder = 1)] 
[ARInvoiceType.RefNbr(typeof(Search2<AR.Standalone.ARRegisterAlias.refNbr, 
    InnerJoinSingleTable<ARInvoice, On<ARInvoice.docType, Equal<AR.Standalone.ARRegisterAlias.docType>, 
     And<ARInvoice.refNbr, Equal<AR.Standalone.ARRegisterAlias.refNbr>>>, 
    InnerJoinSingleTable<Customer, On<AR.Standalone.ARRegisterAlias.customerID, Equal<Customer.bAccountID>>>>, 
    Where<AR.Standalone.ARRegisterAlias.docType, Equal<Optional<ARInvoice.docType>>, 
     And<AR.Standalone.ARRegisterAlias.origModule, Equal<BatchModule.moduleSO>, 
     And<Match<Customer, Current<AccessInfo.userName>>>>>, 
    OrderBy<Desc<AR.Standalone.ARRegisterAlias.refNbr>>>), Filterable = true)] 
[ARInvoiceType.Numbering()] 
[ARInvoiceNbr()] 
protected virtual void ARInvoice_RefNbr_CacheAttached(PXCache sender) 
{ 
} 

Ihre DAC-Attribute Anpassung ist in Ordnung, aber ich vermute, graph override Vorrang über DAC-Attribute customizat Ion. Ich würde Ihnen raten, eine Diagrammerweiterung für SOInvoiceEntry zu erstellen, das CacheAttached-Ereignis darin zu kopieren/einzufügen und die Attribute zu ändern, um Ihre zusätzlichen Spalten zu haben.

Verwenden Sie das Attribut [PXMergeAttributes (Method = MergeMethod.Merge)], um die Neudefinition von Attributen zu vermeiden, die nicht geändert werden müssen.

+0

Vielen Dank für die Erklärung! Ich bin neu, können Sie vorschlagen, was ich dem SOInvoiceEntry-Diagramm hinzufügen sollte, um es mit nur einer Spalte als Beispiel zu arbeiten: "typeof (PX.Objects.AR.ARRegisterExt.usrProjectId)"? – Ahmed