System Output Manager

Artykuł zawiera opis struktury i działanie System Output Manager (SOM). Przedstawiono w nim także różne możliwości konfiguracji i zarządzania, a także przykładowe sposoby rozwiązywania problemów.

Instalacja System Output Manager została opisana w dokumencie Instalacja System Output Manager (SOM).

Grupa docelowa

  • Administratorzy

Wprowadzenie

System Output Management używa jednego lub więcej System Output Managera do wysyłania dokumentów i raportów. System Output Manager (SOM) to serwer specjalizujący się w wydrukach dokumentów. Podobnie jak serwer drukarki, udostępnia on swoje usługi wyjściowe innym komputerom (klientom). W tym przypadku klientami są Semiramis Application Server (SAS), które wysyłają swoje zadania wyjściowe do przetworzenia do System Output Manager.

SOM może akceptować dane wyjściowe dla jednego lub więcej serwerów aplikacji, przy czym serwery aplikacji mogą nawet należeć do różnych systemów Comarch EPR Enterprise. Do systemu można przypisać jeden lub więcej SOM-ów. SOM i SAS (lub systemy) są w relacji N:M.

Podczas przetwarzania zamówienia SOM zmienia rolę i staje się klientem, jeśli na przykład żąda aktualnego szablonu raportu (*rpt) z SAS, wysyła zapytania o dane z „serwera ODBC” za pośrednictwem ODBC, wysyła wiadomości e-mail za pośrednictwem serwera pocztowego lub przechowuje kopie archiwalne w Knowledge Store.

Środowisko systemowe

Komunikacja pomiędzy SAS i SOM opiera się, podobnie jak komunikacja pomiędzy przeglądarkami i SAS, na protokole HTTPS i umożliwia bezpieczną komunikację nawet przez Internet. W związku z tym istnieje możliwość umieszczenia SOM poza (serwerową) siecią LAN.

Urządzenia wyjściowe i nośniki

SOM obsługuje następujące typy urządzeń wyjściowych i nośników:

Termin „urządzenie wyjściowe” jest używany jako uogólnienie drukarki. SOM zwykle zapewnia wiele takich urządzeń wyjściowych. Każda drukarka i faks są uważane za oddzielne urządzenia wyjściowe. Każde urządzenie wyjściowe ma określone właściwości i możliwości. Jedna z tych właściwości/ możliwości ma ogólne zastosowanie do typu urządzenia wyjściowego, inne są specyficzne dla danego urządzenia.

SOM zasadniczo udostępnia wszystkie drukarki i faksy zainstalowane na danym komputerze. Aby móc korzystać z tych urządzeń w systemie Comarch ERP Enterprise, należy je najpierw przypisać do urządzenia wyjściowego. To pośrednie przypisanie ma następujące zalety:

  • Ukierunkowany wybór faktycznie wymaganej drukarki.
  • Poszczególne drukarki (lub SOM) mogą być zmieniane lub wymieniane bez zmiany nazwy urządzenia wyjściowego w Comarch ERP Enterprise. Pomaga to uniknąć konieczności dostosowywania priorytetów, szablonów dokumentów końcowych lub ustawień użytkownika.
  • Wykorzystanie urządzenia wyjściowego może być autoryzowane poprzez rolę uprawnień.

Drukarka

SOM używa drukarki zainstalowanej na poziomie systemu operacyjnego do drukowania. Wszystkie drukarki obsługiwane przez system operacyjny są obsługiwane lub dostępne dla odpowiedniego sterownika drukarki. Zasadniczo mogą to być drukarki lokalne lub „sieciowe”. Zaleca się jednak bezpośrednią (lokalną) instalację drukarki, tak jak w przypadku serwera drukarki.

Faks

Do wysyłania dokumentów i raportów jako faksów, SOM używa rozwiązania faksowego firmy Microsoft (Windows Fax). Aby z niego korzystać, wymagany jest modem faksu lub karta ISDN obsługiwana przez to oprogramowanie.

Zamówienia faksowe są monitorowane przez SOM, a komunikaty mogą być generowane, gdy wysyłka została zrealizowana lub nie powiodła się.

Istnieje również możliwość podłączenia faksów za pomocą zewnętrznych generatorów (rozdział Podłączanie rozwiązań faksowych). Ponieważ SOM może monitorować tylko zintegrowane rozwiązanie faksu, to od rozwiązania faksu zależy, czy i w jaki sposób rejestruje status zleceń i wysyła wiadomości.

E-mail

Dokumenty i raporty mogą być również wysyłane przez SOM jako e-mail, gdzie wygenerowane dokumenty wyjściowe mogą być załączone do wiadomości e-mail. Można wybrać format dokumentu dla załącznika.

SOM deleguje wysyłkę wiadomości e-mail do serwera SMTP; taki serwer musi być dostępny i wprowadzony do SOM.

Systemowe repozytorium wiedzy Kstore

Dokumenty i raporty mogą być również wysyłane jako plik i przechowywane w Comarch ERP Enterprise Knowledge Store. Obsługiwane są następujące formaty plików:

  • Portable Document Format (PDF)
  • HTML (*.html)
  • Tekst (*.txt)
  • Tekst (wartości oddzielone przecinkami) (*.csv)
  • Tekst (wartości oddzielone tabulatorami) (*.tsv)
  • Format tekstu sformatowanego (*.rtf)
  • Microsoft Word (*.doc)
  • Microsoft Excel (*.xls)
  • Crystal Reports (*.rpt)
  • XML (*.xml)
  • Strumień danych drukarki (np. PCL, postscript)

Crystal Reports

Podstawą wszystkich dokumentów i raportów w Comarch EPR Enterprise są odpowiednie dokumenty raportów. Tworzenie i projektowanie takich szablonów raportów odbywa się za pomocą (zewnętrznej) aplikacji Crystal Reports.

Pliki (*.rpt) utworzone za pomocą Crystal Reports są zapisywane w bazie danych repozytorium Comarch EPR Enterprise.

Tak zwany Crystal Report Print Engine jest zintegrowany z SOM, co pozwala na automatyzację wydruków raportów.

SOM ładuje szablony raportów (*.rpt) przez SAS, który wygenerował odpowiednie zadanie wyjściowe. Załadowane szablony raportów są buforowane w SOM, dzięki czemu dostęp do nich można zapisać w SAS za pomocą zleceń z tym samym szablonem raportu.

Dostęp do danych

Dostęp do baz danych systemów Comarch EPR Enterprise odbywa się za pośrednictwem specjalnego sterownika ODBC, który udostępnia bazy danych jako tak zwane źródła danych ODBC dla Crystal Reports. Istnieją dwie wersje tego sterownika Semiramis ODBC. Wersja dla zwykłego (interaktywnego) klienta-komputera i specjalna wersja dla SOM. Wersja kliencka jest wymagana na przykład do tworzenia szablonów raportów i musi być zainstalowana wraz z Crystal Reports na komputerach, na których można tworzyć szablony raportów. Wersja sterownika ODBC dla SOM jest częścią SOM i jest instalowana wraz z nim na odpowiednich komputerach serwerów.

Źródła danych ODBC używane w szablonach raportów muszą być normalnie dostępne i/lub skonfigurowane w SOM. Nie jest to konieczne w przypadku baz danych OLTP, OLAP, repozytorium i konfiguracji. Szablony raportów dla tych baz danych muszą zamiast tego używać następujących nazw symbolicznych:

  • OLTP
  • OLAP
  • Repository
  • Configuration

Te nazwy symboliczne umożliwiają tworzenie szablonów raportów, które mogą być używane dla różnych baz danych (i systemów) bez zmian (!).

SOM może automatycznie zastąpić te nazwy w czasie wykonywania nazwami tymczasowych źródeł danych i skonfigurować je tak, aby odpowiadały bazom danych danego użytkownika.

Struktura i proces

SOM składa się z następujących komponentów:

  • Web server
  • Kolejki dla zadań wyjściowych
  • Harmonogram
  • Procesor(y) raportów
  • Pamięć podręczna raportów
  • Sterowniki ODBC Semiramis
  • Interfejs dla drukarki Windows
  • Klient faksu Windows
  • Klient serwera poczty elektronicznej (SMTP)
  • Klient dla WebDAV (Comarch ERP Enterprise Knowledge Store)
  • Klient do ładowania szablonów raportów (*.rpt)
  • Usługa powiadomień

Web server

SOM ma zintegrowany serwer HTTPS, za pośrednictwem którego świadczy swoje usługi odpowiednim klientom HTTPS. Klienci ci obejmują przede wszystkim serwery aplikacji Semiramis (SAS), które wysyłają swoje zadania wyjściowe i zapytania o status do SOM. Niektóre strony statusu (HTML) SOM mogą być również odpytywane za pomocą zwykłej przeglądarki.

Przychodzące zapytania (zadania wyjściowe, zapytania o stan itp.) nie są przetwarzane przez web server, ale są przekazywane do odpowiednich podkomponentów SOM.

Kolejka

Wszystkie przychodzące zlecenia są najpierw buforowane w centralnej kolejce. (Pierwsza) kolejka działa niezależnie od urządzenia wyjściowego i spełnia następujące zadania:

  • Asynchroniczne przetwarzanie zamówień, tj. użytkownicy mogą przetwarzać dalej i nie muszą czekać, aż ich zamówienia zostaną przetworzone.
  • Kontrola zużycia zasobów (pamięć RAM, obciążenie procesora, dostęp do ODBC), tj. jednocześnie przetwarzanych jest tylko tyle zleceń, na ile pozwalają zasoby SOM i używanego serwera (zwłaszcza serwera ODBC).
  • Przetwarzanie sterowane priorytetem zleceń, tzn. zlecenia o wyższym priorytecie są przetwarzane przed zleceniami o niższym priorytecie, nawet jeśli zostały otrzymane wcześniej.
  • Przetwarzanie zleceń sterowane zasobami, tj. zlecenia, dla których nie są dostępne wszystkie niezbędne zasoby, są „zatrzymywane” do czasu ich udostępnienia. Te „zasoby” obejmują fizyczne urządzenia wyjściowe (drukarki) i szablony raportów (*.rpt), które muszą być najpierw załadowane przez SAS.

Kolejka jest jednocześnie dostępna jako historia zleceń, tzn. zapisuje również status zamkniętych i anulowanych zleceń.

Harmonogram

Przetwarzanie centralnej kolejki i monitorowanie statusów zamówień odbywa się za pośrednictwem centralnego harmonogramu. Ważne są następujące aspekty:

  • Tworzenie licznych raportów lub dokumentów za pomocą Crystal Reports może zająć dużo czasu. Czysto sekwencyjne przetwarzanie prowadziłoby do opóźnień w generowaniu wszystkich kolejnych raportów i dokumentów. Aby tego uniknąć, zamówienia muszą być przetwarzane równolegle.
  • Nie można utworzyć dowolnej liczby raportów i dokumentów jednocześnie, ponieważ wymagane do tego zasoby są ograniczone. Dotyczy to zasobów w module SOM (procesor, pamięć RAM, dysk twardy) oraz zasobów na wymaganym serwerze (serwer ODBC, baza danych).
  • Zwykle ważne jest, aby po wyjściach drukarki (w zależności od drukarki) wydruki były wyprowadzane w kolejności, w jakiej zostały odebrane jako zamówienie. Nie można tego jednak zagwarantować w przypadku przetwarzania równoległego, ponieważ czasy przetwarzania poszczególnych zleceń mogą się znacznie różnić.

Tworzenie raportów i dokumentów odbywa się zatem za pośrednictwem tak zwanych „procesorów raportów”, których liczbę można dostosować za pomocą pliku konfiguracyjnego SOM. Ponieważ liczba tych procesorów jest zwykle niska (wstępnie ustawiona wartość to 3), szczególnie ważne jest, aby była ona wykorzystywana tak efektywnie, jak to tylko możliwe. Tak więc procesy te wykonują tylko te etapy zamówienia, dla których Crystal Reports Report Engine jest naprawdę potrzebny. Wszystkie inne etapy przetwarzania, takie jak zakup szablonu raportu, wysyłka pocztą lub zapisanie w Knowledge Store, nie muszą czekać na zasoby zewnętrzne; w tym czasie mogą być przetwarzane inne zamówienia. Hrmonogram zapewnia w zleceniach drukowania, że wiele procesorów nie pracuje jednocześnie dla jednej drukarki.

Podsystemy

Kroki przetwarzania wymagane dla zadania wyjściowego (takie jak sprawdzanie lub ładowanie szablonu raportu, tworzenie raportu, wysyłanie raportu jako wiadomości e-mail, zapisywanie kopii w Knowledge Store i informowanie SAS) są wykonywane przez wewnętrzne podsystemy. Niektóre z tych kroków przetwarzania mogą być wykonywane tylko wtedy, gdy poprzedni krok jest zamknięty (raport musi zostać ukończony przed wysłaniem go jako e-mail), podczas gdy inne mogą być wykonywane równolegle (na przykład wysyłka jako e-mail i zapisanie w Knowledge Store).

Podsystemy te obejmują:

  • Podsystem ładowania szablonów raportów (*.rpt)
  • Podsystem tworzenia raportów (procesory raportów)
  • Podsystem zapisywania dokumentów w Knowledge Store
  • Podsystem wysyłania dokumentów jako e-mail
  • Podsystem wysyłania dokumentów jako faks
  • Podsystem wysyłania wiadomości do SAS

Każdy z tych podsystemów ma kolejkę i ograniczoną liczbę wątków, które wewnętrznie „przetwarzają” tę kolejkę. Liczba wątków zależy od podsystemu. W przypadku podsystemu tworzenia raportów liczbę wątków (procesorów) można określić w pliku konfiguracyjnym, podsystemy poczty e-mail i faksu używają tylko jednego wątku, a podsystemy dostępu do SAS używają oddzielnego wątku dla każdego SAS.

Zadaniem harmonogramu jest głównie przypisywanie zleceń na podstawie typu i statusu do wymaganych podsystemów we właściwym czasie. Po zakończeniu pracy informują one harmonogram, który z kolei inicjuje ten sam lub następny krok przetwarzania, w zależności od przypadku.

Poniższy przykład może wyjaśnić ten proces. Dokument musi zostać wysłany jako e-mail, a jego kopia musi zostać zapisana w repozytorium Kstore.

  • SAS wysyła odpowiednie zamówienie do SOM.
  • SOM umieszcza zlecenie w kolejce centralnej, informuje o tym harmonogram i odsyła (pozytywne) potwierdzenie odbioru do SAS.
  • Harmonogram określa, że istnieje nowe zamówienie i wymaga szablonu raportu. Przekazuje zlecenie do podsystemu szablonów raportów.
  • Podsystem szablonów raportów ma pamięć podręczną z załadowanymi szablonami raportów. Jeśli wymagany szablon raportu jest dostępny i zaktualizowany, harmonogram jest o tym natychmiast informowany. Jeśli szablon raportu nie jest dostępny lub zaktualizowany, odpowiednie żądanie ładowania jest umieszczane w kolejce podsystemu. Ładowanie i sprawdzanie szablonu raportu odbywa się asynchronicznie. Harmonogram jest informowany o zakończeniu ładowania/sprawdzania.
  • Harmonogram sprawdza, czy istnieje zlecenie, które może zostać przekazane do procesora raportów. Przekazuje zlecenie do podsystemu tworzenia raportów.
  • Podsystem tworzenia raportów umieszcza zlecenie w kolejce procesorów raportów zgodnie z jego priorytetem. Procesory raportów stale aktualizują tę kolejkę. Jeśli raport został utworzony, program harmonogramowania jest o tym ponownie informowany.
  • Harmonogram określa teraz, czy generowanie raportu dla zamówienia zostało zakończone, ale wygenerowany (tymczasowy) plik musi zostać wysłany pocztą e-mail i zapisany w Knowledge Store. Informuje (jednocześnie) odpowiednie podsystemy.
  • Podsystem wysyłania wiadomości e-mail umieszcza zamówienie w swojej kolejce. Kolejka jest stale aktualizowana przez wątek. Harmonogram jest informowany po udanej wysyłce.
  • Podobnie podsystem zapisywania dokumentów w Knowledge Store umieszcza zamówienie w swojej kolejce. Dla każdego SAS istnieje osobna kolejka, która jest przetwarzana przez osobny wątek. Harmonogram jest informowany po pomyślnym zapisaniu.
  • Gdy harmonogram otrzyma wiadomości z dwóch podsystemów, ustawia status zamówienia na Zamknięte i informuje podsystem o wiadomościach.
  • Podsystem wysyłania wiadomości ponownie umieszcza zamówienie w swojej kolejce. Istnieje również oddzielna kolejka dla każdego SAS, która jest przetwarzana przez oddzielny wątek. Ponieważ zamówienie jest już zamknięte dla harmonogramu, nie ma tutaj końcowego raportowania.
  • W ten sposób przetwarzanie jest zakończone w SOM.

Określona procedura pomaga w wykorzystaniu zasobów niezbędnych do realizacji zamówienia (w tym również niezbędnych serwerów) tak efektywnie, jak to możliwe, bez ich przeciążania.

Priorytety zleceń

Podsystem tworzenia raportów obsługuje zadania wyjściowe podczas przetwarzania priorytetów. Wszystkie procesory raportów działają zgodnie z tą samą regułą w standardowej konfiguracji: Jeśli następne zlecenie ma zostać wybrane dla wolnego procesora raportów, z kolejki wybierane jest zlecenie o najwyższym priorytecie. Jeśli istnieje kilka zleceń o tym samym priorytecie, wybierane jest pierwsze (najstarsze) zamówienie.

Raz rozpoczęte zlecenie nie zostanie anulowane przez procesor raportów w przypadku otrzymania innego zlecenia o wyższym priorytecie. W najtrudniejszych sytuacjach, standardowa konfiguracja może spowodować, że wszystkie procesory raportów będą zaangażowane w długotrwałe raporty, a zlecenia o wyższych priorytetach będą musiały czekać. Aby uniknąć takiej sytuacji, można oddzielnie określić dla każdego procesora raportów, że może on przetwarzać zlecenie o określonym priorytecie (minimalnym/maksymalnym). W ten sposób, na przykład, procesor raportów może być zarezerwowany dla zleceń o wysokim priorytecie, które nie mogą być blokowane przez długo działające zlecenia (pod warunkiem, że mają niższy priorytet). Możliwa jest również sytuacja odwrotna; minimalne i maksymalne priorytety procesorów raportów można skonfigurować w taki sposób, aby zlecenia o niższym priorytecie mogły być przetwarzane tylko przez procesor raportów.

Konfiguracja

System Output Manager

Folder konfiguracji

Podczas instalacji SOM w folderze instalacyjnym tworzony jest podfolder config. Po instalacji katalog ten zawiera następujące pliki:

  • server.properties – plik konfiguracyjny
  • localhost.jks – certyfikat dla „localhost” w formacie „*.jks”
  • localhost.pfx – certyfikat dla „localhost” w formacie „*.pfx”

Plik server.properties jest używany jako szablon i musi zostać odpowiednio dostosowany (więcej w Plik konfiguracyjny). Certyfikaty „localhost” nie są wymagane w normalnej pracy, służą wyłącznie do celów demonstracyjnych/testowych. Zamiast tego, certyfikat musi być przechowywany w tym katalogu (format „*.jks”), który jest nazwany zgodnie z rzeczywistą nazwą hosta SOM.

Plik konfiguracyjny

Plik konfiguracyjny dostarczony jako szablon (server.properties) zawiera wszystkie standardowe ustawienia dla SOM. Poszczególne wpisy muszą zostać dostosowane; dotyczy to w szczególności nazw hostów SOM i serwera SMTP, który ma być używany.

Poniższe rozdziały opisują istniejące parametry konfiguracyjne i ich znaczenie.

Ustawienia dla zintegrowanego web servera

Poniższe parametry służą do konfiguracji zintegrowanego web servera:

  • com.cisag.sys.www.daemon.baseURI

Za pomocą tego parametru określany jest adres bazowy (-URL) SOM, na przykładhttps://som.yourcompany.com:8443. Wszystkie zapytania (HTTPS) wysyłane do SOM muszą używać tego adresu bazowego. Adres bazowy określa log, nazwę serwera (nazwę hosta) i numer portu. Nazwa serwera musi być również zgodna z nazwą pliku certyfikatu serwera (na przykład: som.yourcompany.com.jks), a certyfikat musi być utworzony dla tej nazwy.

  • com.cisag.sys.www.daemon.bindURI

Za pomocą tego parametru można wybrać specjalny interfejs sieciowy. Zazwyczaj wybór interfejsu sieciowego odbywa się poprzez nazwy serwerów (com.cisag.sys.www.daemon.baseURI). Można także określić alternatywną nazwę za pomocą „bindURI”, a tym samym żądany interfejs sieciowy.

  • com.cisag.sys.www.daemon.needClientAuth

Za pomocą tego parametru można określić, czy certyfikat (klienta) jest wymagany do uwierzytelnienia. Ustawienie wstępne (true) dla tych parametrów nie może zostać zmienione.

Ustawienia dostępu ODBC

Poniższe parametry służą do konfiguracji sterownika ODBC używanego przez SOM.

  • somodbc.certname

Ten parametr określa nazwę, pod którą certyfikat użytkownika dla dostępu ODBC został zapisany w magazynie certyfikatów osobistych (przy użyciu kreatora importu certyfikatów). Nazwa ta jest zwykle identyczna z nazwą zwyczajową (CN) z certyfikatu. W wybranym przykładzie jest to som.yourcompany.com, czyli nazwa serwera SOM.

  • somodbc.timeout

Ten parametr pozwala określić czas (w sekundach), po którym komunikacja między SOM (sterownik ODBC) a SAS (serwer ODBC) musi zostać przerwana z błędem „Timeout”. Wstępnie ustawiona wartość to 15 minut (900 sekund). Jeśli podczas długich raportów (lub przy dużym obciążeniu serwera) wystąpią odpowiednie komunikaty o błędach ODBC (np. wyświetlanie zdarzeń w systemie Windows), wartość tego parametru należy zwiększyć, jeśli to możliwe.

Ustawienia drukarki faksu

Drukarki mogą być oznaczone jako „drukarki faksowe” za pomocą tego parametru. Są one traktowane w Comarch ERP Enterpsie jako faks, jeśli mają takie oznaczenie. Zazwyczaj takie „drukarki faksowe” są przygotowywane przez odpowiednich producentów zewnętrznych.

fax.printerNames

Należy wprowadzić nazwy odpowiednich drukarek jako wartość, oddzielając je znakiem „|”, jeśli jest to wymagane.

Przykład
Przykład:

fax.printerNames=MyFaxPrinter

lub

fax.printerNames=FaxPrinter1|FaxPrinter2

Ustawienia dla serwera poczty

Poniższe parametry służą do konfiguracji serwera SMTP używanego przez SOM.

  • mail.smtp.host

W tym miejscu wprowadza się (pełną) nazwę hosta serwera poczty, który ma być używany przez SOM do wysyłania wiadomości e-mail.

  • mail.smtp.user

Jeśli serwer pocztowy jest skonfigurowany w taki sposób, że konieczne jest uwierzytelnienie, nazwa użytkownika może być określona za pomocą tego parametru.

  • mail.smtp.pwd

Jeśli serwer pocztowy jest skonfigurowany w taki sposób, że konieczne jest uwierzytelnianie, hasło można określić za pomocą tego parametru.

  • mail.smtp.from

Niektóre serwery pocztowe nie pozwalają na wysyłanie wiadomości z losowym adresem nadawcy („Od”). W takim przypadku parametr ten może być użyty do określenia adresu, który może być zaakceptowany przez serwer pocztowy. Zazwyczaj adres ten musi być zgodny z zalogowanym użytkownikiem (mail.smtp.user). Gdy ta opcja jest używana, określony adres nadawcy jest wprowadzany we wszystkich wysyłanych wiadomościach, niezależnie od tego, który adres nadawcy jest używany w powiązanych zadaniach wyjściowych.

  • mail.smtp.port

Jeśli serwer pocztowy nie używa standardowego portu (25), za pomocą tego parametru można określić inną wartość.

Ustawienia procesorów raportów

Poniższe parametry służą do konfiguracji „procesorów raportów” używanych przez SOM.

  • rptproc.poolsize

Ten parametr może być użyty do ustawienia maksymalnej liczby „równoległych procesorów raportów”. Domyślne ustawienie to 3 procesory (co odpowiada 3 procesom Windows). Zazwyczaj wartość ta jest dobrym kompromisem między przepustowością a wymaganiami dotyczącymi zasobów. Powinna być zwiększona tylko wtedy, gdy pozwala na to wydajność zaangażowanych serwerów (SOM, SAS, serwer ODBC, baza danych).

  • rptproc.minprio
  • rptproc.maxprio

Z rptproc.minprio.i=Pmin lub rptproc.maxprio.i=Pmax, minimalny / maksymalny priorytet zamówienia jest ustawiony dla procesora raportu i, który może edytować, gdzie wartości Pmin lub Pmax muszą wynosić od 1 do 100 (włącznie w każdym przypadku).

Priorytety od wartości 1 (najwyższy) do 9 (najniższy) są dostępne w aplikacjach Comarch ERP Enterprise (tj. w interfejsie). Jednak wewnętrznie lub w SOM używane są wartości od 1 (najniższa) do 100 (najwyższa). Poniższa tabela umożliwia konwersję tych wartości:

Comarch ERP Enterprise (interfejs) SOM (wewnętrzny)
1 (najwyższy priorytet) 100
2 (wysoki priorytet) 88
3 (wysoki priorytet) 75
4 (średni priorytet) 63
5 (średni priorytet) 50
6 (średni priorytet) 38
7 (niski priorytet) 25
8 (niski priorytet) 13
9 (najniższy priorytet) 1
Przykład
Przykład 1:

rptproc.poolsize=4

rptproc.minprio.1=100

#rptproc.maxprio.1=100

„Procesor 1” z łącznej liczby 4 procesorów jest zarezerwowany dla zleceń o priorytecie 100 (najwyższy priorytet). Wartości domyślne mają zastosowanie do procesorów 2, 3 i 4 (rptproc.minprio.x=1 i rptproc.maxprio.x=100). Tak więc zadania o priorytetach 1-99 są dzielone tylko na procesory 2, 3 i 4. Zlecenia o priorytecie 100 mogą być przetwarzane przez wszystkie cztery procesory.

Przykład 2:

rptproc.poolsize=3

rptproc.minprio.1=2

rptproc.minprio.2=2

#rptproc.minprio.3=1

rptproc.maxprio.3=1

„Procesor 3” z całkowitej liczby 3 procesorów jest zarezerwowany dla zleceń z priorytetem 1 (najwyższy priorytet). Procesory 1 i 2 są skonfigurowane w taki sposób, że nie przetwarzają żadnych zleceń z priorytetem 1. Zlecenia te mogą być przetwarzane wyłącznie przez procesor 3.

Wskazówka
Procesory są wymagane nie tylko do wydruku, ale także do analizy plików *.RPT. Takie zapytania są używane przez aplikację Raport: Dokumenty raportów w celu uzyskania informacji o parametrach użytych w raporcie. Zapytania te mogą mieć najwyższy priorytet (100), ale mogą być przetwarzane tylko wtedy, gdy odpowiedni procesor jest wolny. Gdy wszystkie procesory zostaną przydzielone, odpowiednie aplikacje mogą zostać odpowiednio zaplanowane. Aby uniknąć opóźnień spowodowanych długo działającymi raportami, należy zarezerwować co najmniej jeden procesor dla zleceń o priorytecie 100 (patrz przykład 1); zadania wyjściowe muszą zwykle mieć priorytet 100 tak rzadko, jak to możliwe.
  • rptproc.reportcache

Każdy procesor raportów ma wewnętrzną pamięć podręczną (LRU) dla szablonów raportów (*.rpt). Za pomocą tego parametru można określić, ile szablonów raportów można zapisać w tej pamięci podręcznej. Wstępnie ustawionych jest 10 szablonów raportów. Ogólnie rzecz biorąc, wartość ta oznacza dobry kompromis między czasem dostępu a wykorzystaniem pamięci i należy ją zwiększyć tylko wtedy, gdy pozwala na to dostępna pamięć RAM.

  • rptproc.checkTableMask

Za pomocą tego parametru można określić, że szablony raportów muszą zostać przetestowane przed użyciem pod kątem ich poziomu aktualizacji (w odniesieniu do zmian w bazie danych). Jeśli ta opcja zostanie użyta, a szablon raportu nie pasuje do schematu bazy danych, generowanie raportu zostanie anulowane z błędem. Istnieją różne rodzaje zmian. Typy zmian, które mają prowadzić do anulowania, można określić za pomocą maski bitowej. Poniższa tabela przedstawia przypisanie między zmianą a wartością bitu:

Błąd (zmiana) Wartość
DATABASENOTFOUND 0x00000001
SERVERNOTFOUND 0x00000002
SERVERNOTOPENED 0x00000004
ALIASCHANGED 0x00000008
INDEXESCHANGED 0x00000010
DRIVERCHANGED 0x00000020
DICTIONARYCHANGED 0x00000040
FILETYPECHANGED 0x00000080
RECORDSIZECHANGED 0x00000100
ACCESSCHANGED 0x00000200
PARAMETERSCHANGED 0x00000400
LOCATIONCHANGED 0x00000800
DATABASEOTHER 0x00001000
NUMFIELDSCHANGED 0x00010000
FIELDOTHER 0x00020000
FIELDNAMECHANGED 0x00040000
FIELDDESCCHANGED 0x00080000
FIELDTYPECHANGED 0x00100000
FIELDSIZECHANGED 0x00200000
NATIVEFIELDTYPECHANGED 0x00400000
NATIVEFIELDOFFSETCHANGED 0x00800000
NATIVEFIELDSIZECHANGED 0x01000000
FIELDDECPLACESCHANGED 0x02000000
Uwaga
Nie zaleca się używania tej opcji, ponieważ często „nieszkodliwe” zmiany są postrzegane jako błędy.
Parametry specjalne do rozwiązywania problemów

Poniższe parametry mogą być używane do ograniczania błędów lub rozszerzonego „logowania”. Nie są one przeznaczone do pracy produkcyjnej i mogą znacznie zmniejszyć szybkość przetwarzania, na przykład ze względu na ilość danych wyjściowych.

Ponieważ wymienione tutaj wpisy są już wprowadzone do pliku konfiguracyjnego, ale wyłączone przez „#” na początku linii (nieskomentowane). Można je aktywować po prostu usuwając ten znak.

  • com.cisag.sys.www.daemon.connection.traceProcessingTime=true

Za pomocą tej opcji zintegrowany serwer WWW jest instruowany, aby rejestrować każdy dostęp, gdzie URI i wymagany czas są wyprowadzane.

  • javax.net.debug=ssl:handshake

Opcja implementacji SSL/TLS jest instruowana, aby wyprowadzać informacje poprzez strukturę połączenia (w tym wymianę certyfikatu).

  • mail.debug=true

Za pomocą tej opcji można monitorować komunikację między SOM a serwerem poczty.

Czcionki

Jeśli w raportach lub kuponach używane są specjalne czcionki lub symbole, należy je również zainstalować na komputerze SOM. Dotyczy to również obsługi specjalnej podkategorii Unicode.

Rejestracja Microsoft Windows

Dane konfiguracyjne usługi Windows, sterownika ODBC i mechanizmu drukowania Crystal Reports są zapisywane w bazie danych rejestracji („Rejestrze”) systemu Microsoft Windows. Dane te są automatycznie ustawiane przez program instalacyjny i nie wolno ich zmieniać. Jeśli w wyjątkowych przypadkach jest to konieczne, wybrane wpisy są opisane tutaj.

Uwaga
Jeśli wymagana jest zmiana w rejestrze systemu Windows, należy pamiętać o uwagach zawartych w bazie wiedzy Microsoft Knowledge Base (pozycja 256986).
Usługa SOM

HKLM\SYSTEM\CurrentControlSet\Services\somsvc\Parameters

Linia poleceń jest określana na początku SOM za pomocą parametru CommandLine=…. W razie potrzeby można tu bezpośrednio wprowadzić ścieżkę do zainstalowanego JDK/JRE i/lub przekazać do JVM dodatkowe parametry.

Silnik druku Crystal Reports

HKLM\SOFTWARE\Crystal Decisions\9.0\Crystal Reports\Export\PDF

Za pomocą parametru ForceLargerFonts=1, Crystal Reports jest instruowany, aby używać tej samej czcionki podczas generowania plików PDF, jak w przypadku wydruku na drukarce. Jeśli ten parametr zostanie usunięty lub ustawiony na 0, Crystal Reports zachowuje się jak w poprzednich wersjach i używa zmniejszonego rozmiaru czcionki w plikach PDF.

SAS i system

Aby upewnić się, że SOM może być używany przez SAS systemu Comarch ERP Enterprise, konieczne są następujące kroki konfiguracji:

  • System Comarch ERP Enterprise musi zostać poinformowany o SOM poprzez połączenie System Output Manager w aplikacji Panel system.
  • Należy utworzyć certyfikat dla SOM (musi on być dostępny w formatach *.pfx i *.jks).
  • W systemie musi być dostępny użytkownik dla SOM (z uprawnieniami administratora).
  • Należy zapewnić dedykowany serwer dla dostępu ODBCAby zapewnić możliwość korzystania z poszczególnych drukarek, faksów i poczty w Comarch ERP Enterprise, należy je wprowadzić w aplikacji Urządzenia wydruku i przypisać odpowiednie role uprawnień za pomocą aplikacji Role uprawnień.

Szczegółowy opis niezbędnych kroków można znaleźć w dokumentacji instalacyjnej System Output Manager (SOM).

Panel system

Aby serwer aplikacji systemu Comarch ERP Enterprise mógł uzyskać dostęp do SOM, musi zostać wprowadzony do systemu. Do tego celu służy kategoria Połączenie z ERP Comarch ERP Enterprise Output Manager w aplikacji Panel system. SOM musi mieć możliwość ponownego dostępu do SAS (w szczególności do plików .rpt, Knowledge Store i serwera ODBC). Aby to umożliwić, należy zapewnić odpowiedniego użytkownika dla SOM i przypisać go do systemu.

Połączenie System Output Manager

Aby serwer aplikacji systemu Comarch ERP Enterprise mógł uzyskać dostęp do SOM, musi zostać wprowadzony do systemu. Do tego celu służy kategoria Połączenie z ERP Comarch ERP Enterprise Output Manager w aplikacji Panel systemSOM musi mieć możliwość ponownego dostępu do SAS (w szczególności do plików .rptKnowledge Store i serwera ODBC). Aby to umożliwić, należy zapewnić odpowiedniego użytkownika dla SOM i przypisać go do systemu.

Dla połączenia System Output Manager istotne są następujące wartości:

  • Server URI

  • Połączenia

  • Serwer docelowy ODBC

Aby serwer aplikacji systemu Comarch ERP Enterprise mógł uzyskać dostęp do SOM, musi zostać wprowadzony do systemu. Do tego celu służy kategoria Połączenie z ERP Comarch ERP Enterprise Output Manager w aplikacji Panel systemSOM musi mieć możliwość ponownego dostępu do SAS (w szczególności do plików .rptKnowledge Store i serwera ODBC). Aby to umożliwić, należy zapewnić odpowiedniego użytkownika dla SOM i przypisać go do systemu.

W polu SOM URI należy wprowadzić wartości logu, nazwy hosta i portu. Za ich pośrednictwem SOM będzie dostępny w sieci. Wartości te muszą być zgodne z wpisami w pliku konfiguracyjnym SOM (com.cisag.sys.www.daemon.baseURI).

W polu Połączenie można określić maksymalną liczbę połączeń, które SAS może jednocześnie (równolegle) używać dla tego SOM. Standardową wartością jest 5. Zwykle nie jest konieczne używanie innej wartości, jednak może to być przydatne w następujących przypadkach:

  • Jeśli używany jest więcej niż jeden SOM, największa wartość decyduje o tym, który SOM będzie używany dla parserów plików .rpt.

  • Jeśli wielu użytkowników pracuje z aplikacjami Artykuły lub Raport: Dokumenty raportu.

  • Wykorzystanie SOM można wyłączyć za pomocą wartości 0.

W polu Docelowy serwer ODBC można użyć określonego SAS jako specjalnego serwera ODBC. Bez tego wpisu SOM zawsze wysyła zapytania ODBC do SAS, z którego otrzymał dane zadanie wyjściowe.

Uwaga
Utworzenie, usunięcie lub zmiana połączenia System Output Manager jest skuteczne dopiero po ponownym uruchomieniu SAS. Po zmianie należy ponownie uruchomić wszystkie SAS, aby wszystkie SAS korzystały ze zbiorczej bazy danych.
Serwer aplikacji

Każdy SAS, który ma obsługiwać zapytania ODBC SOM, musi być skonfigurowany do nieograniczonego dostępu ODBC. Liczba połączeń z bazą danych musi być odpowiednio mierzona. Dla każdego procesora raportów SOM muszą być dostępne 3 połączenia z bazą danych. SOM działa jednocześnie w standardowej konfiguracji z maksymalnie 3 procesorami raportów, więc tylko w tym przypadku wymagane jest 9 połączeń z bazą danych (na SOM). Muszą istnieć 3 inne połączenia z bazą danych jako rezerwa bezpieczeństwa. Jeśli SAS jest wymagany do wykonywania innych zadań i/lub obsługi użytkowników interaktywnych (ODBC), to naturalnie musi być więcej połączeń z bazą danych.

W przypadkach, gdy SOM ładuje pliki .rpt, przechowuje pliki w Knowledge Store lub wysyła wiadomości, połączenia z bazą danych są również wymagane w danym SAS. W tym przypadku (każdy) SOM na typ dostępu wymaga tylko jednego połączenia z bazą danych. Dlatego zarezerwowanie 3 połączeń z bazą danych (na SOM) dla bazy danych repozytorium i po jednym połączeniu z bazą danych OLTP powinno wystarczyć.

Użytkownik

Aby zapewnić SOM dostęp do SAS, należy utworzyć użytkownika. Kategorią wartości musi być Serwer. Gwarantuje to, że na tym koncie nie można uruchamiać żadnych aplikacji dialogowych, a jednocześnie zapewnia, że żadna licencja użytkownika nie jest wykorzystywana z tego powodu. Certyfikat, który został ustawiony dla SOM i zapisany w jego folderze konfiguracyjnym, musi zostać zaimportowany do tabeli Identyfikacje.

Wskazówka Jeśli używanych jest kilka modułów SOM, mogą one korzystać z tego samego użytkownika. Wystarczy przypisać temu użytkownikowi certyfikat danego modułu SOM. W tej procedurze traci się inną istniejącą unikalność nazwy użytkownika, co może powodować problemy w niektórych komunikatach lub wyświetlaczach.

Grupa użytkowników

Użytkownik SOM wymaga uprawnień administratora i musi być dołączony do grupy użytkowników ADMINISTRATORZY.

System

Użytkownik SOM musi być przypisany do systemu jako Pracownik (typ licencji) z Pełnym dostępem (tryb dostępu).

Urządzenia wyjściowe

Drukarki i faksy mogą być dodawane do SOM lub usuwane w czasie pracy, o ile nie jest konieczne ponowne uruchomienie SOM lub SAS. Aby używać drukarek lub faksów w systemie Comarch ERP Enterprise, muszą one być przypisane do urządzenia wyjściowego.

Za pomocą aplikacji Urządzenia można tworzyć zadania wyjściowe i przypisywać do nich w systemie Comarch ERP Enterprise drukarkę, urządzenie faksowe lub bramę e-mail SOM (dokładnie po jednym).

Role autoryzacji

Za pomocą Ról uprawnień można skonfigurować uprawnienia dostępu do urządzeń wyjściowych.

Urządzenia wyjściowe

Urządzenia wyjściowe mogą być używane przez użytkowników tylko wtedy, gdy są do tego upoważnieni. Urządzeniom wyjściowym można przypisać rolę autoryzacji na zakładce Dodatkowe obiekty w aplikacji Role uprawnień.

Podłączanie rozwiązań faksowych

Istnieje również możliwość podłączania faksów przez zewnętrzne generatory. Warunkiem wstępnym jest, aby te rozwiązania faksowe zapewniały tak zwaną „drukarkę faksu” odpowiednią do działania serwera. Drukarka faksu musi być w stanie wyodrębnić wszystkie niezbędne parametry (zwłaszcza numer faksu) z dokumentu, który ma zostać wysłany. Nie może używać do tego żadnego okna dialogowego.

Aby móc używać takiej drukarki faksowej w systemie Comarch ERP Enterprise jako faksu, musi ona być odpowiednio oznaczona w pliku konfiguracyjnym SOM (patrz Ustawienia drukarki faksu).

Drugim warunkiem wstępnym jest to, aby wszystkie parametry, które wymagają drukarki faksu, znajdowały się w dokumencie do wydrukowania i były drukowane wraz z nim. Zazwyczaj rozwiązania faksowe umożliwiają obsługę parametrów za pomocą ciągów znaków w celu nadania im unikalnej identyfikacji. Dokumenty i pliki, które mają być wysyłane za pośrednictwem drukarki faksowej, muszą być odpowiednio skonfigurowane.

Aby wesprzeć oprogramowanie faksu w tym celu, SOM zapewnia szereg parametrów (zmiennych systemowych), które mogą być wyprowadzane przez Crystal Reports. Parametry te obejmują wszystkie specyficzne dla faksu ustawienia wyjściowe danych zleceń wyjściowych:

Zmienna systemowa Wartość
FAX_RECIPIENT_NUMBER Pole Nr faksu w ustawieniach wyjściowych dla nośnika wyjściowego Faks.
FAX_TRANSMITTING_STATION_ID Pole Identyfikator nadawcy w ustawieniach wyjściowych dla nośnika wyjściowego faks.
FAX_SCHEDULE_ACTION Pole Wysyłanie w ustawieniach wyjściowych dla nośnika wyjściowego faks. Możliwe wartości: Natychmiast, Nie wcześniej niż, W korzystnej taryfie.
FAX_SCHEDULE_TIME Pole Czas wysłania w w ustawieniach wyjścia dla nośnika wyjściowego faks. Ma znaczenie, gdy FAX_SCHEDULE_ACTION ma wartość Nie wcześniej niż.
FAX_DELIVERY_REPORT_ADDRESS Adres e-mail użytkownika do generowania automatycznego potwierdzenia.
FAX_CONTROL_SEQUENCE Pole Sekwencja znaków kontrolnych używane do przesyłania danych do rozwiązania faksu.

Zarządzanie i monitorowanie

System Output Manager

Zintegrowany serwer internetowy SOM umożliwia dostęp do określonych informacji o stanie SOM. Dostępne są następujące identyfikatory URI:

URI Informacje
/conf Wyświetla wszystkie właściwości systemu Java, takie jak ustawienia z pliku konfiguracyjnego SOM.
/printers Wyświetla listę wszystkich zainstalowanych urządzeń wyjściowych i ich aktualny status. Za pomocą
hiperłączy można wyświetlić aktualne zadania dla poszczególnych urządzeń wyjściowych.
/jobs Wyświetla listę wszystkich zadań dla wszystkich urządzeń wyjściowych łącznie. Najpierw wyświetlane są zadania aktywne, a następnie zakończone.
/logs Zapewnia dostęp do plików dziennika SOM.

SAS i system

Zadania wyjściowe

Status wygenerowanych zleceń wyjściowych można wyświetlić za pomocą aplikacji Zlecenia wydruku. Oprócz ogólnego statusu (W trakcie, Zamknięte…) szczegółowe informacje o zleceniu, jego parametrach lub statusie (w tym komunikaty o błędach) można wyświetlić za pomocą przycisku [Właściwości].

Aplikacja umożliwia również kopiowanie pojedynczych zadań wyjściowych i generowanie za jej pomocą nowych.

Urządzenia wyjściowe

Oprócz tworzenia i utrzymywania urządzeń wyjściowych, aplikacja ta umożliwia także zachowywanie poszczególnych zadań wyjściowych. Po zatrzymaniu urządzenia wyjściowego kolejne zadania wyjściowe nie są natychmiast przekazywane do SOM, ale są buforowane do momentu ponownego usunięcia blokady urządzenia wyjściowego.

Zapytanie o status urządzenia wyjściowego

Status urządzeń wyjściowych utworzonych w systemie Comarch ERP Enterprise jest sprawdzany w tej aplikacji (np. zatrzymanie drukarki, niedostępność SOM, brak papieru).

Uwaga
Wyświetlacz nie jest aktualizowany automatycznie; odbywa się to za pomocą przycisku [Aktualizuj] na pasku przycisków. Wyświetlany status drukarki odpowiada statusowi w systemie Microsoft Windows. Rzeczywisty stan może być inny w zależności od sterownika i typu połączenia.

Panel system
Połączenie System Output Manager

Zakładka Zlecenia wyświetla bieżące zlecenia powiązanych modułów SOM. Wyświetlanie odpowiada danym w SOM poprzez URI /jobs.

Wskazówka
Wyświetlanie zleceń jest możliwe tylko przy posiadaniu dostępu do System Output Manager (przez https w URI serwera) i zaakceptowaniu certyfikatu klienta przez SOM.

Instrukcje

Instalacja drukarki

Uwaga
Dodawanie drukarki może odbywać się podczas uruchomionej operacji i nie wymaga ponownego uruchamiania SOM lub serwera aplikacji. Zaleca się instalację drukarki bezpośrednio (lokalnie) na komputerze SOM oraz używanie najnowszych, certyfikowanych sterowników.

  1. Należy zainstalować drukarkę w systemie Windows zgodnie z instrukcjami producenta.

  2. Należy sprawdzić, czy drukarka działa poprawnie w systemie Windows (np. wydruk strony testowej).

  3. Należy zweryfikować, czy drukarka jest rozpoznawana przez SOM (URI /printers).

  4. Należy uruchomić aplikację Urządzenia.

  5. Należy wybrać przycisk [Nowy].

  6. W oknie dialogowym Fizyczne urządzenia, w polu Sposób wydania, należy wybrać Drukarka i kliknąć [Start].

  7. Należy wybrać nową drukarkę z listy.

  8. W polu Urządzenie należy wprowadzić nazwę nowego urządzenia.

  9. Należy sprawdzić i dostosować pozostałe pola.

  10. Należy wybrać przycisk [Zapisz].

  11. Należy zweryfikować w aplikacji Zapytaj o status wydania, czy urządzenie jest poprawnie wyświetlone.

  12. Należy sprawdzić poprawność działania wyjścia za pomocą aplikacji Raport: Dokumenty raportu.

Usuwanie drukarki

Uwaga
Przed usunięciem należy upewnić się, że drukarka nie jest używana w systemie oraz że w kolejce SOM nie ma żadnych zamówień dla tej drukarki. Odinstalowanie drukarki podczas uzyskiwania do niej dostępu może prowadzić do poważnych błędów.

  1. W przypadku usuwania powiązanych urządzeń wyjściowych, należy wyszukać ich zastosowania w Szablonach dokumentów lub Ustawieniach użytkownika.

  2. Należy użyć aplikacji Urządzenia do usunięcia urządzenia.

  3. Należy usunąć drukarkę w komputerze SOM.

  4. Należy sprawdzić rozpoznanie usunięcia przez SOM (URI /printers).

  5. Należy zweryfikować w aplikacji Zapytaj o status wydania poprawne usunięcie urządzeń.

Instalacja lub aktualizacja sterownika drukarki

Uwaga
Wymiana sterownika nie może mieć miejsca podczas pracy, ponieważ SOM stale korzysta z drukarki. Należy również kontrolować, aby lokalne drukarki klienta nie były aktywowane w SOM poprzez dostęp do pulpitu zdalnego.

Diagnostyka błędów

Pliki dziennika

SOM zapisuje pliki dziennika w podkatalogu logs. Zarządzane są tam dwa rodzaje plików:

  • somsvc.log – używany przez usługę Windows; rejestruje komunikaty przed i w trakcie uruchamiania SOM.

  • som-0.log do som-4.log – używane do regularnych wyjść i błędów. Pliki są kroczące (maksymalnie 1 MB). Najnowsze wiadomości znajdują się w som-0.log.

Dostęp do plików dziennika możliwy jest przez przeglądarkę (https://som-hostname:8443/logs).

Kody błędów Crystal Reports
Kod błędu Opis
513 (INVALIDPRINTER) Nie można znaleźć sterownika drukarki dla określonej drukarki.
525 (BADREPORTFILE) Plik z szablonem raportu (.rpt) jest uszkodzony lub nieczytelny.
536 (DATABASELOGON) Utrata połączenia z serwerem ODBC (timeout). Należy sprawdzić dziennik zdarzeń Windows.
998 (BŁĄD WEWNĘTRZNY) Błąd wewnętrzny w mechanizmie drukującym, często związany z brakiem połączenia ODBC.

Wyświetlanie zdarzeń

Usługa SOM i serwer ODBC używają wyświetlacza zdarzeń systemu Windows do prezentowania komunikatów o błędach. Powiadomienia ODBC są również rejestrowane w plikach dziennika usługi SOM. W przypadku problemów z połączeniem należy sprawdzić logi odpowiedniego serwera ODBC.

Czy ten artykuł był pomocny?