- Überblick
- Textfeld (Callout)
- Komplexe Szenarien
- Credentials
- Data Service
- Versionshinweise
- Über das Data Service-Aktivitätspaket
- Projektkompatibilität
- Entitätsdatensatz erstellen
- Entitätsdatensatz löschen
- Entitätseintrag nach ID abrufen
- Entitätsdatensätze abfragen
- Entitätsdatensatz aktualisieren
- Datei in Datensatzfeld hochladen
- Datei aus Datensatzfeld herunterladen
- Datei aus Datensatzfeld löschen
- Mehrere Entitätsdatensätze erstellen
- Mehrere Entitätsdatensätze aktualisieren
- Mehrere Entitätsdatensätze löschen
- Formular
- Versionshinweise
- Projektkompatibilität
- Echtzeitformulare
- Aktualisieren von Formulardaten
- Ausführen von Formularen mit JavaScript
- Anpassen von Formularen mit CSS
- Bedingte Komponenten
- Hinzufügen mehrerer Komponenten in derselben Zeile in „Spalten
- Verwenden der Datentabellenkomponente
- Datei-/Ordnerpfad abrufen
- Lesen von Zellenwerten aus einer Datenrasterkomponente
- Anzeigen von PDF-Dateien
- Anzeigen von Bildern in Formularen
- Scrollen durch Datenraster
- Verwenden von Dev-Tools mit Formularen
- Werte von Formularkomponenten berechnen
- Verwalten von Datumsangaben in Formularen
- Öffnen von Hyperlinks in Formularen
- Anzeigen einer Standardregisterkarte in Formularen
- Anzeigen der vollständigen Beschriftung einer Komponente
- Suche nach langen Zeichenfolgen in Dropdownlisten
- Über Formulare vor 23.4
- Projektkompatibilität
- Echtzeitformulare
- Dynamische Kontrollkästchen
- Bedingte Dropdownmenüs
- Anzeigen einer Standardregisterkarte
- Anzeigen von Bildern
- Anzeigen von PDF-Dateien
- Anzeigen der vollständigen Beschriftung
- Dynamische HTML-Elemente
- Verwalten von Datumsangaben
- Suchen nach langen Zeichenfolgen in Dropdownmenüs
- Anpassen von Formularen mithilfe lokaler CSS-Dateien
- Ausführen des Do-Blocks bei Änderung des Kontrollkästchens
- Anpassen der Spaltenbreite
- Aktualisieren von Formulardaten
- Zurücksetzen der Erfassungsdaten
- Erweiterte Logik
- Ausführen des Do-Blocks bei Änderung der Dropdown-Option
- Lesen von Zellenwerten aus einer Datenrasterkomponente
- Bedingte Komponenten
- Scrollen durch Datenrasterkomponenten
- Verwenden der Rasterkomponente
- Entwicklungstools
- Berechneter Wert
- Dynamische Dropdownmenüs
- Wechseln von Registerkarten mit Schaltflächenklick
- Öffnen von Hyperlinks innerhalb des Formulars
- FTP
- IPC
- Persistenz
- Versionshinweise
- Projektkompatibilität
- Über das Persistenz-Aktivitätspaket
- Massenformulardesigner
- Start Job And Get Reference
- Wait for Job and Resume
- Add Queue Item And Get Reference
- Wait For Queue Item And Resume
- Wait for Form Task and Resume
- Nach Verzögerung fortsetzen
- Assign Tasks
- Create External Task
- Wait For External Task and Resume
- Complete Task
- Forward Task
- Get Form Tasks
- Get Task Data
- Add Task Comment
- Update Task Labels
- App-Aufgabe erstellen
- Wait For App Task and Resume
- Arbeiten mit App-Aufgaben
- Erstellen Ihrer ersten Formularaktion
- Erweiterte Steuerelemente für Dropdownmenüs
- Einbetten von Objekten in Formularaktionen
- Zulassen, dass Benutzer Dateien in den Speicher-Bucket hochladen
- Hinzufügen erweiterter Logik mit Java-Skript
- Festlegen einer Standardregisterkarte
- Entfernen der Schaltfläche „Löschen“ aus dem Bearbeitungsraster mithilfe von benutzerdefiniertem CSS
- Anpassen von Bearbeitungsrastervorlagen
- Verwenden von Schaltflächen zum Auslösen benutzerdefinierter Logik
- Verwenden eines externen Formularlayouts
- Dynamisches Erweitern von Formularkomponenten zur Laufzeit
- Beispielworkflows
- Automation Ops-Pipelines
- System
- Versionshinweise
- Über das Systemaktivitätspaket
- Projektkompatibilität
- RegEx Builder-Assistent
- Ist Textübereinstimmung
- Übereinstimmende Muster finden
- Modify Text
- Modify Date
- Replace Matching Patterns
- Text to Left/Right
- Datenspalte hinzufügen (Add Data Column)
- Datenzeile hinzufügen (Add Data Row)
- Datentabelle erstellen (Build Data Table)
- Datentabelle leeren (Clear Data Table)
- Zeilenobjekt erhalten (Get Row Item)
- Update Row Item
- Datentabelle zusammenführen (Merge Data Table)
- Datentabelle ausgeben (Output Data Table)
- Datenspalte entfernen (Remove Data Column)
- Datenzeile entfernen (Remove Data Row)
- For Each Row in Data Table
- Generate Data Table From Text
- Create List
- Append Item to List
- Read List Item
- Listenelement aktualisieren
- Protokollfelder hinzufügen (Add Log Fields)
- Auskommentieren/Deaktivierte Aktivitäten
- Kommentar (Comment)
- Change Type
- Protokollmeldung
- Protokollfelder entfernen (Remove Log Fields)
- Com-Methode aufrufen (Invoke Com Method)
- Wert formatieren (Format Value)
- Datentabelle nachschlagen (Lookup Data Table)
- Datentabelle filtern (Filter Data Table)
- Datentabelle sortieren (Sort Data Table)
- Doppelte Zeilen entfernen (Remove Duplicate Rows)
- Datentabellen verbinden (Join Data Tables)
- Berichtsstatus
- Zeile anhängen (Append Line)
- Compress/Zip Files
- Datei kopieren (Copy File)
- Copy Folder
- Create Folder
- Datei erstellen (Create File)
- Löschen
- Datei vorhanden (File Exists)
- Folder Exists
- Extract/Unzip Files
- Wait for Download
- Dateiänderungsauslöser (File Change Trigger)
- For Each File In Folder
- For Each Folder in Folder
- Delete File
- Delete Folder
- Datei verschieben (Move File)
- Move Folder
- Rename Folder
- Rename File
- Pfad vorhanden (Path Exists)
- Textdatei lesen (Read Text File)
- Textdatei schreiben (Write Text File)
- Get File Info
- Get Folder Info
- Prozesse erhalten (Get Processes)
- Benutzername/Kennwort abrufen
- Prozess beenden (Kill Process)
- Signal (Beep)
- Umgebungsordner erhalten (Get Environment Folder)
- Umgebungsvariable erhalten (Get Environment Variable)
- Power Shell aufrufen (Invoke Power Shell)
- Eingabedialog (Input Dialog)
- Nachrichtenbox (Message Box)
- Browse for file
- Nach Ordner suchen
- Invoke VBScript
- Process End Trigger
- Process Start Trigger
- File Change Trigger v3
- Trigger-Scope
- Repeat Number Of Times
- Text in Groß-/Kleinschreibung
- Set Environment Variable
- Für jede/n (For Each)
- Break / Exit Loop
- Bereich erneut versuchen (Retry Scope)
- Auf wahr prüfen (Check True)
- Auf falsch prüfen (Check False)
- Workflow Placeholder
- Workflow-Datei aufrufen (Invoke Workflow File)
- Interaktiven Workflow starten (Launch Workflow Interactive)
- Code aufrufen (Invoke Code)
- Continue / Skip Current
- Multiple Assign
- Prozess abrufen
- Run Parallel Process
- While
- Ausführen während (Do While)
- Repeat Number Of Times
- Alarm auslösen (Raise Alert)
- Orchestrator HTTP-Anfrage (Orchestrator HTTP Request)
- Element erhalten (Get Asset)
- Get Credential / Get Orchestrator Credential
- Element einstellen (Set Asset)
- Anmeldedaten einstellen (Set Credential)
- Jobs erhalten (Get Jobs)
- Get Current Job Info
- Job starten (Start Job)
- Job anhalten (Stop Job)
- Warteschlangenobjekt hinzufügen (Add Queue Item)
- Transaktionsobjekt hinzufügen (Add Transaction Item)
- Warteschlangenobjekt löschen (Delete Queue Items)
- Warteschlangenobjekte erhalten (Get Queue Items)
- Transaktionsobjekt erhalten (Get Transaction Item)
- Transaktionsobjekt verschieben (Postpone Transaction Item)
- Transaktionsfortschritt setzen (Set Transaction Progress)
- Transaktionsfortschritt einstellen (Set Transaction Status)
- Soll anhalten (Should Stop)
- Warteschlangenobjekt (Wait Queue Item)
- Massenhaftes Hinzufügen von Warteschlangenobjekten
- Speichertext schreiben
- Speicherdatei hochladen
- Speicherdateien auflisten
- Speichertext lesen
- Speicherdatei herunterladen
- Speicherdatei löschen
- Benutzerdefinierte Eingabe (Custom Input)
- Append Item to Collection
- Build Collection
- Collection to DataTable
- Exists In Collection
- Filter Collection
- Merge Collections
- Remove From Collection
- Reset Timer
- Resume Timer
- Start Timer
- Stop Timer
- Timeout Scope
- Manual Trigger
- When New Item Added to Queue
- Lokale Trigger anhalten
- Lokale Trigger ausführen
- Trigger wiederholen
- Zeit-Trigger
- Lokalen Trigger deaktivieren
- Lokalen Trigger aktivieren
- Benachrichtigung über geänderte globale Variable
- Trigger für globale Variablenänderung
- Text extrahieren
- Suchen und ersetzen
- Zurückgeben
- Extract Date and Time from Text
- Groß-/Kleinschreibung für Text ändern
- Add or Subtract from Date
- Datei von URL herunterladen
- Datum als Text formatieren
- Text aufteilen
- Text kombinieren
- Datenzeile hinzufügen (Add Data Row)
- AddQueueItem
- Transaktionsobjekt hinzufügen (Add Transaction Item)
- Zeile anhängen
- BulkAddQueueItems
- Datentabelle leeren (Clear Data Table)
- ZIP-Dateien komprimieren
- Datei kopieren
- Create File
- Create Folder
- Delete File or Folder
- Delete Queue Items
- Speicherdatei löschen
- Speicherdatei herunterladen
- ExtractUnzipFiles
- Datentabelle filtern (Filter Data Table)
- Element erhalten (Get Asset)
- Anmeldedaten erhalten (Get Credential)
- GetJobs
- Get Queue Item
- GetQueueItems
- Ressource für lokalen Pfad abrufen
- Zeilenobjekt erhalten (Get Row Item)
- Transaktionsobjekt erhalten (Get Transaction Item)
- Prozess abrufen
- Datentabellen verbinden (Join Data Tables)
- Speicherdateien auflisten
- Datentabelle nachschlagen (Lookup Data Table)
- Datentabelle zusammenführen (Merge Data Table)
- Move File
- Orchestrator HTTP-Anfrage (Orchestrator HTTP Request)
- OutputDataTable
- Pfad vorhanden (Path Exists)
- Transaktionsobjekt verschieben (Postpone Transaction Item)
- Speichertext lesen
- Textdatei lesen
- Datenspalte entfernen (Remove Data Column)
- Doppelte Zeilen entfernen (Remove Duplicate Rows)
- Ersetzen (Replace)
- Element einstellen (Set Asset)
- Anmeldedaten einstellen (Set Credential)
- SetTransactionProgress
- Transaktionsfortschritt einstellen (Set Transaction Status)
- Datentabelle sortieren (Sort Data Table)
- Job starten (StartJob)
- Job anhalten (StopJob)
- Update Row Item
- Speicherdatei hochladen
- Warteschlangenobjekt (Wait Queue Item)
- Speichertext schreiben
- Textdatei schreiben
- Tests
- Versionshinweise
- Projektkompatibilität
- Über das Testing-Aktivitätspaket
- Testfallname nicht eindeutig innerhalb des Projekts
- Verstoß gegen Namenskonvention für Testfälle
- Fehlende Überprüfungen innerhalb des Testfalls
- Nicht getestete Workflows
- Test Manager verbunden
- Nicht verwendete Pseudo-Objekte
- Testfall ohne Anmerkungen
- Testfall/Workflow zu komplex
- Testfall enthält zu viele Verzweigungen.
- Projekteinstellungen
- Add Test Data Queue Item
- Adresse
- Attach Document
- Bulk Add Test Data Queue Items
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- Gegebener Name
- Nachname
- Random Date
- Zufällige Zahl
- Random String
- Random Value
- Verify Control Attribute
- Verify Expression
- Verify Expression with Operator
- Verify Range
- Adresse
- Add Test Data Queue Item
- Attach Document
- Bulk Add Test Data Queue Items
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- GivenName
- Nachname
- Random Date
- Zufällige Zahl
- Random String
- Random Value
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- Verify Expression
- Verify Expression with Operator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- Verify Range
- Workflow-Ereignisse
- Workflow Foundation
- Über das Workflow Foundation-Aktivitätspaket
- Assign / Set Variable Value
- Verzögerung (Delay)
- Wenn (If)
- Andernfalls wenn
- Sequence / Group
- Umschalten (Switch)
- Flussentscheidung (Flow Decision)
- Fluss umschalten (Flow Switch)
- Flowchart
- Try Catch
- State Machine
- Status (State)
- Übergang (Transition)
- Endzustand (Final State)
- Single Excel Process Scope
- No Persist Scope
- Cancellation Scope
- Zeile schreiben (Write Line)
Dynamische Kontrollkästchen
In diesem Tutorial wird Schritt für Schritt gezeigt, wie dynamische Kontrollkästchen konfiguriert und verwendet werden. Dynamische Kontrollkästchen ermöglichen es Ihnen, eine gesamte Liste von Dateneinträgen anzuzeigen und je nach Anwendungsfall einen oder mehrere auszuwählen. Dynamische Kontrollkästchen werden mit der Komponente Select Boxes im Formular-Designer erstellt.
Tutorial
So verwenden Sie diese Funktion:
-
Fügen Sie Ihrem Workflow eine Invoke Code -Aktivität hinzu. Hier erstellen Sie eine Liste von Zeichenfolgen, die die Auswahlmöglichkeiten enthält, die dynamisch im Formular angezeigt werden.
-
Klicken Sie auf Argumente bearbeiten und erstellen Sie ein Argument mit dem Namen, in diesem Beispiel
choiceList
. Legen Sie die Richtung alsIn/Out
und den Typ alsList<String>
. Drücken Sie im Feld WertCTRL + k
auf Ihrer Tastatur und erstellen Sie eineList<String>
-Variable mit dem NamenGchoiceList
. Diese Variable enthält die Auswahlmöglichkeiten, die Sie dynamisch anzeigen möchten. -
Klicken Sie auf Code bearbeiten und geben Sie das Initialisierungscode-Snippet ein. Stellen Sie sicher, dass Sie die richtige Syntax verwenden, abhängig von Ihrer gewählten Programmiersprache (C# oder VB.NET). Um beispielsweise vier Auswahlmöglichkeiten für das Argument
choiceList
zu definieren, verwenden Sie den folgenden Code:choiceList = new List<string>(); choiceList.Add("Choice1"); choiceList.Add("Choice2"); choiceList.Add("Choice3"); choiceList.Add("Choice4");
choiceList = new List<string>(); choiceList.Add("Choice1"); choiceList.Add("Choice2"); choiceList.Add("Choice3"); choiceList.Add("Choice4");
-
-
Fügen Sie Ihrem Workflow eine Aktivität „ Create Form “ hinzu.
- Öffnen Sie das FormFieldsCollection- Eigenschaftsfenster.
- Erstellen Sie einen
Dictionary<String,Boolean>
-Argumenttyp. Nennen Sie eschoices
, legen Sie die Richtung alsIn/Out
und den Wert alschoices
-Variable fest. Dieses Argument ordnet die im Formular ausgewählten Optionen wieder dem Workflow zu. - Erstellen Sie einen
List<String>
-Argumenttyp. Nennen Sie eschoices_selectboxes
, legen Sie die Richtung alsIn/Out
und den Wert alsGchoiceList
-Variable fest. Dieses Argument macht die Liste, die die Auswahlmöglichkeiten (Gchoicelist
) enthält, dynamisch, indem es das Suffix_selectboxes
hinzufügt. -
Aktivieren Sie GenerateInputFields. Dadurch kann das Formular basierend auf den im Eigenschaftsfenster FormFieldsCollection zugeordneten Argumenten automatisch eine Select Boxes -Komponente innerhalb des Formulars generieren.
Hinweis: Das Formular bestimmt automatisch, dass es sich um eine Reihe dynamischer Kontrollkästchen handelt, und zeigt sie entsprechend an.Diese Kontrollkästchen können dann später im Formular-Designer bearbeitet werden (z. B. Festlegen der minimalen oder maximalen Auswahlmöglichkeiten, die ein Benutzer treffen kann).
-
Fügen Sie Ihrem Workflow eine For Each- Aktivität hinzu. Diese Aktivität durchläuft jede Auswahlmöglichkeit in der dynamischen Liste und ruft den Namen und Wert für jede Auswahlmöglichkeit ab.
- Wählen Sie in der Eigenschaft TypeArgument
System.Collections.Generic.KeyValuePair<System.String,System.Boolean>
aus. - Geben Sie im Textkörper der Aktivität
keyVal
in das Feld ForEach ein. - Übergeben Sie im Textkörper der Aktivität die Variable
choices
im Feld In .
- Wählen Sie in der Eigenschaft TypeArgument
- Fügen Sie dem Textkörper der Aktivität „ For Each “ eine Aktivität „ Log Message “ hinzu. Diese Aktivität wird verwendet, um die von einem Benutzer im Formular ausgewählten Optionen auszugeben.
- Legen Sie die Protokollebene als
Info
. - Übergeben Sie im Eigenschaftsfeld Nachricht den folgenden Ausdruck:
keyVal.Key +":" + keyVal.Value
.
- Legen Sie die Protokollebene als
Ergebnis
GchoiceList
enthalten sind. In diesem Beispiel wählt ein Geschäftsbenutzer die erste und zweite Option innerhalb des Formulars aus. Wenn das Formular gesendet wird, kehrt es in den Workflow zurück, es zeigt die vom Benutzer ausgewählten Optionen als True
und diejenigen, die nicht als False
ausgewählt wurden, im Ausgabe -Panel an.
Laden Sie das XAML-Beispielherunter, um den vollständigen Workflow zu überprüfen oder um eine zukünftige Referenz zu haben