Dialogfenster
Die Codeunit „Common Dialog Management“ (ID: 412), die seit der Version 3.1 von Dynamics NAV vorhanden ist, stellt uns eine entsprechende Funktion bereit, um eine Datei im Windows-System auszuwählen. Dabei wird das von Windows bekannte Dialogfenster genutzt (siehe nachfolgende Abbildung).
In diesem Tutorial werden wir ein neues Feld in der Debitorentabelle hinterlegen und es auf der Debitorenkarte platzieren. Somit können wir pro Debitor einen Pfad zu einer Datei hinterlegen. In unserem Beispiel geht es um den Pfad zu einem Vertragsdokument. Gehe zunächst über den ObjectDesigner in die Tabelle Customer (ID: 18). Dort muss ein neues Textfeld angelegt werden.
Speichere die Änderungen der Tabelle und gehe in die Form „Customer Card“ (ID: 21). Dort platzieren wir das gerade neu angelegte Tabellenfeld.
Markiere nun das Feld und gehe über „Ansicht“ in den „C/AL-Code“ und dort dann in den „OnAssistEdit“-Trigger. In diesem Trigger müssen drei lokale Variablen angelegt werden. Gehe hierzu über „Ansicht“ in die „C/AL Locals“ und lege die folgenden Variablen an:
Name | DataType | Subtype |
---|---|---|
DialogMgt | Codeunit | "Common Dialog Management" |
DialogDefaultFileType | Option (OptionString: " ,Text,Excel,Word,Custom") | |
DialogAction | Option (OptionString: "Open,Save") |
Im Trigger an sich muss der folgende C/AL-Code hinterlegt werden:
"Contract Document":= DialogMgt.OpenFile( 'Vertragsdokument auswählen', "Contract Document", DialogDefaultFileType::Custom, 'PDF-Dateien (*.pdf)|*.pdf|Alle Dateien (*.*)|*.*', DialogAction::Open);
Speichere die Form.
Wenn du nun die Form öffnest wird über den AssistButton des Feldes das Dialogfenster geöffnet.