Podstawowe elementy składni Visual Basic .NET
Tworząc procesy BPM użytkownik często spotyka się z sytuacją, kiedy konieczne jest użycie składni języka Visual Basic .NET. Można w ten sposób przypisać parametrom wartości początkowe czy prowadzić operacje na liczbach lub tekstach wewnątrz procesów.
Operatory
Visual Basic wspiera następujące typy operatorów:
Nazwa działania | VB.NET | C# | TSQL |
---|---|---|---|
Czy A mniejsze od B | A < B | A < B | A < B |
Czy A mniejsze lub równe B | A <= B | A <= B | A <= B |
Czy A równe B | A = B | A == B | A = B |
Czy A większe od B | A > B | A > B | A > B |
Czy A większe lub równe B | A >= B | A >= B | A >= B |
Czy A różne od B | A B | A != B | A B |
A lub B | A OrElse B | A || B | A OR B |
A i B | A AndAlso B | A && B | A AND B |
Przypisanie A wartości dziesiętnej 10,1 | A = 10.1D | A = 10.1m | A = 10.1 |
Przypisanie A wartości zmiennoprzecinkowej 10,1 | A = 10.1R | A = 10.1 | A = 10.1 |
Zaprzeczenie A | Not A | !A | - |
Łączenie ciągów znaków | ”a” & b.ToString() | ”a” + b.ToString() | ‘a’ + b |
Pierwszy element tablicy T | T(0) | T [0] | - |
Tworzenie obiektu typu nullowalna liczba całkowita | New Nullable( Of Int32) | New Nullable() | - |
Wywołanie metody z typem generycznym SalesInvoice | ObjectFactory.Create( Of SalesInvoice)() | ObjectFactory. Create() | - |
Rzutowanie obiektu object na typ Type | DirectCast (object, Type) | (Type)object | - |
CType (object, Type) | |||
Wartość null | Nothing | null | NULL |
Czy A nie jest nullem | A IsNot Nothing | A != null | A IS NOT NULL |
Czy A jest nullem | A Is Nothing | A == null | A IS NULL |
A jest typu Type | TypeOf A Is Type | A Is Type | - |
Nazwa działania | VB.NET | C# | TSQL |
Stworzenie słownika o kluczu typy String i wartościach Decimal i zainicjowanie go parą kluczem ”KOS” o wartości 2.0D | New Dictionary( Of String, Decimal)() From {{"KOS", 2.0D}} | new Dictionary() {{"KOS", 2.0m}} | - |
Stworzenie obiektu typu DocumentEventParams i zainicjowanie jego właściwości DocumentId wartością 169 | New DocumentEventParams() With { . DocumentId = 169} | new DocumentEventParams() {DocumentId = 169} | - |
Przypisanie do zmiennej A wartości tekstowej: Tekst | A = " Tekst " | A = " Tekst " | SET @A = 'Tekst' |
Przypisanie do zmiennej A wartości tekstowej w cudzysłowie: "Tekst" | A =" "" Tekst "" " | A = " \"Tekst\" " | SET @A = '"Tekst"' |
Wykorzystanie operatora warunkowego do przypisania wartości tekstowej do zmiennej typu string A na podstawie wartości B (jeśli B jest równe Nothing to A będzie równe String.Empty, w przeciwnym przypadku A będzie równe B) | A = If (B Is Nothing, String.Empty, B) | A = B == null ? String.Empty : B | - |
Stworzenie metody anonimowej | IEnumerable. Find( Function(c) c.Code.Equals("PL")) | IEnumerable.Find(c => c.Code == "PL") |
Należy pamiętać o poprawnych typach podczas porównywania. Przykładowo, wyrażenie „73”<„9” zwróci wynik True. Jest to spowodowane tym, że porównując zmienne typu tekstowego, w pierwszej kolejności brany jest pod uwagę znak pierwszy, potem drugi itd.
Mechanizm Intellisense
Comarch ERP Altum BPM dysponuje własnym mechanizmem Intellisense. Jest on formą automatycznego uzupełniania i jednocześnie służy jako dokumentacja oraz ujednoznacznienie dla nazw zmiennych, funkcji i metod. Korzystanie z mechanizmu jest wygodnym sposobem na uzyskanie dostępu do opisów funkcji, a częściowo także do listy ich parametrów.