Öffentliche Flow-Path-Prozeduren
Öffentliche Flow-Path-Prozeduren
Öffentliche Prozeduren zum Erstellen, Senden, Weiterleiten und Verfolgen von Flow-Path-Einträgen (Fragen, Informationen, Aufgaben) mit unterstützenden UI- und Dienstprogrammfunktionen. Implementiert in Codeunit 5492182 "SIM_DVS Mgt.", bieten diese Prozeduren Entwicklern die zentralen Bausteine zur Verwaltung von Flow-Path-Einträgen.
Ausgewählte Prozeduren (Beispiele)
| Prozedur | Beschreibung |
|---|---|
CreateNewQuestion(…) |
Erstellt einen neuen Frage-Eintrag (baut den SIM_DVS Entry auf, setzt Felder wie Kategorie, Fälligkeitsdatum, Priorität und speichert ihn). |
CreateNewInformation(…) |
Erstellt einen neuen Informations-Eintrag (gleiches Muster wie Frage, aber für Informations-Einträge). |
CreateNewTask(…) |
Erstellt einen neuen Aufgaben-Eintrag (inkl. optionaler Unteraufgaben). |
CreateNew*FromTemplate(…) |
Erstellt Einträge aus einer Vorlage (füllt Inhalte aus Katalog/Vorlage vor). |
Create*FreeText(…) |
Erstellt Einträge direkt aus Freitext (ohne Vorlage). |
CreateTempCatalogType(…) / CreateTempUserSetup(…) |
Erstellt temporäre Datensätze, die beim Vorbereiten von Einträgen oder UI-Dialogen verwendet werden (temporäre Puffer). |
CreateDistinctEntries(…) |
Erstellt eindeutige Einträge aus einer Auswahl (entfernt Duplikate / konvertiert Auswahl in Einträge). |
Send* / Send*ToNo(…) |
Sendet Einträge an Empfänger – entweder per Datensatz oder interner Nummer. |
SendAnswersToRecipient / SendRejectionsToRecipient |
Sendet Antworten oder Ablehnungen an Empfänger. |
SendTask*ToRecipient(…) |
Benachrichtigt Empfänger über Statusänderungen von Aufgaben (genehmigt, unvollständig, in Bearbeitung, abgeschlossen usw.). |
SendAnswersToCreator / SendNotedToCreator |
Benachrichtigt Ersteller über eingehende Antworten, Notizen oder Aufgabenereignisse. |
Resend*ToNo(…) |
Sendet zuvor erstellte Einträge erneut (erneuter Versand). |
Forward* |
Leitet einen bestehenden Eintrag an einen anderen Empfänger weiter (erstellt neue Historien-/Empfängerzeilen). |
Open*Count / Finished*Count |
Gibt die Anzahl aktuell offener bzw. abgeschlossener Einträge zurück (für Badges, Kacheln usw.). |
IsApproveAllowed(…) |
Prüft, ob die Genehmigungsaktion für den angegebenen Eintrag/Benutzer erlaubt ist. |
EntryAlreadyExists(…) |
Verhindert Duplikate, indem geprüft wird, ob ein gleichwertiger Eintrag bereits existiert. |
CreateLink(…) |
Erstellt eine Verknüpfung zwischen einem Eintrag und einem zugehörigen Datensatz (z. B. Verkaufsauftrag). |
WriteAsText / Fill* |
Hilfsroutinen zum Formatieren oder Füllen von Listen/Antworten für UI oder Export. |
ReceiverChartDrillDown |
UI-Helfer: Öffnet Drilldown-Seiten oder Diagramme für einen Empfänger. |
GetPageID und viele Get*PageID() |
Gibt Seiten-IDs für verschiedene Karten/Lookups zurück, die in der UI verwendet werden. |
PageRun |
Generischer Helfer zum Öffnen/Ausführen einer Seite anhand ihrer ID mit vorbereiteten Parametern. |
Verwendung dieser Prozeduren
Öffentliche Prozeduren aus Codeunit 5492182 "SIM_DVS Mgt." können in AL-Objekten (Pages, Codeunits, Reports) aufgerufen werden, indem die erforderlichen Parameter übergeben werden. Diese Prozeduren werden typischerweise von Pages/Actions oder Workflows aufgerufen, um Flow-Path-Einträge zu erstellen, zu senden oder zu verwalten.
Beispiel:
GlobalCodeunitSIMDVSMgt.CreateNewInformation(
GlobalEntryNoInteger, // Nummer des DVS-Eintrags
GlobalInformationCatalogCode, // Katalogcode für den Informationstyp
GlobalSelectionRecordSIMDVSCatalogType.Type::Information, // Eintragstyp-Enum
GlobalSelectionRecordSIMDVSCatalogType."Line No.", // Katalogzeilennummer
GlobalEnumSIMDVSRecipientType, // Empfängertyp-Enum
GlobalRecipientCode, // Empfängercode (Benutzer oder Team)
GlobalRecordId, // ID des zugehörigen Datensatzes
GlobalPageNoInteger, // Seiten-ID für UI-Navigation
GlobalSelectionRecordSIMDVSCatalogType.LoadFullText(), // Bool: vollständigen Text aus Katalog laden
LocalRecordSIMDVSFieldLink."Target Field No.", // Optional: Zielfeldverknüpfung
GlobalDueDate, // Optionales Fälligkeitsdatum
GlobalSelectionRecordSIMDVSCatalogType.Critical // Optionales Kritisch-Flag
);
Hinweise:
- Nur Parameter übergeben, die für das jeweilige Szenario relevant sind; einige sind je nach Eintragstyp optional.
- Viele
Create*-Prozeduren teilen sich eine ähnliche Struktur (Question,Information,Task), daher ist das Verständnis einer davon ausreichend, um die anderen zu verwenden. - Öffnen Sie die Codeunit, um vollständige Prozedursignaturen, Parameter und Funktionsweise einzusehen.
Empfohlene Kurzreferenz für Flow-Path-Dokumentation
- Einträge erstellen:
CreateNewQuestion,CreateNewInformation,CreateNewTask - Aus Vorlage erstellen:
CreateNew*FromTemplate - Freitext-Erstellung:
Create*FreeText - Senden / erneut senden / weiterleiten:
Send*,Resend*,Forward* - Benachrichtigungen:
SendAnswersToRecipient,SendAnswersToCreator,SendTaskCompletedToCreator - Zähler / UI-Helfer:
Open*Count,Finished*Count,ReceiverChartDrillDown,Get*PageID,PageRun - Hilfsprüfungen:
IsApproveAllowed,EntryAlreadyExists,CreateLink