הקבצים שהורדו נערמים קודם בתיקיית העבודה שבמחשב (בדרך כלל C:\orders). המכונות בדרך כלל אינן קוראות ממנה: הן צריכות תיקיית רשת או כונן מחובר. בהעתקה לשם עוסק הסנכרון.
מתי הוא מופעל
- אחרי כל בדיקת הזמנות — כלומר בכל מחזור לפי לוח הזמנים;
- אחרי שהתוכנית סיימה את המרת הקבצים;
- ידנית — בכפתור «בדוק עכשיו» בלשונית «ראשי», שמריץ את כל המחזור במלואו יחד עם ההעתקה.
כפתור נפרד «רק לסנכרן» אינו קיים.
מה בדיוק מועתק
התוכנית עוברת לפי הכללים מהקובץ synchronize_folders.txt. כל כלל הוא זוג «מאיפה» ו«לאן». איך הוא בנוי מתואר במאמר כללי המסלולים: מבנה השורה ושני המצבים.
בתוך הכלל התוכנית עוברת על תיקיית המקור במלואה, כולל תיקיות מקוננות, ולכל קובץ מחליטה אם להעתיק אותו או לא:
- קובץ ללא מספר הזמנה בנתיב מדולג. המספר מחופש במבנה התיקיות; אם הוא אינו קיים, הקובץ נחשב זר והסנכרון אינו נוגע בו.
- SVG שעדיין נמצא בהמרה מדולג. אחרת הייתה מגיעה למכונה טיוטה במקום קובץ מוכן. כשההמרה תסתיים, על הדיסק יישאר כבר EMF — אותו יעתיק המחזור הבא.
- קובץ שכבר קיים ביעד ובאותו גודל אינו מועתק שוב. לכן מחזור רגיל עובר מהר גם על תיקייה גדולה: מועברים מחדש רק קבצים חדשים ושהשתנו.
ניקוי קובצי SVG מיושנים ביעד
אם בתיקיית היעד מונחים זה לצד זה שם.svg ו-שם.emf, ה-SVG נמחק: הוא התיישן, ה-EMF החליף אותו. זה עובד רק לכללים מסוג folder.
אם תיקיית היעד אינה זמינה
התוכנית כותבת שגיאה ביומן ועוברת לכלל הבא. הורדת ההזמנות וההמרה אינן נעצרות בגלל זה — הקבצים נשארים בתיקיית העבודה ויגיעו למכונה ברגע שתיקיית הרשת תופיע שוב.
הזמנות שאינן במסד הנתונים של התוכנית
אם בתיקיית העבודה מונחים קבצים של הזמנות שהתוכנית הזו לא הורידה (למשל נשארו מהתקנה קודמת), ביומן תופיע שורה מהצורה «orders skipped (not in database)» עם מספרי ההזמנות ודוגמת נתיב. קבצים כאלה אינם מועתקים ואינם נמחקים מעצמם — איך לפנות מקום עבורם כתוב במאמר כמה הזמנות לשמור ואיך לפנות מקום בדיסק.
הצד השני
התוכנית זוכרת אילו קבצים ולאן היא העתיקה. לכן במחיקת הזמנה היא מסירה לא רק את תיקיית העבודה אלא גם את הקבצים שהועתקו אל היעדים — ראו למחוק הזמנה ולהוריד אותה מחדש.
איך לבדוק שהכול הגיע
לשם כך קיים החלון «השוואת תיקיות»: הוא מציג לכל הזמנה כמה קבצים יש במקור וכמה ביעד.