Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Algorytm C#

Podsumowanie:

Akcja pozwala użytkownikowi przygotować algorytm w języku C#. W kodzie można odwoływać się do bibliotek DLL dostępnych w folderze instalacyjnym witryny w podfolderze API lub folderach innych serwisów (oprócz wyboru z listy, można wpisać nazwę pliku) oraz do wartości z kontekstu formularza za pośrednictwem zmiennej Model.

Narzędzia > Akcje > Algorytm C#

Akcja oferuje kilka klas, które opisano osobno. Są to:

  • SqlAction, EmailAction, CSharpScriptAction oraz WebServiceAction (przestrzeń nazw CSharpScript.ActionRunner): umożliwiają wywołanie akcji zdefiniowanych w nAxiom (akcje SQL, wysyłka e-mail, zapytania do webserwisów oraz algorytmy C#).
  • RestManager i SoapManager (przestrzeń nazw CSharpScript.WebServiceRunner): umożliwiają wysyłanie zapytań do serwisów SOAP i REST API.
  • SqlHelper (przestrzeń nazw CSharpScript.SqlRunner): umożliwia wykonywanie typowych operacji na bazie danych SQL Server.

W akcji można także użyć wbudowanej funkcji ClearCache(), która czyści pamięć podręczną witryny nAxiom, tak samo jak kliknięcie przycisku Wyczyść cały cache w sekcji Cache w ustawieniach systemu (ADMINISTRACJA > Ustawienia systemu > Cache).

Dodawanie/Edycja akcji algorytm C#
Dodawanie/Edycja akcji algorytm C#

W celu zdefiniowania akcji algorytmu C# należy określić następujące właściwości:

Emituj informacje debugowania: włącza prezentowanie dodatkowych informacji przez system podczas kompilacji i wykonywania algorytmu

Załaduj do algorytmu Assemblies: referencje do zestawów, które mają być dostępne w kodzie akcji; nazwę zestawu można wpisać ręcznie; w przypadku akcji przypisanych do przycisku lub przejścia na diagramie procesów plik zestawu musi znajdować się w folderze serwisu api; w przypadku akcji wykonywanych w ramach zadań cyklicznych plik zestawu musi znajdować się w folderze serwisu taskservice; standardowo dostępne są biblioteki System.Data.SqlClient.dll, Dapper.dll i Newtonsoft.Json.dll. Niezależnie od wybrania zestawów w tym polu, aby móc używać w kodzie akcji typów zdefiniowanych w przestrzeniach nazw tych zestawów, należy się do nich zreferować przy użyciu dyrektywy using.

Algorytm C#: kod akcji w języku C#; w kodzie można korzystać z predefiniowanych zmiennych:

  • Model (string): model formularza w formacie JSON
  • RecordId (string); identyfikator bieżącego rekordu
  • FormDefinitionId (int): identyfikator bieżącego formularza
  • BusinessDocumentId (int): identyfikator bieżącego dokumentu biznesowego
  • UserId (guid): identyfikator zalogowanego użytkownika
  • TenantId (string): identyfikator bieżącego tenanta
  • TenantBaseUrl (string): adres URL witryny bieżącego tenanta
  • Przycisk Sprawdź składnię/Skompiluj algorytm weryfikuje poprawność składni i uruchamia kompilację kodu (tak działa również przycisk Zapisz). W przypadku błędów składni bądź braku referencji do zestawów, zostanie wyświetlony komunikat o błędzie, a lista błędów zostanie wyświetlona poniżej okna Algorytm C#. Akcję można zapisać tylko w przypadku pomyślnej weryfikacji/kompilacji.

Info

W oknie edytora kodu można korzystać z mechanizmu smart numbers.

W celu poprawy wydajności działania akcji C# wprowadzono zapisywanie skompilowanych skryptów akcji w pamięci cache. Ustawienia konfiguracyjne pamięci cache dla akcji C# znajdują się w sekcji AppConfiguration:Modules:Scripting w pliku appsettings.json serwisu api. Są to:

  • SlidingCacheExpirationInHours: czas w godzinach (liczba zmiennoprzecinkowa) od ostatniego użycia, po upływie którego skompilowany skrypt jest usuwany z cache.
  • EnableCompiledScriptCache: wyłączenie zapisywania skompilowanych skryptów w pamięci cache.
|← Otwieranie linku zewnętrznego |↑ Do góry |→ Przestrzeń nazw SQLRunner |

Copyright © 2025 OPTEAM SA. Theme Copyright © 2017-2020 Patrick Marsceill. Distributed by an MIT license.