#766

Alla laaditud failid satuvad kõigepealt arvutis olevasse töökausta (tavaliselt C:\orders). Masinad sellest tavaliselt ei loe: neile on vaja võrgukausta või ühendatud ketast. Sinna kopeerimisega tegeleb sünkroonimine.

Millal see käivitub

  • pärast iga tellimuste kontrolli — see tähendab igal ajakavajärgsel tsüklil;
  • pärast seda, kui programm lõpetas failide konverteerimise;
  • käsitsi — nupuga „Kontrolli kohe“ vahekaardil „Avaleht“, see ajab läbi kogu tsükli tervikuna koos kopeerimisega.

Eraldi nuppu „ainult sünkroonida“ ei ole.

Mida täpselt kopeeritakse

Programm käib läbi failis synchronize_folders.txt olevad reeglid. Iga reegel on paar „kust“ ja „kuhu“. Kuidas see on üles ehitatud, on kirjeldatud artiklis Marsruudireeglid: rea vorming ja kaks režiimi.

Reegli sees käib programm lähtekausta tervikuna läbi, kaasa arvatud alamkaustad, ja otsustab iga faili kohta, kas seda kopeerida või mitte:

  • Fail, mille tees ei ole tellimuse numbrit, jäetakse vahele. Numbrit otsitakse kaustade struktuurist; kui seda ei ole, loetakse fail kõrvaliseks ja sünkroonimine ei puutu seda.
  • SVG, mis on alles konverteerimisel, jäetakse vahele. Muidu läheks masinale toorik valmis faili asemel. Kui konverteerimine lõpeb, jääb kettale juba EMF — selle kopeeribki järgmine tsükkel.
  • Faili, mis on sihtkohas juba olemas ja sama suurusega, teist korda ei kopeerita. Seetõttu käib tavaline tsükkel kiiresti läbi ka suure kausta puhul: uuesti tõstetakse ümber ainult uued ja muutunud failid.

Aegunud SVG-de eemaldamine sihtkohas

Kui sihtkausta on kõrvuti sattunud nimi.svg ja nimi.emf, siis SVG kustutatakse: see on aegunud, selle asendas EMF. See toimib ainult folder tüüpi reeglite puhul.

Kui sihtkaust ei ole kättesaadav

Programm kirjutab vea logisse ja läheb järgmise reegli juurde. Tellimuste allalaadimine ja konverteerimine seejuures ei peatu — failid jäävad töökausta ja jõuavad masinani kohe, kui võrgukaust uuesti ilmub.

Tellimused, mida programmi andmebaasis ei ole

Kui töökaustas on selliste tellimuste faile, mida see programm alla ei laadinud (näiteks jäid eelmisest paigaldusest), ilmub logisse rida kujul „orders skipped (not in database)“ koos tellimuste numbrite ja tee näitega. Selliseid faile ei kopeerita ega kustutata ise — kuidas nende alt ruumi vabastada, on kirjas artiklis Kui palju tellimusi hoida ja kuidas ketast puhastada.

Tagurpidi suund

Programm mäletab, milliseid faile ja kuhu ta kopeeris. Seetõttu eemaldab ta tellimuse kustutamisel mitte ainult töökausta, vaid ka sihtkohtadesse kopeeritud failid — vt Kustuta tellimus ja laadi see uuesti alla.

Kuidas kontrollida, et kõik kohale jõudis

Selleks on aken „Kaustade võrdlus“: see näitab iga tellimuse kohta, mitu faili on lähtekohas ja mitu sihtkohas.