Zum Inhalt

Ö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

Siehe auch