Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Wichtig vor der Verwendung von Variablen und Argumenten ist es sie mit einem Wert vorzubelegen (d.h. zu initialisieren). Wenn Sie das nicht tun erhalten Sie schnell eine "NullReferenceException".
Das ist besonders bei komplexen Typen (also nicht string, bool, etc.) wichtig.

...

Objekt des Typs "WmsInvoice" initialiseren (hier mit Angabe des kompletten Namespaces)
Codeblock
languagevb
new Accantum.Wms.ActivityContracts.Models.Invoice.V01.WmsInvoice()


In der Initialisierung können Sie mit "With" in geschweiften Klammen einzelne Eigenschaften des Objekts vorbelegen (nicht zu vergessen ist dabei der Punkt vor dem Eigenschaftsnamen):

...

Komplexe Typen initialisieren und mit Werten vorbelegen
Codeblock
languagevb
new Accantum.Wms.ActivityContracts.Models.Invoice.V01.WmsInvoice With { .InvoiceNumber = 655, .LanguageId= "de" }

...

Bei der Initialisierung von Listen können gleichzeitig Listenelemente angegeben werden. Hierfür wird das Schlüsselwort "From" verwendet:

...

Liste mit Angabe von Elementen initialisieren
Codeblock
languagevb
new System.Collections.Generic.List (Of string) From {"Item 1", "Item 2", "Item 3"}

...

Datentypen

Strings

  • Für String-Werte muss der Ausdruck in Anführungszeichen eingeschlossen werden "Text".

  • Mehrzeiligen string mit + umbrechen, z.B. „abc“ + „def“

  • Zeilenumbrüche in einem String: „\r\n“… oder Environment.NewLine

  • Wenn Sie in einem String ein Anführungszeichen verwenden wollen, muss dieses escaped werden. Escapen Sie Anführungsstriche indem Sie 2 Anführungsstriche  setzen (also so: "Text "" Text")

  • String-Eingabe mit eckigen Klammern: Sollten Sie in einem String-Feld einen Text eingeben, der mit "[" beginnt und mit "]" endet, fügt der Workflow Designer automatisch ein Prozentzeichen zu ein. Bei der Ausführung wird dieses Zeichen nicht berücksichtigt.
    Image Modified

...

Character (1 Zeichen)

  • Eingabe genau eines Zeichens (Typ Character): z.B. "z“C oder nur z ohne Anführungsstriche "

...

Decimal

  • Bei der Angabe einer Dezimalzahl muss der Zahl ein "D" folgen: z.B. 1.23D

  • Wird das "D" nicht angegeben, so interpretiert VisualBasic die Zahl als Double und kann die Zahl einer Eigenschaft vom Typ Decimal nicht zuweisen.

...

Liste / Collection / Array

...

DateTime und TimeSpan

Für diese Typen bietet der Workflow Designer eine Vereinfachte Eingaben

  • Datum (Typ DateTime):
    Statt „New DateTime(…)“ kann für Datumwerte folgende vereinfachte Schreibweise verwendet werden: Image Modified bzw. mit Uhrzeit:Image Modified

  • Zeitspanne (Typ TimeSpan z.n. in der Delay-Aktivität)
    Statt "New TimeSpan(...) kann für Werte dieses Typen auch folgende Schreibweise verwendet werden: Image Modified (5 Minuten)

...

Umwandlung / Konvertieren von Typen

  • Umwandlung eines Wertes vom Typ "Object" in einen anderen Datentyp (in C# oder Java auch "Cast" genannt) funktioniert mit der Funktion "CType(<Value>, <Type>)".


    Codeblocklanguagevbtitle


    Beispiel: Umwandlung der zurückgegebenen ID eines DMS-Attributes vom Typ "Mehrfachauswahl" in Guid

    Codeblock
    languagevb
    CType(accDocumentAttributes(dmsAttr_Projekte.Id), Guid())

  • Convert.ToXXX Methoden: Damit können Sie Integer, Strings, DateTimes, etc umwandeln
    Beispiel: Umwandlung von String zu einem Integer
    Convert.ToInt32("5")

  • Weitere Informationen zur Umwandlung von Datentypen finden Sie hier https://docs.microsoft.com/de-de/dotnet/visual-basic/language-reference/functions/type-conversion-functions

  • Alternativ können Sie auch die Konvertieren-Aktivitäten verwenden.