2017-12-15 28 views
0

ich schätzen, wenn Sie könnten mir eine Hilfe, die wie für das Pop-up-Fenster mit dem Callback-Ereignis zu setzen, ist der Umstand,:Wie kann ich das Callback-Ereignis für das Popup-Fenster festlegen?

Ich will nicht Benutzer APInvoice direkt in meinem Fall erstellen können, so habe ich die Benutzerdefinierte Seite "Dokumenteingabe", damit der Benutzer die Rechnungsdaten vorübergehend eingeben kann. Dann genehmigen die Administratoren und klicken auf die Schaltfläche "Create New Bill", um das Fenster "New Bill" mit den Daten aus dem übergeordneten Dokument zu öffnen. Nachdem der Administrator die Rechnung abgeschlossen hat, klickt er auf die Schaltfläche "Speichern & Schließen". Daraufhin wird die Popup-Seite geschlossen und das Ereignis auf der übergeordneten Seite ausgelöst. Meine Beschreibung ist kompliziert, aber die Logik ist klar und einfach wie die folgende Grafik, können Sie mir bitte sagen, wie ich das Callback-Ereignis einstellen kann? Vielen Dank.

enter image description here

Antwort

1

Ihre Aktion Schaltfläche Ereignishandler PXButton Verzieren mit OnClosingPopup Eigenschaft Attribut:

[PXButton(OnClosingPopup = PXSpecialButtonType.Cancel)] 
[PXUIField(DisplayName = "View Document Graph")] 
public virtual IEnumerable ViewDocumentGraph(PXAdapter adapter) 
{ 
} 

können Sie entweder:

PXSpecialButtonType.Cancel 

Oder:

PXSpecialButtonType.Refresh 

Abbrechen macht das Dokument ungültig und ruft es ab und bindet es erneut. Es ist eine gute Wahl, wenn das Popup das übergeordnete Fensterdokument ändert. Dies entspricht dem Drücken der Abbrechen-Taste.

Beachten Sie, dass diese Funktionalität auf Chrome Navigator besser unterstützt wird, bemerkte ich einige Fehler mit Edge.

+0

Nach meinem Wissen gibt es keinen direkten Rückruf, also würde ich vorschlagen, dass das Popup-Fenster die Daten des Elternfensters ändert, auch wenn es nicht notwendig ist. Mit OnClosingPopup erzwingen Sie, dass der DAC-Datensatz aktualisiert wird, damit Sie Änderungen des DAC-Felds erkennen können. –

+0

In Ihrem speziellen Fall könnten Sie ein benutzerdefiniertes Feld im DAC-Datensatz des übergeordneten Fensters hinzufügen, um die APInvoice ID zu speichern. Wenn Sie das untergeordnete Fenster APInvoiceEntry öffnen, können Sie den übergeordneten DAC-Datensatz an das APInvoiceEntry-Diagramm übergeben. Erstellen Sie eine APInvoiceEntry-Diagrammerweiterung und verwenden Sie das RowPersisted-Ereignis, um die APInvoice-ID des übergeordneten DAC-Datensatzes festzulegen. –

+0

Hallo @HB_ACUMATICA, ja, ich habe die Dokument-ID an die neue APInvoice beim Öffnen der Popup-Seite übergeben, vielen Dank für Ihren Vorschlag und wird Ihre Antwort direkt nach dem Testen taggen. – ukalpa

Verwandte Themen