Struktura pliku konfiguracyjnego
...
Przykładowy plik konfiguracyjny >
Directory Monitor configuration file >
Plik konfiguracyjny:
- w formacie INI,
- kodowanie powinno być ustawione na UTF-8 bez BOM,
- sekcje konfiguracji:
- [Settings]
- ustawienia ogólne,
- [WebService]
- konfiguracja webserwisów,
- [Arch#]
- ciągu konfiguracji poszczególnych katalogów do monitorowania i związanych z nimi akcjami,
- [Logger]
- konfiguracji logów programu.
- [Settings]
...
Parametry ogólne | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Active | Określa czy dana konfiguracja ma być aktywna. | Gdy wartość równa false, podana konfiguracja pomijana jest przy przetwarzaniu, gdy wartość równa true przetwarzanie katalogu odbywa się przy każdym uruchomieniu. | ||||||||||||||||||||||
ShareId | Nazwa własna utworzonej konfiguracji. | Nie ma wpływu na przetwarzanie, jest jedynie Nazwa nie może się powtarzać, może to spowodować błędy w trakcie przetwarzania konfiguracji. Jest wykorzystywana jako identyfikator np. w logach programu. | ||||||||||||||||||||||
SharePath | Ścieżka przetwarzanego katalogu. | Ta sama ścieżka może być wykorzystywana w różnych konfiguracjach [Arch#]. | ||||||||||||||||||||||
ArchiveClass | Identyfikator klasy dokumentów. | Wartość w postaci liczby całkowitej. | ||||||||||||||||||||||
SearchSubDirectory | Parametr określający czy mają być przetwarzane podkatalogi katalogu podanego w SharePath. | Jeśli ustawiony na true to przetwarzane są pliki we wszystkich podkatalogach katalogu ustawionego w SharePath, jeśli ustawiony na false to przetwarzane tylko pliki z będące bezpośrednio w katalogu z SharePath. | ||||||||||||||||||||||
SaveAsNewVersion | Parametr określający, czy w przypadku takich samych indeksów dokument zapisać jako nowa wersja. | Możliwe wartości: [true, false] | ||||||||||||||||||||||
ProcessFilesUnmodifiedBy | Czas od momentu modyfikacji pliku, po jakim zaczynać dopiero przetwarzanie pliku. | Wartość w postaci liczby całkowitej reprezentująca liczbę minut od momentu modyfikacji pliku, po jakiej zaczynać dopiero przetwarzanie pliku. | ||||||||||||||||||||||
SortFilesBy | Opcjonalny parametr służący do określenia kolejności importowania dokumentów. | Możliwe wartości:
Domyślnie kolejność przetwarzania jest nieokreślona. | ||||||||||||||||||||||
SortFilesDirection | Opcjonalny parametr służący do określenia kierunku przetwarzania importowania dokumentów. | Możliwe wartości:
Domyślnie kierunek przetwarzania jest rosnący. | ||||||||||||||||||||||
FileType | Typ przetwarzanych dokumentów. (Domyślnie RAW) | Możliwe wartości: [RAW, XML]. Gdy podany jest nieobsługiwany typ to plik jest pomijany | ||||||||||||||||||||||
FileRegExp | Regex, po którym następuje filtrowanie plików po ich pełnych ścieżkach | Jeżeli pełna ścieżka pliku nie spełnia regexa, to plik jest pomijany. Przykładowy regexp:
| ||||||||||||||||||||||
FileNameRegExmp | Regex, po którym następuje filtrowanie plików po ich nazwach. | Jeśli nazwa pliku nie spełnia regexa, to plik jest pomijany. | ||||||||||||||||||||||
Parametry związane z okresowym uruchamianiem DirectoryMonitor | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
CheckAtTime | Parametr określający czy przetwarzać katalogi o godzinie ProcessTime. | Możliwe wartości: [true, false]. | ||||||||||||||||||||||
ProcessTime | Godzina o której mają byc przetwarzane katalogi, gdy wybrany jest parametr CheckAtTime. | Godzina w formacie:
| ||||||||||||||||||||||
CheckPeriodic | Parametr określający, czy przetwarzać katalogi co określony czas Period | Możliwe wartości: [true, false]. | ||||||||||||||||||||||
Period | Odstęp czasowy, co który mają byc przetwarzane katalogi. | Wartość w postaci liczby całkowitej reprezentującej okres czasowy w milisekundach. | ||||||||||||||||||||||
Parametry związane z typem plików RAW | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
CopyRawFiles | Parametr określajacy czy zapisywać pliki RAW w osobnym katalogu RawFileDestinationPath. | Możliwe wartości, [true, false]. | ||||||||||||||||||||||
RawFileDestinationPath | Ścieżka do zapisu plików RAW, jeżeli wybrano opcję CopyRawFiles. | Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki RAW. | ||||||||||||||||||||||
DeleteRawFiles | Jest to parametr określający czy ma nastąpić usunięcie źródłowego pliku RAW jeżeli z powodzeniem przeniesiono go do archiwum, | Możliwe wartości, [true, false]. | ||||||||||||||||||||||
RawFileRegExp | Regex, którym następuje filtrowanie znalezionych ścieżek plików. | Jeżeli w regexie jest grupa (oznaczona okrągłymi nawiasami), to przechwycona grupa jest używana jako nowa ścieżka pliku.
| ||||||||||||||||||||||
RawFileMask | Tekst, którym mozna podmienić ścieżkę pliku. | Można w tekście wykorzystywać przechwycone grupy z RawFileRegExp w postaci $1, $2 ... itd.
| ||||||||||||||||||||||
RawFileOnError | Parametr określający operację do wykonania dla plików RAW, których nie udało się dodać do archiwum. | Możliwe wartości:
| ||||||||||||||||||||||
RawFileErrorDirectory | Ścieżka do katalogu dla plików RAW, których nie udało się dodać do archiwum. | Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki RAW, których nie udało się dodać do archiwum. | ||||||||||||||||||||||
Parametry związane z typem plików XML | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
CopyXMLFiles | Parametr określajacy czy zapisywać pliki XML w osobnym katalogu XMLFileDestinationPath. | Możliwe wartości, [true, false]. | ||||||||||||||||||||||
XMLFileDestinationPath | Ścieżka do zapisu plików XML, jeżeli wybrano opcję CopyXMLFiles. | Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki XML. | ||||||||||||||||||||||
DeleteXMLFiles | Jest to parametr określający czy ma nastąpić usunięcie źródłowego pliku XML jeżeli z powodzeniem przeniesiono go do archiwum, | Możliwe wartości, [true, false]. | ||||||||||||||||||||||
XMLRawFileTag | Parametr określający ścieżkę do tagu w pliku XML, który zawiera nazwę pliku do wgrania do archiwum. | Ścieżka do tagu powinna być jednoznaczna. W przypadku braku jednoznaczności wybrana zostanie pierwsza pasująca wartość. Ścieżka musi był pełna (zawierać wszystkie kolejne tagi). Przykładowo dla pliku XML:
Przykładowe wartości tagów:
Błędne wartości tagów (lub niejednoznaczne):
| ||||||||||||||||||||||
XMLRawFileAttribute | Parametr określający nazwę atrybutu tagu w pliku XML, który zawiera nazwę pliku do wgrania do archiwum, jeżeli w samym tagu XMLRawFileTag się ona nie znajduje. | Przykładowo dla pliku XML:
Przykładowe wartości XMLRawFileTag i XMLRawFileAttribute:
| ||||||||||||||||||||||
XMLRawFileIgnoreNamespaces | Parametr określający czy przy przetwarzaniu powinny być pomijane prefiksy przestrzeni nazw w tagach XML. | Możliwe wartości: [true, false] Przykładowo dla pliku XML:
Przykładowe wartości XMLRawFileTag, XMLRawFileAttribute i XMLRawFileIgnoreNamespaces:
| ||||||||||||||||||||||
XMLFileOnError | Parametr określający operację do wykonania dla plików XML, których nie udało się dodać do archiwum. | Możliwe wartości:
| ||||||||||||||||||||||
XMLFileErrorDirectory | Ścieżka do katalogu dla plików XML, których nie udało się dodać do archiwum. | Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki XML, których nie udało się dodać do archiwum. | ||||||||||||||||||||||
Parametry związane z niestandardowymi zapytaniami do baz danych (# - kolejny numer zaczynając od 1, gdyż zapytań może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
DBURL# | Adres URL połączenia z bazą, |
| ||||||||||||||||||||||
SQLQuery# | Zapytanie do bazy danych, którego wyniki mogą być później wykorzystywane jako wartości indeksów. | W zapytaniu można użyć wartości indeksów, które zostały określone już w inny sposób (np. z nazwy, daty czy pliku xml). W takim wypadku wartość indeksu należy użyć jako: $IndexN (gdzie N to numer jednego z indexów tam gdzie Index#_Type jest różny od SQL). UWAGA! W zapytaniu należy wstawić $IndexN w cudzysłowach. Dla wartości tekstowych należy wstawić podwójnie. Przykładowe zapytanie:
| ||||||||||||||||||||||
DBUser# | Login użytkownika do bazy danych, | |||||||||||||||||||||||
DBPassword# | Hasło użytkownika do bazy danych. | |||||||||||||||||||||||
JDBCDriver# | Sterownik do bazy danych. |
| ||||||||||||||||||||||
AllOccurence# | Parametr określający czy ten sam plik jest dodawany do archiwum tyle razy ile rekordów zwróci zapytanie zamiast tylko raz z użyciem pierwszego rekordu. | Dla każdego rekordu ustawiane są wartości odpowiednich indeksów z typem SQL. Pozostałe indeksy dla każdego pliku będą miały tą samą wartość. Ten parametr może wystąpić tylko raz w pliku konfiguracyjnym (brane jest pod uwagę tylko pierwsze takie wystąpienie). | ||||||||||||||||||||||
Parametry ogólne związane z indeksami (# - kolejny numer zaczynając od 1, gdyż indeksów może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Index#_Id | Identyfikator indeksu z tabeli pm_indicies. | Wartość w postaci liczby całkowitej. | ||||||||||||||||||||||
Index#_Name | Nazwa indeksu. | Służy do celów informacyjnych - nie jest brana pod uwagę przy przetwarzaniu indeksów. | ||||||||||||||||||||||
Index#_Type | Typ indeksu. | Możliwe wartości:
| ||||||||||||||||||||||
Index#_RegExp | Regex, który powinien spełniać wartość indeksu. | Jeżeli wartość indeksu nie pasuje do wyrażenia, to wartość ustawiana jest na pustą. Dla zaznaczonego Index#_MultiValue = true wyrażenie dopasowywane jest do każdej wartości po średniku i w przypadku braku dopasowania pojedyncza wartość zamieniana jest na pustą. | ||||||||||||||||||||||
Index#_Mask | Tekst, którym można podmienić wartość indeksu. | Można w tekście wykorzystywać przechwycone grupy z Index#_RegExp w postaci $1, $2 ... itd. | ||||||||||||||||||||||
Index#_Encoding | Parametr określa sposób kodowania wartości indeksu. | |||||||||||||||||||||||
Index#_Decoding | Parametr określa sposób dekodowania wartości indeksu. | |||||||||||||||||||||||
Index#_MustBeEqual | Określa wartość, jaką musi mieć indeks, aby plik mógł być dodany do archiwum. | W przypadku, gdy indeks wyznaczony jest różny od tej wartości to plik jest pomijany. | ||||||||||||||||||||||
Parametry związane z indeksami typu PathSegment (# - kolejny numer zaczynając od 1, gdyż indeksów może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Index#_PathSegment | Wybrany segment (tekst między separatorami ścieżki) absolutnej ścieżki pliku (bez samej nazwy pliku czyli ostatniego segmentu). | Wartość typu całkowitego numerowana od 1 bez ostatniego segmentu (czyli nazwy pliku). Przykładowo, w ścieżce:
Można wybrać wartość od 1 (czyli aaa) do 3 (czyli ccc). | ||||||||||||||||||||||
Parametry związane z indeksami typu FileSegment (# - kolejny numer zaczynając od 1, gdyż indeksów może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Index#_FileSegment | Wybrany segment (tekst z pominiętym rozszerzeniem i kropkami, między separatorami Index#_FileSeparator) nazwy pliku. | Wartość typu całkowitego numerowana od 1. Pominięte w nazwie plików są rozszerzenie pliku oraz kropki w nazwie. Przykładowo, w ścieżce:
Można wybrać wartość od 1 (czyli 111) do 3 (czyli 333). | ||||||||||||||||||||||
Index#_FileSeparator | Tekst będący separatorem wykorzystywanym w Index#_FileSegment | |||||||||||||||||||||||
Parametry związane z indeksami typu ConstantString (# - kolejny numer zaczynając od 1, gdyż indeksów może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Index#_ConstantString | Tekst (stały) będący wartością indeksu. | |||||||||||||||||||||||
Parametry związane z indeksami typu SQL (# - kolejny numer zaczynając od 1, gdyż indeksów może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Index#_SQLScheme | Numer połączenia zdefiniowanego w sekcji parametrów związanych z niestandardowymi zapytaniami do baz danych. | Wartością jest liczba całkowita reprezentująca wybrane zapytanie do zrealizowania z sekcji parametrów związanych z niestandardowymi zapytaniami do baz danych. | ||||||||||||||||||||||
Index#_SQLName | Nazwa kolumny, z której pobierana ma być wartość indeksu. | Wartością jest nazwa kolumny z wyniku zrealizowanego zapytania pod numerem Index#_SQLScheme. | ||||||||||||||||||||||
Parametry związane z indeksami typu XML (# - kolejny numer zaczynając od 1, gdyż indeksów może być wiele) | ||||||||||||||||||||||||
Nazwa parametru | Opis | Uwagi | ||||||||||||||||||||||
Index#_ValueTag | Parametr określający ścieżkę do tagu w pliku XML, który zawiera wartość indeksu. | Ścieżka do tagu powinna być jednoznaczna. W przypadku braku jednoznaczności wybrana zostanie pierwsza pasująca wartość (TODO do sprawdzenia!). Ścieżka musi był pełna (zawierać wszystkie kolejne tagi). Przykładowo dla pliku XML:
Przykładowe wartości tagów:
Błędne wartości tagów (lub niejednoznaczne):
| ||||||||||||||||||||||
Index#_ValueAttribute | Parametr określający nazwę atrybutu tagu w pliku XML, który zawiera wartość indeksu, jeżeli w samym tagu Index#_ValueTag się ona nie znajduje. | Przykładowo dla pliku XML:
Wartości Index#_ValueTag i Index#_ValueAttribute mogą wynosić:
| ||||||||||||||||||||||
Index#_ValueIgnoreNamespaces | Parametr określający czy przy przetwarzaniu powinny być pomijane prefiksy przestrzeni nazw w tagach XML. | Możliwe wartości: [true, false] Przykładowo dla pliku XML:
Wartości Index#_ValueTag, Index#_ValueAttribute i Index#_ValueIgnoreNamespaces mogą wynosić:
| ||||||||||||||||||||||
Index#_MultiValue | Parametr określający, czy indeks przyjmuje wiele wystąpień wartości pasujących do wzorca (wypisując je po średniku), czy tylko jego pierwsze wystąpienie. | Możliwe wartości: [true, false]. Przykładowy xml:
Przykładowe indeksy w konfiguracji ini:
W wyniku zostanie dodany do systemu dokument z wartościami indeksów:
| ||||||||||||||||||||||
Index#_XMLFileCopy | Parametr określający czy ma nastąpić backup pliku XML do Index#_XMLDestinationPath. | Możliwe wartości: [true, false]. | ||||||||||||||||||||||
Index#_XMLFileDelete | Parametr określający czy ma nastąpić usunięcie pliku XML po skończeniu przetwarzania. | Możliwe wartości: [true, false]. | ||||||||||||||||||||||
Index#_XMLDestinationPath | Ścieżka do zapisu plików XML, jeżeli wybrano opcję Index#_XMLFileCopy. | Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane kopie zapasowe plików XML. |
...