Witam.
Jako ze w instrukcji jest w tym temacie niewiele (gdyż w trakcie jej opracowywania moduł był tylko częściowo opracowany) zamieszczę tutaj informacje na temat danych potrzebnych do zbudowania pliku CSV na potrzeby importu do internetowego panelu SIIS na stronach UKE.
1) Baza TERYT
Standardowo od wersji 4.11 aktualny plik źródłowy z GUSowską bazą TERYT jest wgrywany do katalogu Pyxisa. Należy tylko wykonać jego import do bazy Pyxisa. Jeśli nie mamy w katalogu programu pliku TERYT.zip lub TERYT.sql (jeśli jest zip to Pyxis go rozpakuje i wtedy przystąpi do importu - jeśli jest sam sql, to od razu z niego zaimportuje dane) sciągamy go ze strony programu z katalogu download:
http://pyxisisp.pl/download/TERYT.zip
i umieszczamy w katalogu Pyxisa (tam gdzie plik Pyxis4SQL.exe). W tej lokalizacji program będzie go zawsze szukał.
Wybieramy z menu opcje importu bazy TERYT
Baza TERYT zawiera ponad 360 tys rekordów, wiec dajmy programowi kilkanaście sekund na jej wpisanie do naszej bazy.
Po zakończeniu pojawi się komunikat informujący o statusie importu. Jeśli będzie pomyślny, możemy zabierać się za nasza bazę.
2) Węzły i interfejsy
Na początek musimy wpisać węzły naszej sieci (miejsca rozdzielania ruchu). W tym celu z menu podręcznego infrastruktury lub menu głównego (Narzędzia - Węzły i grupy interfejsów) otwieramy formatkę pokazującą dodane rekordy. Wybieramy na pasku Węzły opcje "Dodaj":
Pola wyglądają znajomo? jeśli tak, to dobrze wróży.
Wybór z list jest identyczny jak ten w specyfikacji SIISa. Na tej formatce określamy tez węzeł nadrzędny w stosunku do wpisywanego (ten węzeł który przekazuje "internet" do węzła właśnie wpisywanego) oraz podajemy rodzaj połączenia. Powinny zostać uwzględnione praktycznie wszystkie pola, gdyż te informacje zostaną wykorzystane do budowy powiązan.
Jeśli już dodaliśmy Węzeł, dodajemy i przypisujemy do niego grupę interfejsów. Jest to zbiór urządzeń przypisanych do danego węzła i pełniących podobna funkcję (grupa nadajników na danym pasmie radiowym, grupa przełącznikiów, itd.).
Po kliknięciu "Dodaj" na dolnym pasku pojawi się okno dodawania nowego interfejsu przypisanego do wskazanego w górnym oknie węzła.
Konwencja nadawania identyfikatorom interfejsów jest dowolna, ale dobrze jest, żeby identyfikator interfejsu zawierał w nazwie węzeł do którego jest przypisany (np. każdy identyfikator grupy interfejsów przypisany do węzła "DELMA" zaczyna się od frazy "IDelma_" oraz skrótowej nazwy funkcji, jaka pełni: "IDelma_infra" np. oznacza grupę interfejsów obsługującą głownie urządzenia infrastruktury. Ułatwi nam to korygowanie ewentualnych pomyłek.
3) Przypisanie infrastruktury do węzłów i interfejsów
Każde urządzenie infrastruktury powinniśmy przypisać do wybranego węzła oraz do grupy interfejsów tego węzła. Robimy to na formatce edycji danych urządzenia infrastruktury:
Jeśli urządzenie infrastruktury jest urządzeniem działającym w pasmie radiowym, podajemy tez dodatkowe dane odnośnie instalacji antenowej oraz promień zasięgu radiowego i maksymalna możliwa do uzyskania przepustowość do klienta.
Takie przypisanie wplata nam w system SIIS tez naszych klientów, bo każde urządzenie klientowskie na swojej kacie jest przypisane do określonego urządzenia infrastruktury - to powiązanie istnieje w Pyxisie "od zawsze".
4) Uzgadnianie punktów adresowych z baza TERYT
Wybierając z menu Narzędzia - Raport SIIS pokaże nam się okno generowania raportu dla SIIS. Z jego poziomu dodajemy resztę informacji wymaganych przez UKE, oraz wywołujemy formatkę uzgadniania adresów.
Po kliknięciu przycisku "Uzgodnij TERYT" na górnym pasku, pokaże nam się okno "Uzgadnianie z baza TERYT". Ma ono 4 podstawowe pola z listami.
Zaczynając od lewej pierwsza lista to "Miejscowości Pyxisa". Na tej liście pokazane są wszystkie wartości pola "miejscowość" występujące na kartach użytkowników, węzłach oraz danych podmiotu przekazującego dane i podmiotów obcych (o tym dalej).
Na liście pojawia się jako osobne pozycje zapewne jakieś "dziwne" miejscowości z literówkami czy innymi błędami. Możemy te wpisy skorygować globalnie za pomocą pól "zamień na" znajdujących się poniżej listy. Pierwszy "dwuklik" wpisuje nam do górnego pola nazwę wybranej błędnej nazwy miejscowości, a drugi "dwuklik" na dole wpisze wybrana prawidłową nazwę (oczywiście możemy tez te nazwy po prostu wpisać w pola). Klikając napis "zamień na" lub "Zmień nazwę" z paska górnego, zostaną w naszej bazie dokonane korekty.
Po naniesieniu ew. poprawek powinniśmy mieć spójna listę miejscowości użytych w naszej bazie.
Wybierając na liście "Miejscowości Pyxisa" dowolna miejscowość, w liście drugiej - "Miejscowości TERYT" - dodane zostaną wszystkie miejscowości o wskazanej nazwie znajdujące się w bazie TERYT, wraz z podaniem województwa, powiatu, gminy i części opisowej rekordu. Wskazujemy miejscowość na liście miejscowości bazy TERYT, która odpowiada naszej miejscowości z listy pierwszej.
Na liście trzeciej "Ulice Pyxisa" pokazane zostaną wszystkie nazwy ulic użyte w bazie Pyxisa dla danej miejscowości. I tutaj analogicznie jak przy nazwach miejscowości wybierając jakąś ulicę, w czwartej liście pojawi się (lub nie - o tym za chwile) wpis/wpisy z bazy TERYT pasujące do wskazanej nazwy ulicy z bazy Pyxisa. Będzie to formalna nazwa danej ulicy (często przydługa, ale oficjalna). Jeśli ulica jest tylko jedna klikamy "Uzgodnij lokalizacje" (lub dwuklik na czwartym okienku na nazwie wybranej ulicy).
Jeśli po wybraniu ulicy z bazy Pyxisa na liście trzeciej nie pojawi się żaden wpis na liście czwartej, oznacza to, ze w bazie TERYT nie znaleziono wpisu odpowiadającego tak brzmiącej nazwie ulicy. Musimy tą ulice wybrać spośród pełnej listy ulic danej miejscowości. Zaznaczamy opcje znajdującą się nad lista czwarta: "Pokaz wszystkie ulice". W czwartym okienku pojawi się lista wszystkich ulic przypisanych w TERYT do danej miejscowości. Możemy wskazać właściwą ulice od razu, lub wspomóc się wyszukiwaniem na liście za pomocą pola wyszukiwarki umieszczonego bezpośrednio nad lista. Po wpisaniu tam frazy lista czwarta zostanie odfiltrowana tylko do nazw ulic zawierających wpisana frazę.
Gdy miejscowość nie ma nazw ulic, wybieramy z górnego paska przycisk "Brak ulicy", lub opcje "Nazwa własna ulicy", jeżeli to oznaczenie ulicy nie mające odpowiednika w TERYT (z ta opcja ostrożnie, bo SIIS nie zweryfikuje nam pliku z przypisaniem ponad 1% ulic w lokalizacjach jako nazwy własne).
Korzystając z przycisków po lewej stronie paska możemy wycofać uzgodnienie dla rekordów należących do danej miejscowości, lub dla całej bazy. Dla pojedynczego klienta wycofanie uzgodnienia jest możliwe z menu podręcznego na karcie danego klienta.
Przycisk "Odłóż na koniec (żż_)" dodaje nam do nazwy ulicy przedrostek z nawiasu, co przenosi nam nazwę ulicy na koniec listy i pozwala automatycznie uzgodnić pozostałe nazwy. Po uzgodnieniu prawidłowych nazw łatwo odnajdziemy taki wpisy w bazie używając pyxisowej "szukajki" i sprawdzimy ich poprawność (np. nazwa ulicy z innej miejscowości) - po poprawkach wrócimy do uzgodnienia tych ulic.
Do raportu zostaną wpisane tylko punkty adresowe z bazy klientów z uzgodnionym statusem TERYT. Jeśli dla jakiejś lokalizacji nie dokonamy uzgodnienia, zostanie ona pominiętą.
5) Dane podmiotu przekazującego raport
Tutaj uzupełniamy dane osoby przekazującej raport w imieniu firmy.
Nie zapomnijmy o podaniu danych kontaktowych, bo bez ni9ch raport nie będzie zweryfikowany poprawnie.
6) Węzły obce
Węzły obce to podmioty raportowane przy węzłach współdzielonych oraz punktach styku naszej sieci z innymi operatorami. Każda siec będzie miała przynajmniej jeden taki punkt: dostawce łącza.
http://pyxisisp.pl/ssv4/siis_scr03.jpg
Numer RPT podmiotu obcego znajdziemy w bazie UKE:
https://www.uke.gov.pl/marta/?p=2
7) Budowanie pliku CSV
Jeszcze mala uwaga: Aby dane były logicznie spójne powinniśmy w programie odwzorować faktyczna fizyczna strukturę naszej sieci. Powiązania maja być takie, jakie są w rzeczywistości. To w większości przypadków gwarantuje poprawna weryfikacje. Proszę pamiętać tez o zasadzie GIGO (śmieci na wejściu - śmieci na wyjściu). Niestety ma ona tutaj bezwzględne zastosowanie.
Mając zgromadzone wszystkie potrzebne dane możemy przystapić do budowania pliku CSV zawierającego nasz raport SIIS.
Raport możemy budować w całości, lub wybierając poszczególne jego sekcje.
Po kliknięciu przycisku "Buduj SIIS" program zacznie generować raport. W prawym oknie zobaczymy log z tej operacji. Wynikiem będzie plik "siis.csv" w katalogu eksportów Pyxisa. Będzie tam tez drugi plik o nazwie: "siis__kopia_kontrolna_z_numeracja_linii.txt". To bliźniaczy do poprzedniego plik, z tym, ze ma ponumerowane linie, co ułatwi nam "debugowanie" naszego raportu w przypadku jego niepoprawnej weryfikacji (o tym dalej).
8) Weryfikacja raportu
8a) Wstępna (lokalna) weryfikacja raportu
Ten krok nie jest niezbędny, ale może przyspieszyć wyłapanie prostych błędów.
Po zalogowaniu do systemu SIIS z zakładki pomoc należy pobrać program miniSIIS
(https://form.teleinfrastruktura.gov.pl/ ... indows.zip)
Program podczas pierwszego uruchomienia sprawdza czy jest nowsza wersja i w razie potrzeby pobiera ją.
Po uruchomieniu programu należy zaimportować plik wygenerowany przez PYXIS (menu dane/import csv). Następnie wybieramy Walidację (menu dane/walidacja)
Przy pierwszym uruchomieniu walidacji program prosi o zapisanie danych. Po przeprowadzeniu walidacji w razie błędów pojawią się czerwone kropki w zakładkach gdzie należy poprawić dane. Kliknięcie w zakładkę otwiera ją, błędne komórki są wyświetlone w kolorze czerwonym - w dolnym oknie jest opis błędów
Po poprawieniu błędów i poprawnej walidacji należy jeszcze kliknąć na przycisk "poprawność danych" (dane/poprawność danych) - Następuje weryfikacja samych danych (np poprawność adresów, brak agregacji, brak dodanych usług w węzłach, nieprawidłowe kody pocztowe itp) zakładki z błędami danych są zaznaczone na żółto. Uwaga - błędy w poprawności danych nie zawsze są krytyczne - skutkują wtedy tylko ostrzeżeniami w SIIS - np nr budynku poza bazą referencyjną, zdarza się że istnieją numery które nie są naniesione w systemach a faktycznie istnieją.
8a) Weryfikacja raportu w systemie SIIS na stronie UKE
Wygenerowany plik siis.csv uploadujemy do systemu SIIS. Po zalogowaniu się wybieramy z menu opcje Dane - Import.
Jako typ wybieramy opcje CSV i po wskazaniu pliku klikamy "Wgraj plik do SIIS". Załadowany plik pojawi się po lewej stronie wraz z opcja "Usuń plik". Plik usuwamy, jeśli chcemy wgrać nowa wersje pliku csv, a wcześniej już jakiś plik wgrywaliśmy do systemu.
Po załadowaniu pliku klikamy opcje "Załaduj dane z plików". System UKE będzie teraz weryfikował nasze dane. Zwykle trwa to kilkanaście sekund. Po ponownym wyświetleniu strony w tabeli na jej dole zobaczymy taki wpis:
Wybierając opcje pokaz raport wyświetlony zostanie wykaz błędow znalezionych w naszym raporcie:
Proszę się nie przerażać ilością raportowanych błędów, bo często jeden błędny zapis ma logiczne konsekwencje dla dalszych 400 błędów które zostały wyraportowane. A wiec bez paniki....
9) Debugowanie, czyli "O! zesz koo******!!!"
Od czego zacząć, żeby się w tym, co nam SIIS zaprezentował jakoś połapać? Najprościej zacząć od początku.
Raport generowany przez Pyxisa jest ułożony w takiej kolejności, że następujące po sobie linie wynikają/są powiązane z liniami poprzednimi. Jest tam zachowana logiczna konsekwencja. Pokazany raport sortujemy wg. linii w której wystąpił błąd. Linia o najmniejszym numerze w raporcie będzie pierwsza, która spowodowała błędy. Jak wcześniej już pisałem jeden taki błąd może wygenerować prawdziwą lawinę błędów będących jego konsekwencją. Mając linie błędu wyświetlamy plik siis.txt wygenerowany z Pyxisa - ten zawierający ponumerowane linie.
Przechodzimy do wybranej linijki i tuz za numerem mamy sekcje oznaczona literowo (DP, I, WO, WW...) do której należy dana linijka. Pobieramy pdfa ze specyfikacja pliku CSV:
http://pyxisisp.pl/download/SIIS5_specy ... SV_2_8.pdf
Odnajdujemy sekcje literową która wywołała błąd. W tabeli z polami danej sekcji w pdfie ze specyfikacją odnajdujemy pole z numerkiem odpowiadającym kolumnie, co do której SIIS ma jakieś anse. Czytamy tez opis w tabeli raportu błędów, bo on tez nam podpowie na co zwrócić uwagę.
Po dokonaniu poprawek w bazie Pyxisa generujemy raport ponownie i ponownie poddajemy go weryfikacji na stronie SIISa. Do skutku. Jak już raz uda się nam ta "sztuka", to każdy następny raport będzie po prostu kliknięciem kilku przycisków.
Pewnie urodzą się dodatkowe pytania o których nie pomyślałem w tym opisie. Proszę śmiało je tu zamieszczać. Postaram się doprecyzować opis.
Powodzenia!
Jako ze w instrukcji jest w tym temacie niewiele (gdyż w trakcie jej opracowywania moduł był tylko częściowo opracowany) zamieszczę tutaj informacje na temat danych potrzebnych do zbudowania pliku CSV na potrzeby importu do internetowego panelu SIIS na stronach UKE.
1) Baza TERYT
Standardowo od wersji 4.11 aktualny plik źródłowy z GUSowską bazą TERYT jest wgrywany do katalogu Pyxisa. Należy tylko wykonać jego import do bazy Pyxisa. Jeśli nie mamy w katalogu programu pliku TERYT.zip lub TERYT.sql (jeśli jest zip to Pyxis go rozpakuje i wtedy przystąpi do importu - jeśli jest sam sql, to od razu z niego zaimportuje dane) sciągamy go ze strony programu z katalogu download:
http://pyxisisp.pl/download/TERYT.zip
i umieszczamy w katalogu Pyxisa (tam gdzie plik Pyxis4SQL.exe). W tej lokalizacji program będzie go zawsze szukał.
Wybieramy z menu opcje importu bazy TERYT
Baza TERYT zawiera ponad 360 tys rekordów, wiec dajmy programowi kilkanaście sekund na jej wpisanie do naszej bazy.
Po zakończeniu pojawi się komunikat informujący o statusie importu. Jeśli będzie pomyślny, możemy zabierać się za nasza bazę.
2) Węzły i interfejsy
Na początek musimy wpisać węzły naszej sieci (miejsca rozdzielania ruchu). W tym celu z menu podręcznego infrastruktury lub menu głównego (Narzędzia - Węzły i grupy interfejsów) otwieramy formatkę pokazującą dodane rekordy. Wybieramy na pasku Węzły opcje "Dodaj":
Pola wyglądają znajomo? jeśli tak, to dobrze wróży.
Wybór z list jest identyczny jak ten w specyfikacji SIISa. Na tej formatce określamy tez węzeł nadrzędny w stosunku do wpisywanego (ten węzeł który przekazuje "internet" do węzła właśnie wpisywanego) oraz podajemy rodzaj połączenia. Powinny zostać uwzględnione praktycznie wszystkie pola, gdyż te informacje zostaną wykorzystane do budowy powiązan.
Jeśli już dodaliśmy Węzeł, dodajemy i przypisujemy do niego grupę interfejsów. Jest to zbiór urządzeń przypisanych do danego węzła i pełniących podobna funkcję (grupa nadajników na danym pasmie radiowym, grupa przełącznikiów, itd.).
Po kliknięciu "Dodaj" na dolnym pasku pojawi się okno dodawania nowego interfejsu przypisanego do wskazanego w górnym oknie węzła.
Konwencja nadawania identyfikatorom interfejsów jest dowolna, ale dobrze jest, żeby identyfikator interfejsu zawierał w nazwie węzeł do którego jest przypisany (np. każdy identyfikator grupy interfejsów przypisany do węzła "DELMA" zaczyna się od frazy "IDelma_" oraz skrótowej nazwy funkcji, jaka pełni: "IDelma_infra" np. oznacza grupę interfejsów obsługującą głownie urządzenia infrastruktury. Ułatwi nam to korygowanie ewentualnych pomyłek.
3) Przypisanie infrastruktury do węzłów i interfejsów
Każde urządzenie infrastruktury powinniśmy przypisać do wybranego węzła oraz do grupy interfejsów tego węzła. Robimy to na formatce edycji danych urządzenia infrastruktury:
Jeśli urządzenie infrastruktury jest urządzeniem działającym w pasmie radiowym, podajemy tez dodatkowe dane odnośnie instalacji antenowej oraz promień zasięgu radiowego i maksymalna możliwa do uzyskania przepustowość do klienta.
Takie przypisanie wplata nam w system SIIS tez naszych klientów, bo każde urządzenie klientowskie na swojej kacie jest przypisane do określonego urządzenia infrastruktury - to powiązanie istnieje w Pyxisie "od zawsze".
4) Uzgadnianie punktów adresowych z baza TERYT
Wybierając z menu Narzędzia - Raport SIIS pokaże nam się okno generowania raportu dla SIIS. Z jego poziomu dodajemy resztę informacji wymaganych przez UKE, oraz wywołujemy formatkę uzgadniania adresów.
Po kliknięciu przycisku "Uzgodnij TERYT" na górnym pasku, pokaże nam się okno "Uzgadnianie z baza TERYT". Ma ono 4 podstawowe pola z listami.
Zaczynając od lewej pierwsza lista to "Miejscowości Pyxisa". Na tej liście pokazane są wszystkie wartości pola "miejscowość" występujące na kartach użytkowników, węzłach oraz danych podmiotu przekazującego dane i podmiotów obcych (o tym dalej).
Na liście pojawia się jako osobne pozycje zapewne jakieś "dziwne" miejscowości z literówkami czy innymi błędami. Możemy te wpisy skorygować globalnie za pomocą pól "zamień na" znajdujących się poniżej listy. Pierwszy "dwuklik" wpisuje nam do górnego pola nazwę wybranej błędnej nazwy miejscowości, a drugi "dwuklik" na dole wpisze wybrana prawidłową nazwę (oczywiście możemy tez te nazwy po prostu wpisać w pola). Klikając napis "zamień na" lub "Zmień nazwę" z paska górnego, zostaną w naszej bazie dokonane korekty.
Po naniesieniu ew. poprawek powinniśmy mieć spójna listę miejscowości użytych w naszej bazie.
Wybierając na liście "Miejscowości Pyxisa" dowolna miejscowość, w liście drugiej - "Miejscowości TERYT" - dodane zostaną wszystkie miejscowości o wskazanej nazwie znajdujące się w bazie TERYT, wraz z podaniem województwa, powiatu, gminy i części opisowej rekordu. Wskazujemy miejscowość na liście miejscowości bazy TERYT, która odpowiada naszej miejscowości z listy pierwszej.
Na liście trzeciej "Ulice Pyxisa" pokazane zostaną wszystkie nazwy ulic użyte w bazie Pyxisa dla danej miejscowości. I tutaj analogicznie jak przy nazwach miejscowości wybierając jakąś ulicę, w czwartej liście pojawi się (lub nie - o tym za chwile) wpis/wpisy z bazy TERYT pasujące do wskazanej nazwy ulicy z bazy Pyxisa. Będzie to formalna nazwa danej ulicy (często przydługa, ale oficjalna). Jeśli ulica jest tylko jedna klikamy "Uzgodnij lokalizacje" (lub dwuklik na czwartym okienku na nazwie wybranej ulicy).
Jeśli po wybraniu ulicy z bazy Pyxisa na liście trzeciej nie pojawi się żaden wpis na liście czwartej, oznacza to, ze w bazie TERYT nie znaleziono wpisu odpowiadającego tak brzmiącej nazwie ulicy. Musimy tą ulice wybrać spośród pełnej listy ulic danej miejscowości. Zaznaczamy opcje znajdującą się nad lista czwarta: "Pokaz wszystkie ulice". W czwartym okienku pojawi się lista wszystkich ulic przypisanych w TERYT do danej miejscowości. Możemy wskazać właściwą ulice od razu, lub wspomóc się wyszukiwaniem na liście za pomocą pola wyszukiwarki umieszczonego bezpośrednio nad lista. Po wpisaniu tam frazy lista czwarta zostanie odfiltrowana tylko do nazw ulic zawierających wpisana frazę.
Gdy miejscowość nie ma nazw ulic, wybieramy z górnego paska przycisk "Brak ulicy", lub opcje "Nazwa własna ulicy", jeżeli to oznaczenie ulicy nie mające odpowiednika w TERYT (z ta opcja ostrożnie, bo SIIS nie zweryfikuje nam pliku z przypisaniem ponad 1% ulic w lokalizacjach jako nazwy własne).
Korzystając z przycisków po lewej stronie paska możemy wycofać uzgodnienie dla rekordów należących do danej miejscowości, lub dla całej bazy. Dla pojedynczego klienta wycofanie uzgodnienia jest możliwe z menu podręcznego na karcie danego klienta.
Przycisk "Odłóż na koniec (żż_)" dodaje nam do nazwy ulicy przedrostek z nawiasu, co przenosi nam nazwę ulicy na koniec listy i pozwala automatycznie uzgodnić pozostałe nazwy. Po uzgodnieniu prawidłowych nazw łatwo odnajdziemy taki wpisy w bazie używając pyxisowej "szukajki" i sprawdzimy ich poprawność (np. nazwa ulicy z innej miejscowości) - po poprawkach wrócimy do uzgodnienia tych ulic.
Do raportu zostaną wpisane tylko punkty adresowe z bazy klientów z uzgodnionym statusem TERYT. Jeśli dla jakiejś lokalizacji nie dokonamy uzgodnienia, zostanie ona pominiętą.
5) Dane podmiotu przekazującego raport
Tutaj uzupełniamy dane osoby przekazującej raport w imieniu firmy.
Nie zapomnijmy o podaniu danych kontaktowych, bo bez ni9ch raport nie będzie zweryfikowany poprawnie.
6) Węzły obce
Węzły obce to podmioty raportowane przy węzłach współdzielonych oraz punktach styku naszej sieci z innymi operatorami. Każda siec będzie miała przynajmniej jeden taki punkt: dostawce łącza.
http://pyxisisp.pl/ssv4/siis_scr03.jpg
Numer RPT podmiotu obcego znajdziemy w bazie UKE:
https://www.uke.gov.pl/marta/?p=2
7) Budowanie pliku CSV
Jeszcze mala uwaga: Aby dane były logicznie spójne powinniśmy w programie odwzorować faktyczna fizyczna strukturę naszej sieci. Powiązania maja być takie, jakie są w rzeczywistości. To w większości przypadków gwarantuje poprawna weryfikacje. Proszę pamiętać tez o zasadzie GIGO (śmieci na wejściu - śmieci na wyjściu). Niestety ma ona tutaj bezwzględne zastosowanie.
Mając zgromadzone wszystkie potrzebne dane możemy przystapić do budowania pliku CSV zawierającego nasz raport SIIS.
Raport możemy budować w całości, lub wybierając poszczególne jego sekcje.
Po kliknięciu przycisku "Buduj SIIS" program zacznie generować raport. W prawym oknie zobaczymy log z tej operacji. Wynikiem będzie plik "siis.csv" w katalogu eksportów Pyxisa. Będzie tam tez drugi plik o nazwie: "siis__kopia_kontrolna_z_numeracja_linii.txt". To bliźniaczy do poprzedniego plik, z tym, ze ma ponumerowane linie, co ułatwi nam "debugowanie" naszego raportu w przypadku jego niepoprawnej weryfikacji (o tym dalej).
8) Weryfikacja raportu
8a) Wstępna (lokalna) weryfikacja raportu
Ten krok nie jest niezbędny, ale może przyspieszyć wyłapanie prostych błędów.
Po zalogowaniu do systemu SIIS z zakładki pomoc należy pobrać program miniSIIS
(https://form.teleinfrastruktura.gov.pl/ ... indows.zip)
Program podczas pierwszego uruchomienia sprawdza czy jest nowsza wersja i w razie potrzeby pobiera ją.
Po uruchomieniu programu należy zaimportować plik wygenerowany przez PYXIS (menu dane/import csv). Następnie wybieramy Walidację (menu dane/walidacja)
Przy pierwszym uruchomieniu walidacji program prosi o zapisanie danych. Po przeprowadzeniu walidacji w razie błędów pojawią się czerwone kropki w zakładkach gdzie należy poprawić dane. Kliknięcie w zakładkę otwiera ją, błędne komórki są wyświetlone w kolorze czerwonym - w dolnym oknie jest opis błędów
Po poprawieniu błędów i poprawnej walidacji należy jeszcze kliknąć na przycisk "poprawność danych" (dane/poprawność danych) - Następuje weryfikacja samych danych (np poprawność adresów, brak agregacji, brak dodanych usług w węzłach, nieprawidłowe kody pocztowe itp) zakładki z błędami danych są zaznaczone na żółto. Uwaga - błędy w poprawności danych nie zawsze są krytyczne - skutkują wtedy tylko ostrzeżeniami w SIIS - np nr budynku poza bazą referencyjną, zdarza się że istnieją numery które nie są naniesione w systemach a faktycznie istnieją.
8a) Weryfikacja raportu w systemie SIIS na stronie UKE
Wygenerowany plik siis.csv uploadujemy do systemu SIIS. Po zalogowaniu się wybieramy z menu opcje Dane - Import.
Jako typ wybieramy opcje CSV i po wskazaniu pliku klikamy "Wgraj plik do SIIS". Załadowany plik pojawi się po lewej stronie wraz z opcja "Usuń plik". Plik usuwamy, jeśli chcemy wgrać nowa wersje pliku csv, a wcześniej już jakiś plik wgrywaliśmy do systemu.
Po załadowaniu pliku klikamy opcje "Załaduj dane z plików". System UKE będzie teraz weryfikował nasze dane. Zwykle trwa to kilkanaście sekund. Po ponownym wyświetleniu strony w tabeli na jej dole zobaczymy taki wpis:
Wybierając opcje pokaz raport wyświetlony zostanie wykaz błędow znalezionych w naszym raporcie:
Proszę się nie przerażać ilością raportowanych błędów, bo często jeden błędny zapis ma logiczne konsekwencje dla dalszych 400 błędów które zostały wyraportowane. A wiec bez paniki....
9) Debugowanie, czyli "O! zesz koo******!!!"
Od czego zacząć, żeby się w tym, co nam SIIS zaprezentował jakoś połapać? Najprościej zacząć od początku.
Raport generowany przez Pyxisa jest ułożony w takiej kolejności, że następujące po sobie linie wynikają/są powiązane z liniami poprzednimi. Jest tam zachowana logiczna konsekwencja. Pokazany raport sortujemy wg. linii w której wystąpił błąd. Linia o najmniejszym numerze w raporcie będzie pierwsza, która spowodowała błędy. Jak wcześniej już pisałem jeden taki błąd może wygenerować prawdziwą lawinę błędów będących jego konsekwencją. Mając linie błędu wyświetlamy plik siis.txt wygenerowany z Pyxisa - ten zawierający ponumerowane linie.
Przechodzimy do wybranej linijki i tuz za numerem mamy sekcje oznaczona literowo (DP, I, WO, WW...) do której należy dana linijka. Pobieramy pdfa ze specyfikacja pliku CSV:
http://pyxisisp.pl/download/SIIS5_specy ... SV_2_8.pdf
Odnajdujemy sekcje literową która wywołała błąd. W tabeli z polami danej sekcji w pdfie ze specyfikacją odnajdujemy pole z numerkiem odpowiadającym kolumnie, co do której SIIS ma jakieś anse. Czytamy tez opis w tabeli raportu błędów, bo on tez nam podpowie na co zwrócić uwagę.
Po dokonaniu poprawek w bazie Pyxisa generujemy raport ponownie i ponownie poddajemy go weryfikacji na stronie SIISa. Do skutku. Jak już raz uda się nam ta "sztuka", to każdy następny raport będzie po prostu kliknięciem kilku przycisków.
Pewnie urodzą się dodatkowe pytania o których nie pomyślałem w tym opisie. Proszę śmiało je tu zamieszczać. Postaram się doprecyzować opis.
Powodzenia!
Piotr Szkut - PYXIS