Pobrane pliki najpierw trafiają do roboczego folderu na komputerze (zwykle C:\orders). Maszyny zazwyczaj z niego nie czytają: potrzebują folderu sieciowego albo podłączonego dysku. Kopiowaniem tam zajmuje się synchronizacja.
Kiedy się uruchamia
- po każdym sprawdzeniu zamówień — czyli w każdym cyklu według harmonogramu;
- po tym, jak program skończył konwersję plików;
- ręcznie — przyciskiem „Sprawdź teraz” na zakładce „Główna”, który przepuszcza cały cykl w całości razem z kopiowaniem.
Osobnego przycisku „tylko synchronizuj” nie ma.
Co dokładnie jest kopiowane
Program idzie według reguł z pliku synchronize_folders.txt. Każda reguła to para „skąd” i „dokąd”. Jak jest zbudowana, opisano w artykule Reguły tras: format wiersza i dwa tryby.
Wewnątrz reguły program obchodzi folder źródłowy w całości, wraz z podfolderami, i dla każdego pliku decyduje, czy go kopiować, czy nie:
- Plik bez numeru zamówienia w ścieżce jest pomijany. Numer szukany jest w strukturze folderów; jeśli go nie ma, plik uznawany jest za postronny i synchronizacja go nie rusza.
- SVG, który jest jeszcze konwertowany, jest pomijany. Inaczej na maszynę pojechałby półprodukt zamiast gotowego pliku. Gdy konwersja się skończy, na dysku zostanie już EMF — jego skopiuje kolejny cykl.
- Plik, który już jest w miejscu docelowym i ma ten sam rozmiar, nie jest kopiowany ponownie. Dlatego zwykły cykl przebiega szybko nawet w dużym folderze: od nowa przekładane są tylko nowe i zmienione pliki.
Sprzątanie nieaktualnych SVG w miejscu docelowym
Jeśli w folderze docelowym obok siebie leżą nazwa.svg i nazwa.emf, SVG jest usuwany: jest nieaktualny, zastąpił go EMF. Działa to tylko dla reguł typu folder.
Jeśli folder docelowy jest niedostępny
Program zapisuje błąd w dzienniku i przechodzi do następnej reguły. Pobieranie zamówień i konwersja przy tym się nie zatrzymują — pliki zostają w folderze roboczym i pojadą na maszynę, gdy tylko folder sieciowy znowu się pojawi.
Zamówienia, których nie ma w bazie programu
Jeśli w folderze roboczym leżą pliki zamówień, których ten program nie pobierał (na przykład zostały z poprzedniej instalacji), w dzienniku pojawi się wiersz postaci „orders skipped (not in database)” z numerami zamówień i przykładem ścieżki. Takie pliki nie są kopiowane ani same usuwane — jak zwolnić na nie miejsce, napisano w artykule Ile zamówień przechowywać i jak czyścić dysk.
Druga strona medalu
Program pamięta, jakie pliki i dokąd skopiował. Dlatego przy usuwaniu zamówienia sprząta nie tylko folder roboczy, ale i skopiowane pliki w miejscach docelowych — zob. Usunąć zamówienie i pobrać je ponownie.
Jak sprawdzić, że wszystko pojechało
Służy do tego okno „Porównanie folderów”: pokazuje dla każdego zamówienia, ile plików jest w źródle i ile w miejscu docelowym.