Kolejną wielką zaletą platformy StudioSystem jest możliwość importowania danych z plików XML. XML (eXtensible Markup Language) umożliwia firmie łatwe organizowanie i przechowywanie danych, ułatwiając udostępnianie i przesyłanie. Importując dane XML, firmy mogą szybko identyfikować i interpretować ważne informacje o klientach oraz podejmować odpowiednie decyzje. Może to zaoszczędzić firmom znaczną ilość czasu i pieniędzy podczas analizowania zachowań klientów.
Ostatecznie platforma StudioSystem oferuje wiele korzyści firmom, które chcą usprawnić swoją działalność i zaoszczędzić czas. Dzięki funkcjom, takim jak automatyczny import i eksport, usprawnione zarządzanie i zaawansowana analityka, StudioSystem jest potężnym rozwiązaniem dla każdej organizacji, która chce poprawić wydajność i rentowność.
Transakcja: /role_sys/import_xml.aspx
Transakcja import XML pozwala na zaimportowanie do bazy danych informacji z pliku XML o ustalonym przez Software Studio szablonie.
Przygotowany szablon jest uniwersalny i pozwala przechowywać dowolne informacje w formie tabelarycznej.
Spis treści
Ze ścieżki w katalogu aplikacji WWW…
Szablon pliku XML
Aby plik XML mógł zostać zaimportowany poprzez transakcję uniwersalną musi posiadać ustalony schemat.
<?xml version=”1.0″?>
<Workbook id=”0″>
<Table>
<Row id=”0″>
<Cell>KOL1</Cell>
<Cell>KOL2</Cell>
<Cell>KOL3</Cell>
<Cell>KOL4</Cell>
<Cell>KOL5</Cell>
</Row>
<Row id=”1″>
<Cell>VAL11</Cell>
<Cell>VAL21</Cell>
<Cell>VAL31</Cell>
<Cell>VAL41</Cell>
<Cell>VAL51</Cell>
</Row>
<Row id=”2″>
<Cell>VAL12</Cell>
<Cell>VAL22</Cell>
<Cell>VAL32</Cell>
<Cell>VAL42</Cell>
<Cell>VAL52</Cell>
</Row>
</Table>
</Workbook>
! Należy zachować powyższą strukturę.
! Element Row o parametrze id=0 jest traktowany jako wiersz nagłówkowy, powinien zawierać nazwy kolumn.
Workbook (zawsze 1 element)
Table (Zawsze 1 element)
Row (dowolna ilość elementów)
Źródło pliku XML
Plik może by importowany:
Z serwera FTP
Aby importować plik należy podać następujące parametry do wywołania transakcji:
- FTP_UID
UID zapytania z tabeli _code_sql, które w kolumnach: URL, USER, PASS zwróci kolejno adres serwera ftp, login użytkownika, hasło użytkownika.
- INSERT_UID
UID zapytania z tabeli _code_sql, które zostanie wykonane dla każdego wiersza z pliku XML.
- SOURCE
Wartość stała: SS-FTP
Pobierany jest pierwszy plik z katalogu /IN na serwerze FTP.
Ze ścieżki w katalogu aplikacji WWW
Aby importować plik należy podać następujące parametry do wywołania transakcji:
- PATH_UID
UID zapytania z tabeli _code_sql, które w kolumnie PATH zwróci adres folderu źródłowego – adres względy (w folderze aplikacji, np. SELECT 'App_FTP\TST\’ AS PATH)
- INSERT_UID
UID zapytania z tabeli _code_sql, które zostanie wykonane dla każdego wiersza z pliku XML.
- SOURCE
Wartość stała: SS-LOC
Procesowanie pliku
- Wyszukany zostaje plik z rozszerzeniem .XML we wskazanym w parametrze adresie.
- Plik jest pobierany do ścieżki /App_Import/XML/ a w lokalizacji źródłowej jego nazwa zostaje zmieniona – dodane zostaje rozszerzenie .arch – plik nie zostanie więcej razy zaimportowany.
- Plik jest odczytywany i jego struktura przekładana na obiekt C#. Jeśli wystąpi błąd – struktura będzie niezgodna – to informacja zostanie zapisana w error logu.
Procesowanie danych
Dane z pliku są przetwarzane na obiekt typu DataTable a następnie każdy wiersz jest przesyłany do bazy danych za pomocą polecenia odczytanego z tabeli _code_sql. Transakcja odczytuje nazwy kolumn z pliku XML i zamienia wartości z zapytania na odczytane z DataTable. Podmieniane są również zmienne:
@_WORKBOOK_ID – parametr
ID z elementu Workbook
@_REFNO_IMPORT – refno nadane na
początku transakcji, wspólne dla wszystkich pozycji oraz zapisów w logu
@_USERNAME – login użytkownika
wywołującego transakcję
@_FILE_NAME – ścieżka do pliku
Np. Zapytanie w _code_sql:
EXEC dbo.insertImport(‘@_ID’, ‘@_REFNO_IMPORT’, ‘@KOL1’, ‘@KOL2’, ‘@KOL3’)
Zaowocuje dla podanego wyżej pliku wywołaniem dla pierwszego wiersza:
EXEC dbo.insertImport('0', '677354627567', 'VAL11', 'VAL21', 'VAL31')
Ograniczenia
- Należy przygotować funkcję wgrywania plików przez WWW jako źródło danych.
- Dla źródeł SS-FTP i SS-LOC należy przygotować opcję jednoczesnego importu wszystkich znalezionych plików.
- Należy dodać parametryzację opcji usuwania plików ze ścieżki źródłowej.