Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

KS-Integracja mgr inż. Tomasz Latko Przedsiębiorstwo Informatyczne KAMSOFT.

Podobne prezentacje


Prezentacja na temat: "KS-Integracja mgr inż. Tomasz Latko Przedsiębiorstwo Informatyczne KAMSOFT."— Zapis prezentacji:

1 KS-Integracja mgr inż. Tomasz Latko Przedsiębiorstwo Informatyczne KAMSOFT

2 Spotkanie Partnerów Omawiane zagadnienia omówienie podstaw integracji przedstawienie budowy poszczególnych tabel oraz pakietów mających wpływ na system integracji opis funkcji programu KS-INTEGRATOR opis sposobu wdrożenia integracji częste pytania

3 Spotkanie Partnerów Dokumentacja techniczna Dostępne dokumenty techniczne: KSStd_Integracja_Instrukcja.doc – quicktour, najważniejsze informacje o sposobie działania i konfigurowania, oraz odpowiedzi na najczęściej zadawane pytania

4 Spotkanie Partnerów Dokumentacja systemu jakości Dostępne dokumenty systemu jakości: FO1130_01_02 Projekt wdrożenia integracji.xls FO1130_01_02 Projekt wdrożenia integracji SZABLON-MEDYCZNY.xls

5 Spotkanie Partnerów Cel i metody integracji Cel: synchronizacja danych pomiędzy tabelami różnych systemów KS-Integracja – każdy system pracuje na własnych tabelach lokalnych, których zawartość ma być zgodna z tabelami lokalnymi w innych systemach, dane uzgadniane w chwili modyfikacji – tego dotyczy to szkolenie

6 Spotkanie Partnerów Rodzaje integracji integracja jednokierunkowa –jeden system główny (MASTER) i wiele systemów podrzędnych (SLAVE) – tylko w systemie głównym można poprawiać, w systemach lokalnych poprawianie danych integrowanych jest zablokowane integracja dwukierunkowa –jeden system główny (master) i wiele systemów podrzędnych (SLAVE) – w każdym systemie można poprawiać dane INTEGRACJA = JEDEN MASTER, JEDEN LUB WIELE SLAVEÓW

7 Spotkanie Partnerów Podstawowe pojęcia schemat KS – na każdym serwerze musi istnieć schemat o nazwie KS; w wersji minimalnej musi on zawierać tabele z licencjami SLIC i SLIP, najczęściej jest to schemat wspólny – zawierający m.in. tabele konfigurujące systemu integracji schemat lokalny – schemat roboczy, na którym pracuje aplikacja (np.: ZZL)

8 Spotkanie Partnerów Pakiety Pakiety standardowe: –KSCVAR - zawierający definicje zmiennych systemowych –KSCORE - zawierający funkcje jądra systemu –KSUTIL - zawierający funkcje narzędziowe –KSINTUTL - zawierający funkcje narzędziowe systemu integracji Pakiet integracyjny dedykowany dla każdego systemu: –KSINTEGR - zawierający funkcje do modyfikacji danych w integrowanych tabelach, funkcje odczytujący kolejny numer klucza głównego itp. –Minimalny zestaw funkcji dla 1 tabeli: _zmien, _get_id, _get_last_id

9 Spotkanie Partnerów Wyzwalacze i NSYS_INN Wyzwalacz: _INTEGR_BIUD –BEFORE INSERT, UPDATE, DELETE –uczestniczy w procesie nadawania nowego, globalnie unikalnego identyfikatora klucza głównego, oraz sprawdza, czy operacja jest dozwolona ze względu na konfigurację integracji Wyzwalacz: _INTEGR_AIUD –BEFORE INSERT, UPDATE, DELETE –wyzwala proces replikacji po zmianie lokalnej tabeli. Pole: NSYS_INN NUMBER(10) –W każdej tabeli biorącej udział w procesie integracji istnieje pole NSYS_INN Numer(10), jest to pole wypełniane TYLKO chwilowo podczas wykonywania funkcji _ZMIEN pakietu KSINTEGR, zawsze powinno być NULL

10 Spotkanie Partnerów Prawa i synonimy Wszystkie aplikacje wymienione w SSYS (oprócz KS-ZSI) muszą mieć utworzone synonimy do tabel: SAPP, SPRD, SSYS, STBI, STBC, STBP, STBR na swoim schemacie wspólnym Wszystkie aplikacje wymienione w SSYS (oprócz KS-ZSI) muszą mieć SELECT, REFERENCE do tabel: SAPP, SPRD, SSYS, STBI, STBC, STBP, STBR na swoim schemacie wspólnym

11 Spotkanie Partnerów Konfiguracja (1/2) - tabele na schemacie wspólnym TabelaOpisSkąd się biorą wiersze SAPP, SPRD Informacje o wszystkich aplikacjach działających w korporacji. KS-Instal lub KS-Integrator na podstawie KS.SLIC oraz tabeli słownikowej SLIC, SLIP Licencje dla wszystkich systemów działających w korporacji na wszystkich serwerach. KS-Instal lub KS-Integrator na podstawie pliku *.KTL SSYS Działające systemy w ramach korporacji na wszystkich serwerach. Zawiera informację o schemacie wspólnym każdego systemu. Zawartość tabeli taka sama na każdym serwerze organizacji; System integrowany – INTG=T KS-Instal lub KS-Integrator na podstawie KS.SLIC STBISłownik tabel do integracji w systemach KS-Instal lub KS-Integrator: słownik aplikacji STBRRodzaje tabel –system podpowiedzi KS-Integratora KS-Instal lub KS-Integrator: słownik aplikacji STBPUstawienia tabel dla wszystkich systemów KS-Instal lub KS-Integrator na podstawie SSYS i STBI STBCPołączenia integracyjne tabelKs-Integrator

12 Spotkanie Partnerów Konfiguracja (2/2) – tabele i widoki na wszystkich schematach TabelaOpisSkąd się biorą wiersze SLKS Tabela z lokalną konfiguracją schematu. Zawiera jeden wiersz identyfikujący system. KS-Instal lub KS-Integrator na podstawie tabeli SSYS SITB Widok – tabele uczestniczące w integracji dla danego systemu. Widok na bazie tabel SLKS, STBI, STBP SSYS_ITBWidok – połączenia danego systemu. Widok na bazie tabel SLKS, STBI, STBC

13 Spotkanie Partnerów Działanie KS-Integracji – zmiana w tabeli master 1)Modyfikacja danych 2)Wywołuje się wyzwalacz przed zmianą %INTEGR_BIUD – ew. nadanie nowego ID 3)Fizyczna modyfikacja 4)Wywołuje się wyzwalacz po zmianie %INTEGR_AIUD - wywołuje we wszystkich systemach SLAVE procedurę KSINTEGR. _ZMIEN MASTERSLAVE 5)Uruchamia procedurę KSINTEGR. _ZMIEN 6)Pobiera dane o rekordzie z MASTERA 7)Pobiera dane o rekordzie lokalnym i rozstrzyga czy przeprowadzić wstawienie, poprawę czy usunięcie 8)Przeprowadza operację modyfikacji z ustawionym NSYS_INN 10)Powrót do wyzwalacza – zakończenie wyzwalacza 9) Aktualizuje w wierszu NSYS_INN na NULL

14 Spotkanie Partnerów Działanie KS-Integracji – zmiana w tabeli slave 3) Zwraca nową wartość klucza 6) Uruchamia procedurę KSINTEGR. _ZMIEN 7) Pobiera dane o rekordzie ze SLAVEA 8) Pobiera dane o rekordzie lokalnym i rozstrzyga czy przeprowadzić wstawienie, poprawę czy usunięcie MASTERSLAVE 1)Modyfikacja danych 2) Wstawienie -> wywołanie funkcji generującej identyfikator u MASTERA KSINTEGR. _GET_ID 4) Modyfikacja danych 5 )Wywołanie w systemie MASTERA procedury KSINTEGR.TAB_ZMIEN 12)Powrót do wyzwalacza – zakończenie wyzwalacza 9) Przeprowadza operację modyfikacji z ustawionym NSYS_INN 10) Aktualizuje w wierszu NSYS_INN na NULL 11) Wykonuje się wyzwalacz po poprawie, który powiadamia wszystkie pozostałe systemy SLAVE o zmianach: wywołuje procedurę INTEGR.TAB_ZMIEN u pozostałych SLAVEOW.

15 Spotkanie Partnerów KS-INTEGRATOR Zawsze należy zaopatrzyć się w najnowszą wersję programu dostępną na : Q:\PROJPROD\Ogolne\KS-Integrator Lub w serwisie KS-PARTNER

16 Spotkanie Partnerów Funkcje programu KS-Integrator Podstawowa i zaawansowana konfiguracja i integracji Łącząc się programem KS-Integrator do schematu wspólnego należy podać nazwę serwera, która znajduje się w tabeli SSYS. Jeśli nazwa TNS serwera nie jest rozpoznawana lokalnie to należy ją dopisać do TNSNames.ora

17 Spotkanie Partnerów Typowe układy integracji Szablon wdrożenia medycznego integracji FO1130_01_02 Projekt wdrożenia integracji SZABLON-MEDYCZNY.xls

18 Spotkanie Partnerów Procedura instalacji i integracji Licencja Wczytanie licencji (tabele SLIC i SLIP w KS) Serwer powinien mieć wpisany alias w TNSNAMES.ORA równy polu KS.SLIC.SERNAZW Pole SSYS.SERW powinno być zgodne z SLIC.SERNAZW Nie powinno się wykonywać żadnych działań bez poprawnie wygenerowanej, zawierającej wszystkie działające aplikacje i wgranej licencji na serwer Licencje importuje się: –KS-Integrator, –KSLicImpKS oraz –KS-Instal. KS-Instal założenie schematu KS i konfiguruje kompleksowo system, jest zalecany.

19 Spotkanie Partnerów Procedura instalacji i integracji Instalacje – tabela SSYS Zawiera informacje o wszystkich integrowanych schematach Powinna być tworzona na podstawie SLIC Pole SSYS.SERW powinno być zgodne z SLIC.SERNAZW, jeżeli pola nie są zgodne, a na serwerze działa jakakolwiek integracja, wtedy nie należy go zmieniać Pole SSYS.SERW powinno być rozpoznawaną nazwą TNS na serwerze, jeśli jest inaczej to nie jest możliwe automatyczne tworzenie DBLinków w KS-Integrator Pole SSYS.SERW jest bezwzględnie obowiązującą nazwą podczas łączenia się do serwera programem KS-Integrator Pola SSYS.NSYS powinny odpowiadać SLIC.NLIC dla odpowiednich schematów Pole SSYS.INTG=T oznacza system widoczny w programie KS- Integrator

20 Spotkanie Partnerów Procedura instalacji i integracji Instalacja aplikacji KS-INSTAL zainstalować poszczególne aplikacje – wszelkie elementy niezbędne zostaną zainstalowane automatycznie zaczynając od aplikacji wykorzystujących najnowszą bibliotekę ksinZSI.dll by jednokrotnie instalować / aktualizować schemat KS

21 Spotkanie Partnerów Procedura instalacji i integracji Aplikacje bez KS-MENU Aplikacje działające bez mechanizmu KS- MENU to: KS-APW (Apteka) i KS-SOMED Zainstalowanie KS-Integratorem integracji w aplikacjach bez MENU Poprzez zaznaczenie ich w pierwszym oknie konfiguracji integracji KS-INETGRATOR

22 Spotkanie Partnerów Procedura instalacji i integracji Sprawdzenie tabel integrowanych 1 Przejrzenie wszystkich tabel, które mają zostać zintegrowane: –tabele powinny być puste (mogą zawierać jedynie rekordy zerowe), ewentualnie w grupie integrowanych tabel może być tylko jedna tabela zawierająca dane i musi mieć ona wypełnione unikalnymi wartościami NOT NULL pole klucza integracyjnego (pole zapisane KS.STBI.PRKY) –gdy więcej niż 1 tabela zawiera dane muszą one być całkowicie zgodne i musi być zapewniony brak modyfikacji tych danych w trakcie wdrożenia –dla rekordów zerowych należy wypełnić identyfikator integracyjny wartością 0 Identyfikatory integracyjne w większości przypadków są polami klucza głównego tabel. W przypadku większości tabel MEDIS, SOMED, AOW jest inaczej i należy na to zwrócić szczególną uwagę

23 Spotkanie Partnerów Procedura instalacji i integracji Sprawdzenie tabel integrowanych 2 W przypadku niezgodności nazwy SSYS.SERW z nazwą serwera rozpoznawaną przez serwer Oracle należy utworzyć i sprawdzić wymagane DBLinki między schematami, które są integrowane. DBLinki muszą być nazwane zgodnie z wpisami w polu SSYS.DBLK, sprawdzenie DBLink: SELECT * FROM Zmiana hasła do schematu bazy danych oznacza konieczność utworzenie wszystkich DBLinków do tego schematu na nowo

24 Spotkanie Partnerów Procedura instalacji i integracji Konfiguracja dla 2. serwerów Aby była możliwa konfiguracja integracji dla 2 serwerów konieczna jest synchronizacja tabel SSYS schematów wspólnych tych serwerów

25 Spotkanie Partnerów Procedura instalacji i integracji Konfiguracja dokumenty Opis sposobu tworzenie połączeń integracyjnych wg projektu wdrożenia integracji znajduje się w dokumencie Q:\PROJPROD\Ogolne\Doku\KSStd_Integracja_Instrukcj a.doc ftp://ftp.kamsoft.pl/pub/KS- Integrator/doku/KSStd_Integracja_Instrukcja.doc

26 Spotkanie Partnerów Specyficzne tabele integracji Pracownicy wewnętrzni Istnieją w aplikacjach ZZL, MEDIS, SOMED, AOW, FK, HURT, ST, PRODIS Jeśli istnieje ZZL to jest on systemem MASTER dla pracowników i tylko ZZL może zmieniać dane ZZL posiada 3 podgrupy pracowników: –Wszyscy –pracownicy medyczni –lekarze TYLKO JEDNA MOŻE BYĆ INTEGROWANA I MUSI BYĆ MASTER

27 Spotkanie Partnerów Specyficzne tabele integracji Pracownicy wewnętrzni Problemy: –w MEDIS pracownicy wewnętrzni mogą jednocześnie być pracownikami zewnętrznymi (ten sam rekord w tabeli) – to powinno zostać zmienione –istnieją nierówne więzy integralności w różnych aplikacjach (najsilniejsze w MEDIS), w przypadku integracji unikalność w jednej aplikacja oznacza unikalność we wszystkich pozostałych aplikacjach

28 Spotkanie Partnerów Specyficzne tabele integracji Kontrahenci Istnieją w aplikacjach FK, HURT, ZSI, MEDIS, SOMED, AOW, ST, PRODIS, CRM Kontrahenci są podzieleni na 3 grupy: –pacjenci –jednostki zewnętrzne –zakłady pracy Jeśli istnieje MEDIS to systemy medyczne (MEDIS, SOMED, AOW) powinny być integrowane z pozostałymi systemami tylko poprzez tabelę kontrahentów MEDIS: PLTN

29 Spotkanie Partnerów Specyficzne tabele integracji Pacjenci medyczni Wydzielona podgrupa w aplikacjach medycznych (MEDIS, SOMED, AOW), która nie jest bezpośrednio integrowana z pozostałymi aplikacjami Pacjent przechodzi do systemu nie- medycznego tylko jeśli pojawi się w tabeli MEDIS.PLTN Jeśli nie istnieje MEDIS to należy zintegrować SOMED z systemem nie- medycznym

30 Spotkanie Partnerów Specyficzne tabele integracji Podmioty gosp. medyczne Wydzielona podgrupa w aplikacjach medycznych (MEDIS, SOMED, AOW), która nie jest bezpośrednio integrowana z pozostałymi aplikacjami Podmiot gospodarczy przechodzi do systemu nie-medycznego tylko jeśli pojawi się w tabeli MEDIS.PLTN Jeśli nie istnieje MEDIS to należy zintegrować SOMED z systemem nie- medycznym

31 Spotkanie Partnerów Procedura instalacji i integracji Synchronizacja Synchronizacja danych w tabelach jest konieczna w przypadku gdy dane istnieją w jednej tabeli danej grupy tabel i nie istnieją w pozostałych Synchronizacja danych polega na wykonaniu pozornego updateu na wszystkich rekordach integrowanej tabeli co wyzwoli triggery integracyjne i spowoduje przeniesienie danych do wszystkich integrowanych tabel Niektóre wyzwalacze integracyjne (np. na pracownikach w MEDIS i SOMED) są odporne na pozorne updatey i trzeba je czasowo zmodyfikować aby wykonać synchronizację

32 Spotkanie Partnerów Procedura instalacji i integracji Synchronizacja – procedura PL/SQL BEGIN FOR REC IN (SELECT FROM ) LOOP BEGIN UPDATE SET = WHERE = REC. ; COMMIT; EXCEPTION WHEN OTHERS THEN RAISE_APPLICATION_ERROR(-20001, 'Nieudana aktualizacja o ='||REC. ||CHR(13)||CHR(10)||SQLERRM); END; END LOOP; END;

33 Spotkanie Partnerów Procedura instalacji i integracji Synchronizacja – kolejność Należy synchronizować najpierw grupy tabel słownikowych takich jak: –miejscowości –oddziały –ośrodki kosztów itp. Dopiero potem można przystąpić do synchronizacji pozostałych tabel: –pracownicy –operatorzy –kontahenci itp.

34 Spotkanie Partnerów Procedura instalacji i integracji Sprawdzenie Po wykonaniu wszystkich połączeń integracyjnych zalecane jest sprawdzenie wszystkich połączeń poprzez testy w aplikacjach polegające na dodaniu, modyfikacji i usunięciu rekordów w tabelach integrowanych.

35 Spotkanie Partnerów Dodanie tabeli do KS-Integracji Potrzebę integracji nowej tabeli należy zgłosić do działu wdrożeniowego poprzez wypełnienie formularza: FO1130_01_01 Zgłoszenie tabel do integracji.xls Projekt zapotrzebowania integracji nowej tabeli (lub modyfikacji) wymagają prac działów produkcyjnych i zmian w odpowiednich procedurach oraz umieszczone zmian w pakiecie KS-Integrator, i pakietach instalacyjnych.

36 Spotkanie Partnerów Częste problemy System nie jest widziany przez program KS-Integrator Należy sprawdzić tabelę SSYS, szczególnie pole INTG (powinno mieć T dla integrowanych), pole INTG nie wpływa na działanie KS-Integracji Cannot insert NULL into (. ) Zostało dodane do tabeli integrowanej nowe pole NOT NULL bez DEFAULT i nie zostało ono uwzględnione w mechanizmach integracji

37 Spotkanie Partnerów Częste problemy – pakiety się nie kompilują Nie kompilują się pakiety KSCORE, KSUTIL, KSCVAR, KSINTUTL –sprawdzić nadanie uprawnień ze schematu KS Nie kompiluje się pakiet KSINTEGR –sprawdzić nadanie uprawnień ze schematu KS –sprawdzić istnienie pól NSYS_INN w integrowanych tabelach –sprawdzić istnienie pól integrowanych w integrowanych tabelach Nie kompilują się wyzwalacze integracyjne –sprawdzić to samo co w przypadku problemów z kompilowaniem KSINTEGR

38 Spotkanie Partnerów Częste problemy - tabela SSYS Niezgodność NSYS: należy wykonać funkcję z KSInstal.exe –gui, Synchronizuj NSYS z licencją Niezgodna nazwa serwera: dla istniejących wdrożeń nie należy jej zmieniać, trzeba tylko zadbać o to żeby serwer miał tę nazwę w swoim TNSNames Nie widać aplikacji w KS-Integrator: należy ustawić pole SSYS.INTG=T dla aplikacji

39 Spotkanie Partnerów Częste problemy – synchronizacja Naruszenie klucza unikalnego w zewnętrznej aplikacji: należy poprawić rekord powodujący to naruszenie lub zmienić zasady unikalności Naruszenie klucza obcego: należy sprawdzić czy zostały zsynchronizowane w pierwszej kolejności tabele słownikowe oraz czy inne nie-integrowane słowniki są zgodne Modyfikowany rekord w tabeli nie posiada nadanej wartości klucza integracji: został popełniony błąd w fazie przygotowawczej, nie zostało wypełnione wartościami pole klucza integracyjnego, należy rozłączyć integrację odpowiedniej grupy tabel i wypełnić wartościami pole klucza

40 Spotkanie Partnerów Częste problemy – synchronizacja Invalid user/password, error lookup for remote object – sprawdzić i poprawić DBLinki lub TNSNames na serwerze Oracle Package KS has errors – błąd w fazie przygotowawczej, nie zostały sprawdzone pakiety Nieprawidłowa wartość NSYS_INN – sprawdzić pole NSYS_INN w tabeli jest NULL, jeśli jest to znaczy, że wyzwalacze poza integracją wypełniają to pole, należy to zgłosić do osób odpowiedzialnych za daną aplikację

41 Spotkanie Partnerów Pytania 1. Ile tabel może być MASTERem w jednej grupie integrowanych tabel?

42 Spotkanie Partnerów Pytania 2. Czy w integracji jednokierunkowej mogą być zmieniane dane przez system SLAVE?

43 Spotkanie Partnerów Pytania 3. Jakie ustawienie decyduje o widoczności aplikacji w programie KS-Integrator?

44 Spotkanie Partnerów Pytania 4. Jakie pole musi istnieć w każdej tabeli biorącej udział w integracji?

45 Spotkanie Partnerów Pytania 5. Czy klucz główny tabeli jest zawsze identyfikatorem integracyjnym rekordu?

46 Spotkanie Partnerów Pytania 6. Czy aplikacje oparte o KS-MENU i KS- Instal powinny mieć instalowaną KS- Integrację poprzez program KS- Integrator?

47 Spotkanie Partnerów Pytania 7. Jakie narzędzie jest zalecane do wgrywania licencji i tworzenia schematu wspólnego?

48 Spotkanie Partnerów Pytania 8. Czy cała konfiguracja integracji w ramach jednego serwera znajduje w jednym schemacie?

49 Spotkanie Partnerów Pytania 9. Jakie tabele w schemacie wspólnym są tabelami konfiguracyjnymi mechanizmu integracji?

50 Spotkanie Partnerów Pytania 10. Gdzie zazwyczaj znajduje się nazwa aliasu do bazy danych, która odpowiada nazwie z licencji SLIC.SERNAZW?

51 Spotkanie Partnerów Dziękuję za uwagę


Pobierz ppt "KS-Integracja mgr inż. Tomasz Latko Przedsiębiorstwo Informatyczne KAMSOFT."

Podobne prezentacje


Reklamy Google