Iron POI Excel Server (Fe)
Iron POI Excel Serwer to serwer usług wspierających czytanie plików w formacie MS Excel (*.xlsx) na potrzeby aplikacji procesowych tworzonych za pomocą narzędzia IBM BAW (IBM Business Automation Workflow) oraz IBM BPM (IBM Business Process Manager). Implementacja oparta między innymi o biblioteki Apache POI (Poor Obfuscation Implementation).
Iron
powstał on w odzewie na potrzebę przetwarzania dużych ilości danych składowanych w plikach MS Excel. Dotychczasowe rozwiązania polegały na budowaniu integracji Java, które zaczytywały dane do pamięci serwera IBM BAW/BPM, co często powodowało wyjątki „Out Of Memory” samego serwera. Aby zapobiegać tego rodzaju wyjątkom przeprowadza się odpowiednią konfigurację użycia bardzo dużej puli pamięci, co z kolei powoduje problemy wydajnościowe oczyszczania tej przestrzeni przez mechanizmy maszyny wirtualnej Java (JVM).
Nowe rozwiązanie pozwala na wydzielenie mechanizmów odczytu plików Excel poza serwer IBM BAW/BPM, a nawet umieszczenie serwera usług Iron na osobnej maszynie. Jednocześnie do instancji procesów przesyłana jest minimalna, przetworzona liczba danych, jaka jest niezbędna do kontynuacji procesu. Do komunikacji z serwerem przygotowana została biblioteka narzędziowa MS Office Toolkit (IBOOT), pozwalająca na szybką integrację z aplikacjami procesowymi. Do przetwarzania dokumentów Excel możemy wykorzystać dowolną liczbę instancji Iron, co powoduje, że całościowe rozwiązanie charakteryzuje się wysoką skalowalnością, pozwalającą na masowe przetwarzanie plików.
Wraz z rozwojem produktu zaimplementowano również mechanizmy związane z generacją raportów. Generację oparto o rozwiązania dostępne w JasperReports® Library. Dzięki integracji z Mercury DB 3.0 (HgDB), który został jest zdefiniowany jako źródło danych, można generować raporty i dokumenty definiowane w szablonach, te zaś można tworzyć i edytować za pośrednictwem oprogramowania Jaspersoft Studio.
Architektura integracji z IBM BPM
Poniej znajduje opis elementów architektury integracji z systemem IBM BAW/BPM:
- Instancja serwera usług Iron POI Excel Serwer
- Instancja serwera IBM BAW/BPM (serwer zarządzania procesami)
- Portal IBM BPM – warstwa prezentacyjna obsługująca formularze zadań procesowych
- Komunikacja z serwerem za pomocą komponentów biblioteki narzędziowej. Zaczytywanie danych zawartych w plikach za pośrednictwem wystawionych na serwerze Iron POI Excel Serwer usług
REST
. W komunikacji pośredniczy integracja klientaHTTP/HTTPS
. - Bezpośrednia komunikacja komponentów formularza zadania z serwerem Iron Iron POI Excel Serwer za pośrednictwem usług
REST
. Usługi pozwalają na ładowanie danych do tabeli, ich filtrowanie i zaznaczanie wierszy bez pośrednictwa serwera IBM BAW/BPM. - Za pomocą integracji przesłanie tylko niezbędnych danych do instancji procesu Aplikacji procesowej.
API (REST)
Iron POI Excel Serwer ma zaimplementowane następujące usługi REST:
- Pobranie danych z pliku Excel metodą GET. W wyniku otrzymamy listę wierszy odpowiadającą zdefiniowanej stronie wyników.
- Pobieranie unikalnych wartości znajdujących się w danej kolumnie pliku Excel wraz z możliwością ich filtrowania (możliwość użycia tzw. porównywania ‘wildcard’, gdzie znak ‘*’ reprezentuje dowolny ciąg znaków, a znak ‘?’ dowolny pojedynczy znak).
- Filtrowanie wierszy pliku Excel na podstawie zadanych kryteriów
- Pobieranie wskazanych (zaznaczonych) wierszy z pliku Excel.
- Zapis danych do plików Excel.
W ramach usług związanych z generacją raportów i dokumentów opartych o szablony zostały udostępnione:
- Usługa ładowania/aktualizacji plików z szablonami utworzonymi za pośrednictwem Jaspersoft Studio.
- Przegląd aktywnych transakcji związanych z generacją dokumentów.
- Możliwość zatrzymania (zabicia) aktywnej transakcji z generacją dokumentów.
Iron POI Excel Serwer w akcji
Poniżej prezentacja działania usług produktu Iron POI Excel Serwer w integracji z oprogramowaniem IBM BPM:
Wsparcie
W razie problemów proszę o kontakt mailowy na adres info@scisoftware.pl. W temacie wiadomości prosimy wpisać prefiks: [Iron POI Excel Serwer].