Daten zuweisen

Prev Next

Mit dieser Aktivität liest ein Workflow Daten direkt aus einer Quelle aus und schreibt sie in ein definiertes Ziel hinein. Damit können automatische Schritte durchgeführt werden, die keine Aktion durch einen Benutzer erfordern.

Geben Sie der Aktivität einen Namen, zum Beispiel "Rechnungsdaten wiederkehrend".

Im Bereich in der Mitte von diesem Dialog wird Ihnen jede hinzugefügte Zielzuweisung mit einer eigenen Zeile angezeigt. Links befinden sich die Spalten Zieltyp und Feld/Variable für das Ziel der Daten sowie rechts die beiden Spalten Eintragstyp und Eintrag für die Datenquelle.

Sobald eine Datenzuweisung hinzugefügt wurde, werden Auswahlmöglichkeiten für den Zieltyp angezeigt.

Zieltyp / Feld / Variable

Das Ziel ergibt sich aus der Kombination von Zieltyp und Feld/Variable. Welche Zieltypen mit welchen Feldern/Variablen verfügbar sind, entnehmen Sie der folgenden Übersicht:

Zieltyp

Feld/Variable

Bedeutung

Einfügebereich auf dem Dokument

Angezeigt werden die Einfügebereiche von Formularen, die im Vorlagendesigner von DocuWare Forms angelegt worden sind.

Workflow-Aktivität schreibt den Wert in das Formular. Wenn der Einfügebereich mit einem Formularfeld verknüpft ist, werden ggf. vorhandene Werte überschrieben.

Indexdaten des Dokuments

Angezeigt werden die Indexfelder vom Dokument im Workflow.

Workflow-Aktivität indexiert das Dokument im Workflow oder ändert seine Indexdaten.

Globale Workflow-Variable

Angezeigt werden die Namen der Variablen, die Sie im Workflow Designer angelegt haben, z.B. Rechnungsnummer

Workflow-Aktivität füllt Werte in eine globale Variable, die dann in mehreren Workflow-Schritten verwendet werden kann.

Archiv

Sie öffnen den Dialog zur Auswahl eines beliebigen Archivs und Inexfelds. Dokumente können per SQL spezifiziert werden.

Indexiert ein Dokument im Workflow oder ändert seine Indexdaten. Pro Datenzuweisung kann nur ein Indexfeld geändert werden.

Indextabelle – Mehrere Spalten

Angezeigt werden die Indextabellen vom aktuellen Workflow-Dokument.

Eergänzt den Inhalt einer Indextabelle des aktuellen Workflow-Dokuments oder ersetzt ihn komplett oder spaltenweise.

Indextabelle – Einzelne Spalte

Angezeigt werden die Spalten der Indextabellen vom aktuellen Workflow-Dokument.

Die Workflow-Aktivität ergänzt eine Indextabellenspalte des aktuellen Workflow-Dokuments oder ersetzt sie komplett oder zeilenweise.

Beim Zuweisen von Daten zwischen Workflow-Variablen und Indexfeldern eines Archivs werden nur kompatible Feldtypen angezeigt. So können Sie zum Beispiel eine numerische Variable nur einem numerischen Indexfeld zuweisen. Wenn Sie bei der Zuweisung von Daten deren Typ konvertieren möchten, können Sie dafür folgende VBA-Funktionen nutzen: CDate, CDec, CInt, CStr. Wenn Sie VBA-Funktionen nutzen möchten, lesen Sie auch die Informationen zum Workflow Expression Parser.

Eintragstyp / Eintrag

Um die Datenquelle festzulegen, wählen Sie in der Drop-down-Liste den Typ des Eintrags aus. Welche Eintragstypen mit welchen Einträgen verfügbar sind, entnehmen Sie der Übersicht über die Datenquellen.

Eintragstyp

Eintrag

Bedeutung

Fester Eintrag

Text

Die Workflow-Aktivität schreibt den eingegebenen Wert in das Ziel.

Workflow- Systemvariable

Angezeigt werden die Namen der Workflow-Systemvariablen z.B. der letzte Entscheider

Schreibt einen Wert aus einer Systemvariable in das Ziel

Globale Workflow-Variable

Angezeigt werden die Namen der Variablen, die Sie im Workflow Designer angelegt haben, z.B. Rechnungsnummer

Schreibt einen Wert aus einer globalen Variable in das Ziel

Arithmetischer Ausdruck

Sie öffnen den Dialog zur Bestimmung eines arithmetischen Ausdrucks.

Schreibt einen benutzerspezifischen Wert in das Ziel, z.B. eine Kombination verschiedener Variablen

Indexeintrag des Dokuments

Indexfelder des mit dem aktuellen Workflow verknüpften Archivs

Schreibt Indexdaten aus dem aktuellen Workflow-Dokument in das Ziel

Lokale Datenverbindung (Cloud) Externe Daten (On-premises)

Sie öffnen den Dialog zur Spezifizierung von Datenbank und Tabelle der externen Daten

Schreibt Daten aus einer externen Quelle in das Ziel. Bei DocuWare On-premises lautet der Eintragstyp Externe Daten, bei DocuWare Cloud Lokale Datenverbindung.

Archiv

Dialog zur Auswahl eines beliebigen Archivs, Indexfelds oder Dokuments

Die Workflow-Aktivität schreibt Indexdaten aus dem ausgewählten Archiv in das Ziel, zum Beispiel in Indextabellen: Gleichen Sie die Einzelposten einer Indextabelle mit Einträgen eines Archivs ab oder übernehmen Sie Werte aus Datensätzen und Dokumenten des Archivs.

Indextabelle

Sie öffnen den Dialog zur Spezifizierung einer Indextabelle des aktuellen Workflow-Dokuments.

Schreibt Daten aus einer Indextabelle in das Ziel. Steht nur beim Zieltyp Indextabelle zur Verfügung.

Beachten Sie in diesem Zusammenhang auch die Hinweise zum Vergleich von Variablen in Bedingungen.

Tabellendaten automatisch indexieren

Sie können die Indextabelle von einem Dokument automatisch füllen oder bearbeiten, zum Beispiel bei der wiederkehrenden Rechnungsstellung oder der automatischen Aufbereitung von existierenden Daten.

Das Quelldokument für die Daten kann sich im selben oder einem anderen Archiv oder in einer externen Datenquelle befinden. Mit der externen Datenquelle verbinden Sie sich über den Eintragstyp Externe Daten (DocuWare On-premises), bzw. über den Eintragstyp Lokale Datenverbindung (DocuWare Cloud).

Quell-Tabelle komplett übernehmen

Um Daten von einer Indextabelle komplett in eine andere zu übernehmen, wählen Sie als Ziel für die Datenzuweisung den Eintrag Indextabelle > Mehrere Spalten aus.

Wenn für die Datenzuweisung Ersetzen aktiviert ist, werden alle vorhandenen Zeilen in der Zieltabelle entfernt und durch neue Zeilen ersetzt. Andernfalls werden die Zeilen als neue Zeilen angehängt (siehe dazu auch die Schritte 5 und 6). Das Vorgehen ist für beide Optionen gleich:

  1. Wählen Sie als Ziel die Indextabelle, in die Sie die Daten übertragen möchten und als Quelle den Eintragstyp Indextabelle.

  2. Konfigurieren Sie nun die Quelle, indem Sie auf die Schaltfläche Bearbeiten auf der rechten Seite klicken.

  3. Wählen Sie das Archiv und die Indextabelle aus. Im Feld darunter geben Sie bei Bedarf einen Filter an, indem Sie eine WHERE-Klausel anwenden, um die Quelleinträge einzugrenzen.

  4. Auf dem Tab Zeilen aktivieren Sie die Option Alle Zeilen in fester Reihenfolge übernehmen.

  5. Auf dem Tab Spalten ordnen Sie jede Spalte der Quelle jeweils einer Spalte der Quelle der Zieltabelle zu.
    Wenn die Option Ersetzen für die Zuweisung nicht aktiviert ist, werden die Daten aus der Quelltabelle an die Zieltabelle angehängt (siehe auch Punkt 6).
    Ohne_Kopieren alle
    Wenn dagegen die Option Ersetzen für die Zuweisung aktiviert ist, werden die Daten der Zieltabelle mit den Daten der Quelltabelle ersetzt (siehe Punkt 6):
    Ohne_Ersetzen_alle
    Im folgenden Beispiel sind alle Spalten der Zieltabelle zugeordnet, aber einige Spalten in der Quelle sind leer. Im Ziel werden auch die leeren Spalten übernommen und die vorhandenen Daten gelöscht.

    Wenn nur eine Spalte von Ziel und Spalte zugeordnet ist, werden die nicht zugeordneten Spalten im Ziel geleert:
    Ohne_Ersetzen_1 Spalte zuegeordnet
    Deshalb verwenden Sie für die Übertragung einzelner oder mehrerer Spalten aus der Quelltabelle die Option Mit Matchcode zusammenstellen, um Datenverlust zu vermeiden – siehe dazu den nächsten Punkt.

  6. Schließen Sie die Konfiguration mit OK ab. Im letzten Schritt geben Sie an, ob Sie die vorhandenen Zeilen in der Zieltabelle ersetzen möchten.

  7. Der Zeilen-Filter ist in diesem Fall nicht verfügbar, da alle Werte übertragen werden.

Einzelne Werte aus der Quelltabelle übernehmen

Ziel ist wie im Schritt zuvor Indextabelle  > Mehrere Spalten. Diesmal wählen Sie jedoch gezielt einzelne Werte dadurch aus, dass Sie die Übertragung an Bedingungen knüpfen.

Für die Zusammenstellung der Spalten per Matchcode ist die Option Ersetzen immer aktiviert.

  1. Wählen Sie als Ziel die Indextabelle, in die Sie die Daten übertragen möchten und als Quelle den Eintragstyp Indextabelle.

  2. Konfigurieren Sie nun die Quelle, indem Sie auf die Schaltfläche Bearbeiten auf der rechten Seite klicken.

  3. Wählen Sie das Archiv und die Indextabelle aus. Im Feld darunter geben Sie einen Filter an, indem Sie eine WHERE-Klausel anwenden, um die Quelleinträge einzugrenzen.

  4. Auf dem Tab Zeilen aktivieren Sie die Option Zeilen nach Matchcode zusammenstellen. Geben Sie nun ein oder mehrere Kriterien ein:
    Zum Beispiel:
    Die Zielspalte „Artikelnummer“ ist gleich Quellspalte „Artikelnummer“
    Das heißt: Wenn die Artikelnummer im Ziel und in der Quelle gleich ist, werden die Werte derjenigen Spalten übertragen, die auf dem Tab "Spalten" spezifiziert sind.

  5. Geben Sie eine Sortierreihenfolge an, da bei mehreren Übereinstimmungen der erste Treffer verwendet wird. Wenn zum Beispiel die Artikelnummer in der Quelle doppelt vorhanden ist, wird die Tabelle nach der hier angegebenen Reihenfolge sortiert und davon der Eintrag übertragen.

  6. Auf dem Tab Spalten ordnen Sie mindestens eine Spalte der Quelltabelle einer Spalte der Zieltabelle zu.
    Spalten, die in den Matchcode-Kriterien verwendet werden, können hier nicht zugeordnet werden.
    Anders als bei der Übertragung ohne Verwendung des Matchcodes bleiben diesmal die Werte der nicht zugeordneten Zielspalten unverändert. Dies veranschaulichen folgende Beispiele:
    Der Matchcode ist „Spalte ID ist gleich Spalte ID“. Eine Spalte ist zugeordnet – eine Spalte im Ziel wird ersetzt.
    Mit_1 Spalte
    Im nächsten Beispiel sind zwei Spalten zugeordnet. Dadurch werden zwei Spalten im Ziel ersetzt, die anderen Spalten im Ziel bleiben unverändert:
    Mit_2 Spalte
    Alle Spalten sind zugeordnet, einige Spalten in der Quelle sind leer – die entsprechenden Spalten werden auch im Ziel geleert:
    Mit_alle_leer
    Eine Spalte ist zugeordnet, per Filter werden die Zeilen 1 und 3 für die Übertragung ausgewählt – zur Filterung siehe Punkt 8.
    Mit_einzelne_Zellen

  7. Schließen Sie die Konfiguration der Quelle mit OK ab.

  8. Mit Filtern grenzen Sie die Zeilen ein, in die Werte übertragen werden sollen. Wählen Sie dazu im Filterdialog die Option Nur Zeilen mit diesen Bedingungen wiederholen. Damit werden nur diejenigen Zeilen geändert, für die die Kriterien, die Sie im Bereich Auslöser festlegen, zutreffen.
    Hinweis: Da Sie im Filter auf die Werte der Spalten der Zieltabelle zugreifen, können Sie zum Beispiel festlegen, dass die Spalte "Umsatzsteuer" nur dann befüllt wird, wenn in der Spalte "Steuersatz" nicht "0%" steht.
    Zudem können Sie nach der Systemspalte Zeilennummer filtern. Damit ändern Sie Werte einfacher nur in den gewünschten Zeilen.

Behandlung von NULL-Werten beim Abgleich: Wenn Sie die Zuordnung von Tabellendaten nach Matchcode zeilenweise durchführen, werden NULL-Werte in den angegebenen Abgleichspalten auf beiden Seiten (Ziel und Quelle) ignoriert. Das bedeutet, dass die Zuweisung für diese Zeilen übersprungen wird.

Die Werte einzelner Spalten bearbeiten

Nutzen Sie die Option Indextabelle – Einzelne Spalte, um Daten aus einer Quell-Tabelle in diese Spalte zu kopieren oder sie zu ersetzen. Die Schritte sind die gleichen wie unter Mehrere Spalten mit dem Unterschied, dass Sie die Auswahl der Tabellenspalte direkt im ersten Schritt vornehmen und sich dadurch einen Schritt sparen.

Darüber hinaus können Sie mit der Option „Einzelne Spalte“ bestimmte Werte in die Spalte einer Indextabelle des im Workflow befindlichen Dokuments schreiben. Dazu stehen folgende Möglichkeiten zur Verfügung:

  • ein fester Eintrag

  • ein Wert, der aus einem arithmetischen Ausdruck abgeleitet ist (siehe auch Punkt Arithmetischer Ausdruck)

  • ein Indexeintrag desselben Dokuments

Wenn Sie einen arithmetischen Ausdruck verwenden, können Sie sogar Spaltenzellen derselben Indextabelle auswählen. Verbinden Sie den arithmetischen Ausdruck mit der Tabellenspalte “Zeilennummer” (SYS_ROW_NUMBER), um zum Beispiel die Zeilennummer und die Artikelbeschreibung zu kombinieren:

pictemplate_small

Weitere Hinweise zur Zuordnung von Daten zu Indextabellen:

Bedingungen mit Ausdrücken definieren: Wenn Sie Werte abgleichen möchten, die zuerst bearbeitet werden müssen, können Sie die Bedingungen für den Datenabgleich in Tabellen auch mit arithemtischen Ausdrücken definieren - zum Beispiel, um bestimmte Zeichen zu extrahieren oder sie mit festen Einträgen oder verschiedenen Index-/Spaltenwerten zu verketten.

Der arithmetische Ausdruck muss dafür als "wahr" oder "falsch" (boolean) zurückgeben werden, ähnlich wie if/else-Bedingungen. Wenn der zurückgegebene Wert "wahr" ist, ist die Bedingung erfüllt, "falsch" erfüllt die Bedingung nicht.

Werte von Mehrfachübereinstimmungen automatisch berechnen: Kombinieren Sie die beiden Optionen Alle übereinstimmenden Zeilen verarbeiten und Neue Werte zu bestehenden Werten addieren (im folgenden Dialog Daten zuweisen), um bei der Zuordnung der Daten die Werte für Dezimalspalten von Mehrfachübereinstimmungen automatisch zu berechnen.

Damit ermitteln Sie zum Beispiel die Menge eines Artikels, der nicht auf einmal geliefert wurde und deshalb auf mehreren Lieferscheinen vorhanden ist. Nachdem Sie die summierte Menge zugeordnet haben, können Sie einen 2/3-Wege-Abgleich durchführen.

Externe Datenbank als Datenquelle

Wenn Sie externe Daten aus einer Datenbank auslesen lassen möchten, um diese in Ihrem Workflow zu verwenden, können Sie hier die Einstellungen dafür vornehmen.

Datenbank

Datenbank-Konfiguration

Wählen Sie aus der Drop-down-Liste die Konfiguration der Quelldatenbank aus.

Tabelle

Wählen Sie aus der Drop-down-Liste die gewünschte Tabelle aus.

Spalte

Wählen Sie aus der Drop-down-Liste die gewünschte Spalte aus.

Um einen schnellen Datenabgleich von Cloud- und On-Premises-Systemen zu ermöglichen, installieren Sie in Ihrem Cloud-System den Local Data Connector. Dies ist möglich, wenn die DocuWare Desktop Apps von einer Cloud-Organisation aus installiert wurden. In On-Premises-Systemen steht der Connector nicht zur Verfügung steht. Der Local Data Connector bietet Ihnen im Dialog Externe Daten die Auswahl einer lokalen Datenbankverbindung.

Statement auswählen

WHERE-Bedingung

Im Editor bearbeiten Sie die SQL-Statements.

Wenn bei einer Datenbankabfrage die Sortierung bestimmte Zeichen nicht unterstützt, gehen Sie wie folgt vor: In der Abfrage maskieren Sie den eingegebenen Wert mit dem Parameter N. Alternativ können Sie den Wert in einer Variable speichern und diese Variable in der Abfrage verwenden, in diesem Fall wird der Parameter N automatisch hinzugefügt.

Operatoren

Um einen Operator in ein Statement einzufügen, klicken Sie rechts auf den Operator.

Variablen

Wenn Sie eine Variable in ein Statement einfügen möchten, wählen Sie zunächst die Registerkarte für die gewünschte Gruppe von Variablen aus: Systemvariablen, Globalen Variablen oder Tabellenfelder. Dann klicken Sie auf der Registerkarte auf die gewünschte Variable bzw. das gewünschte Feld. Welche Tabellenfelder Ihnen zur Verfügung stehen, variiert gemäß den Einstellungen, die Sie unter Datenbank > Tabelle bzw. Spalte getroffen haben.

Vorschau des SQL-Statements

Hier wird Ihnen das erstellte Statement angezeigt.

Archiv als Datenquelle

Wenn Sie bei der Datenzuweisung als Eintragstyp Archiv ausgewählt haben, können Sie hier die Einstellungen dafür vornehmen.

Archiv

Wählen Sie aus der Drop-down-Liste das Archiv aus.

Feld

Wählen Sie aus der Drop-down-Liste das gewünschte Feld aus.

Statement auswählen

WHERE-Bedingung

Im Editor bearbeiten Sie die SQL-Statements.

Wenn bei einer Datenbankabfrage die Sortierung bestimmte Zeichen nicht unterstützt, gehen Sie wie folgt vor: In der Abfrage maskieren Sie den eingegebenen Wert mit dem Parameter N. Alternativ können Sie den Wert in einer Variable speichern und diese Variable in der Abfrage verwenden, in diesem Fall wird der Parameter N automatisch hinzugefügt.

Operatoren

Um einen Operator in ein Statement einzufügen, klicken Sie rechts auf den Operator.

Variablen

Wenn Sie eine Variable in ein Statement einfügen möchten, wählen Sie zunächst die Registerkarte für die gewünschte Gruppe von Variablen aus: Systemvariablen, Globalen Variablen oder Indexfelder. Dann klicken Sie auf der Registerkarte auf die gewünschte Variable bzw. das gewünschte Feld. Welche Indexfelder Ihnen zur Verfügung stehen, variiert gemäß den Einstellungen, die Sie unter Archiv getroffen haben.

Vorschau des SQL-Statements

Hier wird Ihnen das erstellte Statement angezeigt.

Arithmetischer Ausdruck

Arithmtische Ausdrücke sind Ausdrücke aus Visual Basic für Applikationen (VBA) und .NET sowie spezifische DocuWare-Anpassungen von Ausdrücken. Für Informationen über die Möglichkeiten der Arithmetischen Ausdrücke beachten Sie bitte die Hinweise zum Workflow Expression Parser.

Um arithmetische Ausdrücke zu verwenden, steht ein eigener Dialog zur Verfügung. Dieser Dialog besteht aus einem Editor auf der linken Seite und den auszuwählenden Operatoren und Variablen auf der rechten Seite.

Um eine Variable in einen arithmetischen Ausdruck einzufügen, wählen Sie zunächst die Registerkarte für die gewünschte Gruppe von Variablen aus: Systemvariablen, Globalen Variablen, Indextabellen oder Formularfelder. Dann klicken Sie auf der Registerkarte auf die gewünschte Variable bzw. das gewünschte Feld.

Welche Registerkarten und Variablen Ihnen jeweils zur Verfügung stehen, variiert je nach benutzter Funktion bzw. nach den Einstellungen in der betreffenden Aktivität.

Gleichen Sie verschiedene Tabellenquellen auf der Grundlage von arithmetischen Ausdrücken ab. Damit beseitigen Sie zum Beispiel Fehlerquellen bei der Digitalisierung von Rechnungen oder anderen Dokumenten.

Beispiele:

  • Folgende Ausdrücke vergleichen zwei Zeichenketten mit Einschätzung ihrer Ähnlichkeit:

    • Peter Peterson _~ Peter Pitersen = 93%

    • S523-A336MS ~ S523-A336M5 = 95%

  • Diese Ausdrücke ändern eine Zeichenkette nach einem Muster:

    • Alle Ziffern aus einer Eingabezeichenkette anhand des Musters entfernen
      \d:Something123Anything => SomethingAnything

    • Einen Input-String anhand des folgenden Musters aufteilen:
      \d+:Something123Anything => Something, Anything

  • Prüfen, ob eine Zeichenkette dem Muster entspricht:

    • [A-Z0-9]\d{3}-\d{3}:
      A123-456 => true

Arithemtische Ausdrücke in Verbindung mit Indextabellen einsetzen

In den arithmetischen Ausdrücken können Sie Werte aus Indextabellen verwenden. Greifen Sie auf einen Wert aus einer Spalte derselben Indextabelle zu, die Sie bearbeiten möchten, erhalten Sie exakt einen Wert, nämlich den Wert aus derselben Zeile. Wählen Sie dazu die Spalte aus dem Reiter “<Tabellenname> Zellen”.

Wenn Sie hingegen auf eine Indextabellen-Spalte einer anderen Tabelle zugreifen, erhalten Sie eine Liste aller Werte in dieser Spalte. Wählen Sie dazu die Spalte aus dem Reiter Tabellenspalten.

Es ist möglich, den Wert aus einer anderen Spalte derselben Tabelle auszulesen, diesen ggf. per arithmetischem Ausdruck zu transformieren und ihn dann in die Zielspalte zu schreiben. Mehr dazu finden Sie unter Die Werte einzelner Spalten bearbeiten.

Die Systemspalte „Zeilennummer“ einsetzen

In den arithmetischen Ausdrücken können Sie die Systemspalte "SYS_ROW_NUMBER" verwenden. "SYS_ROW_NUMBER" liefert die Nummer der jeweiligen Zeile einer Indextabelle, die Sie verwenden können, um Werte zu verketten, Berechnungen durchzuführen oder einen Wert aus einer anderen Tabelle in derselben Zeile abzurufen. Die erste Zeile einer Tabelle wird immer als Zeilennummer "1" betrachtet.

Dies ist besonders wichtig, wenn Sie mit einem Indexer arbeiten, um eine Zeile zu ermitteln, denn dort beginnt die Zählung bei 0.

Wenn Sie dagegen die Systemspalte "SYS_ROW_NUMBER" verwenden, beginnt die Zählung bei 1. Um die gleiche Zeile zu erhalten, müssen Sie also 1 > "...[SYS_ROW_NUMBER]-1" subtrahieren.

Dazu ein Beispiel:

Sie bearbeiten eine Tabelle "Example" (interner Name "EXAMPLE") und möchten in die Spalte „Name“ Werte aus einer anderen Tabelle „New Items“ (interner Name "NEW_ITEMS") einfügen. Die gesuchten Werte befinden sich dort in der Spalte „New Name“ (interner Name „NEW_I_NAME“).

Sie verwenden einen Indexer, um die Werte zu ermitteln, und die Systemspalte „SYS_ROW_NUMBER“, um die Werte zuzuordnen.

Normalerweise definieren Sie für die Zielspalte folgenden arithmetischen Ausdruck:

DW_NEW_ITEMS[NEW_I_NAME](X)

Dies gibt den Wert der Spalte "New Name" der Tabelle "New Items" in der angegebenen Zeile zurück. "X" bestimmt, welchen Eintrag aus der Liste Sie zurückgeben möchten. Da der Indexer bei 0 beginnt, bedeutet z.B. "0" die erste Zeile.

Nun benötigen Sie für die Felder in der Zieltabelle den Wert aus der gleichen Zeile in der Quelltabelle. Daher verwenden Sie keinen festen Wert für den Indexer, sondern die neue Systemspalte "SYS_ROW_NUMBER".

Das Problem dabei: Wenn Sie nur die Systemspalte "SYS_ROW_NUMBER" verwenden, erhalten Sie zunächst nicht die gewünschte Zeile:

DW_NEW_ITEMS[NEW_I_NAME](DW_EXAMPLE[SYS_ROW_NUMBER])

Dieser Ausdruck gibt nämlich den Wert der nächsten Zeile in der Spalte "New Name" der Tabelle "New Items" zurück. Das heißt, wenn z. B. die erste Zeile der Tabelle "Einzelposten" verarbeitet wird, wird der Wert der zweiten Zeile der Tabelle "Neue Posten" zurückgegeben.

Dies liegt daran, dass "[SYS_ROW_NUMBER]" den Wert "1" zurückgibt und der effektive Ausdruck dann DW_NEW_ITEMS[NEW_I_NAME](1) lautet.

Um den richtigen Wert der gleichen Zeile zu erhalten, müssen Sie 1 von der Systemspalte "SYS_ROW_NUMBER" abziehen.

DW_NEW_ITEMS[NEW_I_NAME]((DW_EXAMPLE [SYS_ROW_NUMBER]-1))

Sys Row

Dies gibt den Wert der gleichen Zeile in der Spalte "New Name" der Tabelle "New Items" zurück.

Das heißt, wenn z.B. die erste Zeile der Tabelle "Example" verarbeitet wird, wird der Wert der ersten Zeile der Tabelle "New Items" zurückgegeben.

Dies liegt daran, dass "[SYS_ROW_NUMBER]-1" den Wert "0" liefert und der effektive Ausdruck dann DW_NEW_ITEMS[NEW_I_NAME](0) lautet.

Die arithmetischen Ausdrücke finden Sie in der Dokumentation Workflow Expression Parser.

Variablen-Vergleiche in Bedingungen

Wenn innerhalb von Bedingungen Variablen verglichen werden sollen, sind dafür folgende Hinweise zu beachten. Für den Vergleich von Variablen stehen folgende Operatoren zur Verfügung: =, >=, >, <, <=

Datumsvariablen

Bei einem Vergleich von Variablen mit einem festen Datumswert muss das Datum in einer Schreibweise gemäß einem der folgenden Beispiele definiert sein:
cdate(“JJJJ/MM/TT”)
cdate(“JJJJ-MM-TT”)
cdate(“JJJJ.MM.TT”)

Numerische Variablen

Bei einem Vergleich von numerischen Variablen müssen alle Variablen die gleiche Anzahl an Dezimalstellen haben. Sollen zwei Variablen mit unterschiedlichen Anzahlen an Dezimalstellen verglichen werden, müssen Sie diese zunächst mit einer Daten zuweisen-Aktivität und mithilfe einer weiteren Variable auf die gleiche Anzahl von Dezimalstellen bringen.

Beispiel:

Sie möchten die Variable 1 und die Variable 2 vergleichen, obwohl diese unterschiedlich viele Dezimalstellen haben.

1. Gegeben sind:

Variable 1 (0 Dezimalstellen)
Variable 2 (2 Dezimalstellen)
Variable 3 (0 Dezimalstellen)

2. Daten zuweisen-Aktivität:

Variable 3 = Variable 2*100

3. Ergebnis:

Variable 1 und Variable 3 haben die gleiche Anzahl an Dezimalstellen und können nun in einer Bedingung miteinander verglichen werden.