Assign (Kopie erstellen)

WMS 2021 (1.1.2)

Die Assign (Kopie)-Aktivität kann in den meisten Fällen  genau wie Assign-Aktivität verwendet werden. Sie weist einer Variablen oder einem Argument (To) einen Wert (From) zu. 

Unterschied zum Assign ist, dass die Assign-Kopieren-Aktivität eine "echte" Kopie erzeugt. Das Assign dagegen legt nur eine Referenz an.

Erklärung:

In der Entwicklung unterscheidet man zwischen Werttypen (z.B. bool, int, DateTime, ...) und Referenztypen (andere Klassen, z.B. WmsTaskFields).
Wenn man Werttypen zuweist wird eine echte Kopie ("deep copy") angelegt, bei Referenztypen nur eine Referenz ("shallow copy").

Beispiel mit WmsTaskFields

  • Man weist in einem Assign den Wert der WmsTaskFields-Variable "a" in eine andere WmsTaskFields-Variable "b" zu
  • Nun ändert man den Wert eines Feldes in Variable "b"
  • (Ungewollte) Folge ist, dass der Wert auch in Variable "a" geändert wird (da es ja nur eine Referenz ist)
  • Lösung: In diesem Fall hilft "Assign (Kopie erstellen)" weiter. Es wird eine Kopie erstellt, die verändert werden kann, ohne dass die Ursprungsvariable geändert wird.


Inhalt

Siehe auch


Eigenschaften

Eingabe

NameBeschreibungDatentypErforderlich

From

Der der Variablen zugewiesene Wert. Muss ein gültiger Visual Basic-Ausdruck sein.

 Beliebig

(Warnung)

Ausgabe

NameBeschreibungDatentypErforderlich

To

Variable/Argument, dem der Wert zugewiesen werden soll.

Beliebig(Warnung)

Fehlermeldungen

BeschreibungBeschreibung
Die Typen der beiden Werte stimmen nicht überein.Diese Meldung tritt auf, wenn die Werte "From" und "To" nicht zusammen passen und damit eine Zuordnung nicht erfolgen kann.
Lösung: Konvertieren Sie den Typ des Wertes, ggf. mit einem "ToString" oder einer Aktivität zur Konvertierung

Beispiel

Verwenden Sie die Kopieren-Aktivität zum Beispiel, wenn Sie sich vor Start einer Aufgabe die Feldwerte oder das Rechnungsobjekt merken müssten, um sie nach der Aufgabe mit den neuen Werten zu vergleichen.

 Beispiel Workflow anzeigen