2017-09-05 6 views
1

Ich habe bemerkt, dass, wenn eine AR Rechnung gespeichert wird, ein Rekord in der Note Tabelle Notiz ID mit der neuen Rechnung der erstellt wird. Kannst du mir sagen, wie das erreicht wird? Ich würde gerne einen meiner Bildschirme dazu bringen, das Gleiche zu tun. Ich denke, dass es eine Art Attribut auf dem DAC oder der Grafik geben muss, aber ich kann es nicht finden. Ich habe das PXNote-Attribut in der NoteID-Spalte in meinem DAC, aber es wird kein Notizendatensatz automatisch erstellt.Wie automatisch Notiz Datensatz in Acumatica erstellen?

Danke für Ihre Hilfe.

Antwort

1

Damit ein Notizdatensatz automatisch erstellt wird, wenn ein neuer Elterndatensatz gespeichert wird, sollte die statische Methode PXNoteAttribute.GetNoteID<Field>(PXCache cache, object data) aufgerufen werden, wenn der Elterndatensatz in den Cache eingefügt wird.

Zum Beispiel Hinweis Datensatz automatisch erstellt, wenn ein neues Lagerware gespeichert wird, die Sie RowInserted Handler für die InventoryItem DAC abonnieren sollten und rufen PXNoteAttribute.GetNoteID<Field>(...):

public class InventoryItemMaintExt : PXGraphExtension<InventoryItemMaint> 
{ 
    public void InventoryItem_RowInserted(PXCache sender, PXRowInsertedEventArgs e) 
    { 
     var noteCache = Base.Caches[typeof(Note)]; 
     var oldDirty = noteCache.IsDirty; 
     PXNoteAttribute.GetNoteID<InventoryItem.noteID>(sender, e.Row); 
     noteCache.IsDirty = oldDirty; 
    } 
} 

Der Code-Snippet oben kann in integriert werden Fast jede benutzerdefinierte BLC mit ein paar einfachen Änderungen, um InventoryItem durch einen benutzerdefinierten DAC zu ersetzen.

+0

Dank Ruslan! Dies half mir dabei, eine CRAktivität mit einem benutzerdefinierten DAC-Element zu verknüpfen. –

Verwandte Themen