Punkty wejścia > Moduł Administrator > Standardowy skrypt SERVSYS 

LANRUN: Zmień język uruchamiania zadania przetwarzania w tle

Entry point służy do zmiany języka przy każdym uruchomieniu zadań przez serwer przetwarzania w tle

W chwili obecnej zadanie przetwarzania w tle uruchamiane jest z kodem języka serwera przetwarzania w tle. W przypadku rozwiązań wielojęzycznych (obejmujących jeden lub wiele folderów) może stanowić to problem podczas obsługi komunikatów o błędzie importu (ponieważ komunikaty generowane przez funkcję mess()zależą od kodu języka uruchomionej usługi adonix).

Proces SERVSYS rzeczywiście wyszykuje język używany przez serwer przetwarzania w tle, przechowywany w GLANGUE na liście języków określonych dla danego folderu.

Na przykład: w przypadku rozwiązania obejmującego N folderów, dla których określono lokalny język i język administratora (tj. ESP-FRA, ENG-FRA). Jeżeli serwer przetwarzania w tle uruchamiany jest z językiem FRA, wszystkie komunikaty we wszystkich plikach będą w języku francuskim.
Żądanie jest następujące:
komunikaty w języku angielskim dla folderu w języku angielskim, komunikaty w języku hiszpańskim dla folderu w języku hiszpańskim. Komunikaty administratora pozostają w języku francuskim w folderach w języku angielskim i hiszpańskim.

Uwaga:

Serwer przetwarzania w tle, uruchamiany w folderze SERVX3 wykorzystuje proces SERVSYS, umiejscowiony w katalogu TRT standardowego folderu referencyjnego X3.

Warunkiem uwzględnienia entry point jest zlokalizowanie deklaracji entry point oraz poszczególnych powiązanych procesów w folderze referencyjnym X3.
Ponadto, ze względu na to, że zmienne globalne nie zostały określone, zaleca się przetestowanie ich dostępności przed użyciem. Na przykład, nie została określona zmienna globalna GLON*.

Kontekst i metoda działania

Entry point LANRUN wywoływany jest przy każdym uruchomieniu żądania. Jest on zlokalizowany w podprogramie REQUETE procesu SERVSYS:

Podprogram REQUETE(PID)
Znak zmiennej PID
Lokalny znak LANGUE(5)
Jeżeli clalev([F:ADS])=0: Plik lokalny ADOSSIER [ADS]: Endif
Odczyt [ADS]DOSSIER = [F:ABR]DOSSIER
GPE = 0
GPOINT = 'LANRUN': Gosub ENTREE z EXEFNC
Jeżeli !GPE
Jeżeli find(GLANGUE,[F:ADS]LAN(0..[F:ADS]NBRLAN-1))
LANGUE = GLANGUE
Else
LANGUE = [F:ADS]LAN(0)
Endif
Endif

W przypadku informacji w systemie Unix, zadanie przetwarzania we tle zostanie uruchomione po uruchomieniu następującego polecenia systemowego (w zależności od opcji):

EXEC_ENTREP='BATCH' RQT_ENTREP=NoRequête adonix -a -l LANGUE </tmp/serveur.ent >>/tmp/NoRequête.log 2>&1