Assign (Kopie erstellen)

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

Name

Beschreibung

Datentyp

Erforderlich

Name

Beschreibung

Datentyp

Erforderlich

From

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

 Beliebig

Ausgabe

Name

Beschreibung

Datentyp

Erforderlich

Name

Beschreibung

Datentyp

Erforderlich

To

Variable/Argument, dem der Wert zugewiesen werden soll.

Beliebig

Fehlermeldungen

Beschreibung

Beschreibung

Beschreibung

Beschreibung

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.