مرجع صفحهٔ همگامسازی
صفحهٔ همگامسازی از نوارِ کناری با «تنظیمات» و کاشیِ «همگامسازی» (زیرعنوانِ کاشی: «ارسال/دریافتِ دستیِ تغییرات با سرور + دیدنِ ردیفهایِ ردشده») باز میشود. نقطهٔ وضعیتِ همگامسازی در نوارِ بالایِ برنامه هم با لمس همین صفحه را باز میکند.
این سند رفتارِ صفحه را از روی کد مینویسد، نه از دیدنِ یک دورِ واقعیِ همگامسازی با سرورِ زنده. هر چه دربارهٔ ارسال و دریافتِ واقعی با سرور آمده، همان است که کد انجام میدهد؛ مشاهدهٔ زندهاش در این سند ادعا نمیشود (نشانگرِ KB-WALK-sync در پایانِ سند).
دسترسی به صفحه
صفحه به نقشِ «تنظیمات» وابسته نیست، چون صفِ ارسال و تعارضها مالِ خودِ کاربر و همین دستگاهاند. هر کاربرِ واردشده، با هر نقش، میتواند صفحه را ببیند.
| حالت | آنچه میبینید |
|---|---|
| کاربرِ واردنشده | «شما به این بخش دسترسی ندارید» |
| محیطِ دمو | صفحه باز نمیشود و به تنظیمات برمیگردید |
| نصبی که به سرور وصل نیست | صفحهٔ «پیکربندینشده»؛ بخشِ زیر |
| نصبِ متصل به سرور | صفحهٔ کامل |
المانهایِ صفحهٔ همگامسازی
المانها از بالا به پایین آمدهاند. جز صفحهٔ «پیکربندینشده»، همه فقط در نصبِ متصل به سرور دیده میشوند و برایِ همهٔ نقشهایِ واردشده یکساناند. پیکانِ «بازگشت» در نوارِ بالا به صفحهٔ قبلی برمیگردد.
صفحهٔ «پیکربندینشده»
| برچسب ARB | نوع | کار | شرط نمایش |
|---|---|---|---|
| «همگامسازی وصل نیست» | عنوانِ حالتِ خالی | میگوید سروری وصل نیست | نصب بدونِ سرور |
| «این نصب کاملاً آفلاین کار میکند — هیچ سروری برای همگامسازی وصل نیست.» | توضیح | شرحِ حالت | نصب بدونِ سرور |
| «کپیِ گزارشِ خطا» | دکمه | گزارشِ تشخیصی را در کلیپبورد میگذارد | نصب بدونِ سرور |
| «گزارش شناسهٔ حساب و نصب، نسخه و سکو، وضعیتِ همگامسازی، نامِ جدول و فیلد، متنِ بیمقدارِ خطاهایِ اخیرِ برنامه و نتیجهٔ بررسیِ سلامتِ پایگاه را دارد؛ مقدارِ دادههایِ شما (مبلغ، نامِ مشتری و …) در آن نیست.» | یادداشت | افشایِ محتوایِ گزارش، زیرِ دکمه | نصب بدونِ سرور |
بنرهایِ ابتدایِ صفحه
این دو بنر فقط وقتی دیده میشوند که کارِ اولیهٔ دستگاه تمام نشده باشد و پس از تمامشدن خودبهخود میروند. بنرِ ارسالِ دادهٔ قدیمی بالاتر از بنرِ دریافتِ اولیه مینشیند.
| برچسب ARB | نوع | کار | شرط نمایش |
|---|---|---|---|
| «دادهٔ قدیمیِ این دستگاه هنوز کامل به سرور نرفته» | عنوانِ بنر | ثبتهایِ پیش از اتصال به سرور هنوز کامل فرستاده نشدهاند | ارسالِ دادهٔ قدیمی لازم است |
| «دادهٔ ثبتشده پیش از اتصال به سرور هنوز کامل ارسال نشده — «همگامسازی کن» را بزنید تا کامل شود.» | متنِ بنر | راهِ رفع | همان شرط |
| «در حالِ ارسالِ دادهٔ قدیمی…» | عنوانِ بنر (بیمتن) | ارسال در جریان است | ارسالِ دادهٔ قدیمی در حالِ اجرا |
| «این دستگاه هنوز اطلاعاتِ کسبوکار را کامل نگرفته» | عنوانِ بنر | این دستگاه هنوز دادهٔ کسبوکار را کامل نگرفته | دریافتِ اولیه لازم است |
| «اولین همگامسازیِ کامل هنوز انجام نشده — بعضی اطلاعات ممکن است ناقص دیده شوند. «همگامسازی کن» را بزنید تا کامل شود.» | متنِ بنر | راهِ رفع | همان شرط |
| «در حالِ دریافتِ اطلاعاتِ کسبوکار…» | عنوانِ بنر (بیمتن) | دریافت در جریان است | دریافتِ اولیه در حالِ اجرا |
کارتِ «همگامسازی»: وضعیت
نشانگرِ بالایِ کارت یک برچسبِ کوتاه دارد که از فازِ آخرین دور و تعدادِ تغییراتِ در انتظار ساخته میشود:
| وضعیت | برچسب ARB | شرط |
|---|---|---|
| در انتظارِ ارسال | «۳ تغییر در انتظارِ ارسال» | هنوز دوری نبوده یا آخرین دور موفق بوده، و تغییری از حسابِ شما در صف مانده |
| دور اجرا نشده | «هنوز همگامسازی نشده» | از بازشدنِ برنامه دوری ثبت نشده و صف خالی است |
| در حالِ اجرا | «در حالِ همگامسازی…» | دور در جریان است |
| موفق | «همگامسازی شد» | آخرین دور بیمشکل تمام شد و تغییری در صف نیست |
| ناقص | «همگامسازی ناقص» | ارتباط برقرار بود ولی دور کامل نشد و کاری مانده |
| نیازمندِ توجه | «نیازمندِ توجه» | دور تمام شد ولی تعارضِ باز، ردِ دائمی یا پیوستِ آپلودنشده هست |
| ناموفق | «همگامسازی ناموفق بود — دوباره تلاش کنید» | ارتباط با سرور شکست خورد |
در حالِ اجرا، زیرِ نشانگر گامِ جاریِ دور نوشته میشود:
| گام | برچسب ARB |
|---|---|
| منتظرِ نوبت (دورِ قبلی یا تبِ دیگر) | «در انتظارِ نوبت (دورِ قبلی یا تبِ دیگر)…» |
| آمادهسازیِ دادهٔ قدیمی | «آمادهسازیِ دادهٔ قدیمی برایِ ارسال…» |
| ارسالِ دوبارهٔ پیوستهایِ گمشده | «ارسالِ دوبارهٔ پیوستهایِ گمشده…» |
| ارسالِ تغییرات | «ارسالِ تغییرات به سرور…» |
| آپلودِ پیوستها | «آپلودِ پیوستها…» |
| ارسالِ مسیرِ پیوستهایِ آپلودشده | «ارسالِ مسیرِ پیوستهایِ آپلودشده…» |
| دریافتِ تغییرات | «دریافتِ تغییرات از سرور…» |
| بررسیِ کسبوکارهایِ در دسترس | «بررسیِ کسبوکارهایِ در دسترس…» |
زیرِ گام سه خط میآید:
| برچسب ARB | معنا | شرط |
|---|---|---|
| «هنوز هیچ همگامسازیِ موفقی نبوده» | هنوز دورِ کاملِ موفقی ثبت نشده | همیشه، تا اولین دورِ کاملِ موفق |
| «آخرین همگامسازی: ۱۴۰۵/۰۷/۲۵ ۱۰:۳۰» | زمانِ آخرین دورِ کاملِ موفق (نه آخرین تلاش) | پس از دورِ کاملِ موفق |
| «۵ تغییر در همهٔ کسبوکارهایِ این دستگاه در انتظارِ ارسال» | شمارِ تغییراتِ حسابِ شما که در هر کسبوکارِ همین دستگاه منتظرِ ارسالاند | همیشه |
| «۲ تغییر مالِ حسابِ دیگری روی این دستگاه است و تا ورودِ همان حساب فرستاده نمیشود» | تغییراتی که از حسابِ دیگری در همین دستگاه ماندهاند و تا ورودِ همان حساب فرستاده نمیشوند | وقتی چنین تغییری هست |
پس از یک دور، خلاصهٔ آن زیرِ این خطها میآید. فقط شمارندههایی که صفر نیستند دیده میشوند، جز اولی که همیشه هست:
| برچسب ARB | معنا |
|---|---|
| «۱۲ ردیف اعمال شد» | مجموعِ ردیفهایی که در ارسال و دریافت اعمال شد |
| «۱ ردیف بهطورِ دائمی رد شد» | ردیفهایی که سرور برایِ همیشه نپذیرفت |
| «۲ ردیف در تعارض ماند» | ردیفهایی که در تعارض ماندند |
| «پیوست: ۳ آپلود شد» | پیوستهایِ آپلودشده |
| «آپلودِ پیوست ناقص ماند — دورِ بعد دوباره تلاش میشود» | آپلودِ پیوست پیش از پایان قطع شد؛ دورِ بعد ادامه میدهد |
| «پیوست: ۱ توسط سرور رد شد (نوع یا حجمِ فایل) — دوباره تلاش نمیشود» | پیوستهایی که سرور بهخاطرِ نوع یا حجمِ فایل نپذیرفت؛ دوباره تلاش نمیشود |
کارتِ «همگامسازی»: خطا و دکمهها
اگر آخرین دور با شکستِ ارتباط تمام شده باشد، یک پیامِ ساده بهعلاوهٔ دکمهٔ جزئیات دیده میشود. جزئیات متنِ فنیِ خطاست و قابلِ انتخاب و کپی است. دکمه بسته به وضعیت «نمایشِ جزئیات» یا «پنهانکردنِ جزئیات» است.
| دستهٔ خطا | پیام | شرط |
|---|---|---|
| نوبتِ همگامسازی آزاد نشد | «نوبت همگامسازی آزاد نشد. تبهای دیگر ناخدا با همین آدرس را ببندید؛ در اجرای محلی، صفحه را کامل بازخوانی کنید و دوباره تلاش کنید. دادههای ارسالنشده در این مرورگر باقی میمانند.» | تبِ دیگری از همین برنامه نوبت را نگه داشته (جزئیاتِ وب: docs/guides/WEB-PLATFORM.md) |
| شبکه یا سرورِ موقتاً ناپاسخ | «اتصال به سرور برقرار نشد یا سرور موقتاً پاسخ نداد — کمی بعد دوباره تلاش کنید» | قطعیِ شبکه، زمانبر شدن یا خطایِ موقتِ سرور |
| نشست منقضی | «نشستِ ورودتان منقضی شده — دوباره وارد شوید و همگامسازی را تکرار کنید» | ورود پس از یک بار تازهسازی هم معتبر نماند |
| ساختارِ سرور نمیخواند | «اسکیمای سرور با این نسخهٔ برنامه نمیخواند — بخشی از دادهها همگام نشد. مدیرِ سیستم باید اسکریپتهای پایگاهداده را روی سرور اجرا کند.» | جدول یا ستونی که برنامه میشناسد روی سرور نیست |
| نسخهٔ سرور ناکافی | «سرور نسخهٔ لازم برای این برنامه را ندارد — هیچ دادهای دریافت نشد. مدیرِ سیستم باید آخرین اسکریپتهای پایگاهداده را روی سرور اجرا کند. تلاشِ دوباره تا آن موقع کمکی نمیکند.» | تابعِ لازم روی سرور نیست |
| دسترسی برداشته شد | «دسترسیتان به این کسبوکار برداشته شده است — با مالک تماس بگیرید. کارِ همگامنشدهتان محلی میماند.» | سرور شما را عضوِ فعالِ این کسبوکار نمیداند؛ پس از دور، نقشهایتان دوباره خوانده میشود |
| ناشناخته | «خطایی غیرمنتظره رخ داد» | هر خطایِ دیگر |
| برچسب ARB | نوع | کار | شرط نمایش |
|---|---|---|---|
| «همگامسازی کن» | دکمه | یک دورِ ارسال و دریافت را همین حالا اجرا میکند؛ تا پایانِ دور در حالتِ بارگذاری و خاموش است | نصبِ متصل به سرور |
| «کپیِ گزارشِ خطا» | دکمه | گزارشِ تشخیصی را کپی میکند و میگوید «گزارش کپی شد — میتوانید جایگذاری کنید.» | همیشه |
| «گزارش شناسهٔ حساب و نصب، نسخه و سکو، وضعیتِ همگامسازی، نامِ جدول و فیلد، متنِ بیمقدارِ خطاهایِ اخیرِ برنامه و نتیجهٔ بررسیِ سلامتِ پایگاه را دارد؛ مقدارِ دادههایِ شما (مبلغ، نامِ مشتری و …) در آن نیست.» | یادداشت | افشایِ محتوایِ گزارش | همیشه |
| «دریافتِ ناتمام» با «دریافتِ این جدولها در دورِ اخیر کامل نشد (سقفِ صفحهبندیِ سرور)؛ دورِ بعد از همانجا ادامه میدهد: invoices، products» | بنرِ هشدار | دریافتِ این جدولها در دورِ اخیر به سقفِ صفحهبندیِ سرور خورد؛ دورِ بعد ادامه میدهد | آخرین دور جدولِ ناتمام داشت |
| «اسکیمای سرور با این نسخهٔ برنامه نمیخواند — بخشی از دادهها همگام نشد. مدیرِ سیستم باید اسکریپتهای پایگاهداده را روی سرور اجرا کند.» با «این جدولها روی سرور وجود ندارند و از آنها پریده شد: budgets» | بنرِ هشدار | این جدولها روی سرور نیستند و از آنها پریده شد | آخرین دور جدولِ غایب داشت |
گزارش شاملِ وضعیتِ دور، گامِ جاری و مدتش، شمارههایِ نسخه و سکو، شناسهٔ حساب و نصب، نامِ جدولهایی که منتظرِ ارسالاند، تعارضها بهصورتِ نامِ فیلد (نه مقدار)، خطاهایِ اخیرِ برنامه که پاکسازی شدهاند، و نتیجهٔ بررسیِ سلامتِ پایگاهِ محلی است. مقدارِ دادههایِ کسبوکار در آن نمیآید.
کارتِ «تعارضها و ردهایِ دائمی»
عنوانِ کارت «تعارضها و ردهایِ دائمی» است و فقط تعارضهایِ کسبوکارِ فعال را فهرست میکند.
| برچسب ARB | نوع | کار | شرط نمایش |
|---|---|---|---|
| «هیچ تعارض یا ردِ دائمیای نیست» | متنِ خالی | هیچ مورد باز نیست | فهرست خالی است |
| «فقط موردهایِ اخیر نشان داده میشود — موردهایِ قدیمیتر هم هست» | یادداشت | فقط اخیرترین موردها (حداکثر دویست) نشان داده شدهاند | بیش از سقف مورد هست |
| «تلاشِ دوباره برای همه» | دکمه | همهٔ ردهایِ دائمی و گیرکرده را دوباره به صف میگذارد | دستکم یک ردِ دائمی یا گیرکردهٔ باز هست |
| «تعارض/رد در کسبوکارهایِ دیگرِ این دستگاه» با «۳ مورد در کسبوکارهایِ دیگرِ همین دستگاه باز است و در این فهرست دیده نمیشود؛ برای دیدن یا بازیابی به آن کسبوکار بروید.» | بنرِ هشدار | فقط عدد؛ برایِ دیدنِ جزئیات باید به آن کسبوکار بروید | موردِ باز در کسبوکارِ دیگرِ همین دستگاه هست |
| «کارتهایِ کسبوکارهایی که دیگر رویِ این دستگاه نیستند» با «۲ کارتِ تعارض/رد به کسبوکاری تعلق دارد که دیگر رویِ این دستگاه نیست (حذف یا پاکشده)؛ نه میشود به آن رفت و نه «تلاشِ دوباره» اثری دارد.» | بنرِ هشدار | کارتهایِ کسبوکاری که دیگر روی این دستگاه نیست | چنین کارتی هست |
| «پاکسازیِ این کارتها» | دکمه | کارتها را پس از تأیید پاک میکند | همان بنر |
دیالوگِ «پاکسازیِ کارتهایِ کسبوکارِ غایب» میگوید: «۲ کارت پاک میشود. دادهٔ این کسبوکار از قبل رویِ این دستگاه نیست؛ فقط کارتها پاک میشوند و نسخهٔ ردشدهای که فقط در همین کارتها مانده بود دیگر دیده نمیشود. این کار برگشت ندارد.» پس از تأیید با دکمهٔ «پاکسازیِ این کارتها» پیامِ «۲ کارت پاک شد.» میآید. این کار هرگز خودکار انجام نمیشود.
هر مورد با یک نشان و دو خط (جدول و شناسهٔ ردیف و در صورت وجود دلیل) نشان داده میشود. چهار نوعِ مورد هست:
| نشان | برچسب ARB | معنا | توضیحِ زیرِ مورد |
|---|---|---|---|
| تعارض | «تعارض» | همان ردیف هم در این دستگاه هم روی سرور عوض شده | تفاوتِ فیلدها: هر خط «فیلد: مقدارِ من ← مقدارِ سرور» |
| ردِ دائمی | «ردِ دائمی» | سرور این تغییر را برایِ همیشه نپذیرفته | دلیلِ سرور |
| گیرکرده | «گیرکرده» | سرور پنج بار پاسخِ نامعلوم داده | «سرور پنج بار پاسخِ نامعلوم داد؛ این ردیف دیگر خودکار فرستاده نمیشود — پس از رفعِ مشکلِ سرور «تلاشِ دوباره» بزنید.» |
| اعمالنشدنی | «اعمالنشدنی» | ردیفی که از سرور آمده روی این دستگاه نشست نکرد | «این ردیفِ سرور رویِ این دستگاه اعمال نشد (برخورد با دادهٔ محلی یا ستونِ ناسازگار). پس از رفعِ مانع، «تلاشِ دوباره» همان را دوباره اعمال میکند.» |
برایِ نوعِ «تعارض»، هر خطِ تفاوت از الگویِ «مبلغ: «۱۰۰» → «۱۲۰»» ساخته میشود و اگر فیلدی قابلِنمایش نباشد، «تفاوتِ قابلِنمایشی در فیلدها دیده نشد.» میآید. مقدارِ تهی را «(خالی)» و مقدارهایِ منطقی را «بله» و «خیر» مینویسد. شناسه و کسبوکار در تفاوت نمیآیند.
نامِ فیلدها در تفاوت:
| کلیدِ فیلد | برچسب ARB |
|---|---|
| name | «نام» |
| nameEn | «نامِ لاتین» |
| code | «کد» |
| note | «یادداشت» |
| status | «وضعیت» |
| amount | «مبلغ» |
| currency | «ارز» |
| date | «تاریخ» |
| dueDate | «تاریخِ سررسید» |
| issueDate | «تاریخِ صدور» |
| kind | «نوع» |
| active | «فعال» |
| serial | «شمارهٔ سریال» |
| bankName | «نامِ بانک» |
| symbol | «نماد» |
| rate | «نرخ» |
| fxRate | «نرخِ ارز» |
| contactId | «طرفِحساب» |
| warehouseId | «انبار» |
| projectId | «پروژه» |
| treasuryId | «خزانه» |
| sort | «ترتیب» |
| no | «شماره» |
| periodStart | «شروعِ دوره» |
| commission | «کارمزد» |
| type | «نوع» |
| deletedAt | «حذفشده در» |
فیلدی که در این فهرست نیست با نامِ خامِ انگلیسی خودش دیده میشود. اگر سرور ردیفی را حذف کرده باشد، فیلدِ «حذفشده در» این را نشان میدهد.
دکمههایِ هر مورد
دکمهها به نوعِ مورد وابستهاند.
| نوعِ مورد | دکمهها |
|---|---|
| تعارض | «نگهداشتنِ نسخهٔ من» و «استفاده از نسخهٔ سرور» |
| تعارضِ سندی در دورهٔ مالیِ قفلشده | فقط «استفاده از نسخهٔ سرور» با توضیحِ «این سند به دورهٔ مالیِ قفلشده تعلق دارد — فقط «نسخهٔ سرور» ممکن است؛ برایِ نگهداشتنِ نسخهٔ خود، دوره را باز کنید.» |
| ردِ دائمی، گیرکرده، اعمالنشدنی | «تلاشِ دوباره» و یک دکمهٔ دوم که برچسبش به مورد بستگی دارد (جدولِ بعد) |
برچسبِ دکمهٔ دوم در ردِ دائمی:
| برچسب ARB | وقتی | اثر |
|---|---|---|
| «متوجه شدم» | حالتِ عادی | کارت بسته میشود؛ اثر در توضیحِ زیرِ دکمه آمده |
| «حذف از این دستگاه» | سندِ قطعیِ ردشده | سند و خطوطش از این دستگاه حذف میشود (هشدارِ پایین) |
| «ابطالِ فاکتور» | فاکتورِ ردشده با سندِ دفتریِ پذیرفتهشده | فاکتور باطل میشود (هشدارِ پایین) |
| «ابطالِ فیش» | فیشِ حقوقِ ردشده | فیش باطل میشود (هشدارِ پایین) |
زیرِ دکمههایِ حالتِ عادی یکی از این دو توضیح میآید: ««متوجه شدم» فقط کارت را میبندد: این ردیف رویِ سرور نیست و فقط در همین دستگاه میماند. برایِ فرستادن، علت را برطرف کنید و «تلاشِ دوباره» بزنید.» یا، وقتی سرور نسخهای از همین ردیف دارد، ««متوجه شدم» ویرایشِ ردشده را کنار میگذارد: سرور آن را نپذیرفت، پس در همگامسازیِ بعدی همین ردیف به نسخهٔ سرور برمیگردد.». اگر کارت از گروهِ اصلاحِ انتقالِ خزانه باشد، «متوجه شدم» کلِ اصلاحِ ردشده را کنار میگذارد.
| اقدام | اثر | پیامِ موفقیت |
|---|---|---|
| «نگهداشتنِ نسخهٔ من» | وضعیتِ فعلیِ همین ردیف در دستگاه (نه عکسِ لحظهٔ تعارض) دوباره در صفِ ارسال مینشیند | «نسخهٔ شما نگه داشته شد و دوباره ارسال میشود.» |
| «استفاده از نسخهٔ سرور» | ردیفِ دستگاه با نسخهٔ سرور جایگزین میشود و تغییراتِ ارسالنشدهٔ همان ردیف از صف برداشته میشود | «نسخهٔ سرور جایگزین شد.» |
| «تلاشِ دوباره» | ردیفِ زندهٔ دستگاه دوباره در صف مینشیند؛ در نوعِ اعمالنشدنی ردیفِ سرور دوباره روی دستگاه اعمال میشود | «دوباره در صفِ همگامسازی قرار گرفت.» |
| «متوجه شدم» | کارت بسته میشود | «تأیید شد.» |
| «تلاشِ دوباره برای همه» | همهٔ ردهایِ دائمی و گیرکردهٔ باز دوباره به صف میروند | «۱۱۷ ردیف دوباره در صف قرار گرفت.» یا، اگر ردیفی بهخاطرِ دورهٔ قفلشده پریده باشد، «۱۱۵ ردیف دوباره در صف قرار گرفت؛ ۲ ردیف بابتِ دورهٔ قفلشده پرید.» |
وقتی «نسخهٔ من» روی پیشنویسی زده میشود که در دستگاهِ دیگر دور ریخته شده، «این پیشنویس روی دستگاهِ دیگری دور ریخته شده است. «نگهداشتنِ نسخهٔ من» آن را بهصورتِ سندِ تازه با شمارهٔ جدید ثبت میکند؛ پیشنویسِ قدیمی همانطور حذفشده میماند.»
دیالوگِ «استفاده از نسخهٔ سرور؟» با «با این کار، مقادیرِ زیر از ویرایشِ شما در این دستگاه برای همیشه حذف میشود:» فهرستِ فیلدها را نشان میدهد. با تأیید، مقدارهای دستگاهِ شما جایگزین میشوند و برنمیگردند. این اقدام چیزی روی سرور نمینویسد.
هر سه دیالوگ پیش از دکمهٔ تأیید خلاصهٔ آنچه از دست میرود را میآورند: شمارهٔ سند، تاریخ، مبلغ و شمارِ خط. اگر تأیید کنید دیگر نمیتوانید همین اقدام را لغو کنید، جز حذفِ سند که تا هفت روز یک بار قابلِ بازگرداندن است.
- حذفِ سندِ ردشده: عنوانِ «حذفِ سندِ ردشده از این دستگاه؟»؛ متنِ «سرور این سندِ قطعی را برایِ همیشه رد کرده و هرگز آن را نگرفته است. با تأیید، سند و خطوطش فقط از این دستگاه حذف میشوند تا دفترِ همهٔ دستگاهها یکی بماند؛ متنِ کاملِ سند در ردِ حسابرسی میماند. برایِ نگهداشتنِ سند، بهجایِ تأیید دوره را باز کنید و «تلاشِ دوباره» بزنید.»؛ نتیجه: «سندِ ردشده از این دستگاه حذف شد؛ ردِ حسابرسی ثبت شد.»
- ابطالِ فاکتور: عنوانِ «ابطالِ فاکتورِ ردشده»؛ دکمهٔ تأیید «ابطال و ادامه»؛ متنِ «سرور این فاکتور را رد کرده ولی سندِ دفتریاش را از پیش پذیرفته است. با «متوجه شدم» فاکتور در این دستگاه ابطال میشود (سندِ معکوس ثبت و همگام میشود)، شمارهاش پاک میشود تا خودِ فاکتورِ ابطالشده هم به سرور برسد، و ردِ حسابرسی ثبت میشود. اگر میخواهید فاکتور بماند، شمارهاش را عوض کنید و «تلاشِ دوباره» بزنید.»؛ نتیجه: «فاکتورِ ردشده ابطال شد؛ سندِ معکوس و ردِ حسابرسی ثبت شدند.»
- ابطالِ فیش: عنوانِ «ابطالِ فیشِ ردشده؟»؛ متنِ «این فیش رویِ سرور پذیرفته نشد (همان دوره برایِ این کارمند از دستگاهِ دیگر ثبت شده)، ولی سندِ تعهدِ آن پذیرفته شده است. با ادامه فیش باطل و سندهای تعهد/پرداختِ آن معکوس میشوند تا هزینهٔ بیصاحب نماند. اگر میخواهید فیش بماند، بهجای این «تلاشِ دوباره» را بزنید.»؛ نتیجه: «فیش باطل و سندهایش معکوس شد»
خلاصهٔ بالایِ این دیالوگها از این الگوها ساخته میشود:
| نوع | الگو |
|---|---|
| سند | «سندِ شمارهٔ ۱۲ · ۱۴۰۵/۰۷/۲۰ · ۵٬۰۰۰٬۰۰۰ تومان · ۲ خط» |
| فاکتور | «فاکتورِ شمارهٔ ۴۱ · ۱۴۰۵/۰۷/۲۰ · ۵٬۰۰۰٬۰۰۰ تومان · ۳ قلم · ۱ پرداخت» |
| فیش | «فیشِ دورهٔ ۱۴۰۵/۰۶/۰۱ · ۲٬۰۰۰٬۰۰۰ تومان» |
| سندِ بیشماره | «بیشماره» |
| فاکتورهایِ وابسته | «بههمراهِ ۲ فاکتورِ هنوزهمگامنشدهٔ همین سند» |
| دلیلِ سرور | «دلیلِ سرور: دورهٔ مالی بسته است» |
| راهنمایِ بازگرداندن | «تا ۷ روز — تا وقتی دادهٔ محلیِ این دستگاه پاک نشده — از بخشِ «حذفشدههایِ این دستگاه» در همین صفحه یک بار بازگرداندنی است.» |
کارتِ «حذفشدههایِ این دستگاه»
این کارت فقط وقتی دیده میشود که سندِ ردشدهای در هفت روزِ گذشته از همین دستگاه حذف شده و هنوز بازگرداندنی باشد. عنوانِ کارت «حذفشدههایِ این دستگاه» و توضیحش «سندهایِ ردشدهای که در ۷ روزِ گذشته از این دستگاه حذف شدهاند؛ هرکدام یک بار بازگرداندنی است، تا وقتی دادهٔ محلیِ این دستگاه پاک نشده. بازگرداندن فقط در همین دستگاه است و کارتِ ردِ سرور را دوباره باز میکند.» است.
| برچسب ARB | نوع | کار | شرط نمایش |
|---|---|---|---|
| خلاصهٔ سند (همان الگویِ «سند») | متن | مشخصاتِ سندِ حذفشده | هر موردِ بازگرداندنی |
| «حذف: ۱۴۰۵/۰۷/۲۲» | متن | روزِ حذف | هر مورد |
| «احتمالِ تکرار» | نشان | پس از حذف سندی با همان تاریخ و مبلغ ثبت شده | مورد مشکوک به تکرار است |
| «بازگرداندن» | دکمه | پس از تأیید سند را فقط در این دستگاه برمیگرداند | هر مورد |
دیالوگِ «بازگرداندنِ سندِ حذفشده؟» میگوید: «سند و خطوطش (و فاکتورهایِ وابسته) فقط در این دستگاه برمیگردند و کارتِ ردِ سرور دوباره باز میشود. برایِ رسیدن به سرور، علتِ رد را برطرف کنید و «تلاشِ دوباره» بزنید. این کار فقط یک بار ممکن است.» اگر مورد مشکوک به تکرار باشد پیشاپیش میگوید: «هشدار: پس از حذف، سندی با همان تاریخ و مبلغ ثبت شده است. اگر همان سند را دوباره زدهاید، بازگرداندن آن را دو بار در دفتر میآورد.» نتیجه: «سند بازگردانده شد؛ کارتِ ردِ آن دوباره باز است.»
پیامهایِ پایانِ دورِ دستی
پس از «همگامسازی کن»، یک توست نتیجهٔ دور را میگوید. توستِ سبز فقط وقتی میآید که هیچکدام از حالتهایِ دیگر نباشد.
| حالت | پیام | شرط |
|---|---|---|
| موفق | «همگامسازی با موفقیت انجام شد» | فاز موفق و هیچ ردِ تازهای نیست |
| ناموفق | «همگامسازی ناموفق بود — دوباره تلاش کنید» | ارتباط شکست خورد |
| ناقص: ردیفِ گیرکرده | «۴ تغییر همچنان نرفته — «تعارضها و ردهایِ دائمی» را ببینید» | صف خالی نشد |
| ناقص: ارسال زودتر ایستاد | «ارسال زودتر متوقف شد — دورِ بعد از همانجا ادامه میدهد» | دستهٔ نیمهتأییدشده یا پاسخِ نامعلوم |
| ناقص: جدولِ غایب | «این جدولها روی سرور نیستند و از آنها پریده شد: budgets» | جدولی روی سرور نیست |
| ناقص: دریافتِ ناتمام | «دریافتِ این جدولها ناتمام ماند و در دورِ بعد ادامه مییابد: invoices» | دریافتِ جدولی تمام نشد |
| ناقص: اعمالنشدنی | «۲ ردیفِ سرور روی این دستگاه قابلِ اعمال نبود و قرنطینه شد — پایینِ همین صفحه» | ردیفِ سرور قرنطینه شد |
| نیازمندِ توجه | «همگامسازی انجام شد، ولی ۳ مورد نیازمندِ توجه است — تعارض، ردِ دائمی یا پیوستِ آپلودنشده در همین صفحه» | تعارض، ردِ دائمی یا پیوستِ آپلودنشده؛ شمارش همهٔ کسبوکارهایِ دستگاه را میگیرد |
| ردِ تازه | «۱ سند بهطورِ دائمی رد شد — پایینِ همین صفحه را ببینید» | دور موفق بود ولی سندی ردِ دائمی شد |
پس از دورِ دستی، اگر دریافتِ سرور سندی را اعمال کرده یا حذفی را آورده باشد، صفحههایِ سندهایِ «در انتظارِ شماره» شمارهشان را دوباره میخوانند.
همگامسازیِ خودکار
دکمه تنها راهِ شروعِ دور نیست. بر پایهٔ کد، دورِ خودکار در این لحظهها اجرا میشود: باز شدنِ برنامه، برگشتِ اتصال، بازگشت به پیشزمینه، رویدادِ تغییرِ سرور، و هر پانزده دقیقه. روی وب پس از هر نوشتنِ محلی هم دور اجرا میشود (docs/guides/WEB-PLATFORM.md). پس از دورِ ناموفق فاصلهٔ تلاشها زیاد میشود. اگر دورِ خودکار و دستی همزمان برسند، یک دور اجرا میشود.
آنچه همگام نمیشود
ماندهٔ ذخیرهشده تا تاریخِ قفلِ دوره و میانگینِ موزونِ انبار کشهایِ مشتقاند؛ هرگز به سرور نمیروند و دوباره ساخته میشوند. تنظیماتِ دستگاه (مثل تم و زبان) هم همگام نمیشوند. بازیابی از فایلِ پشتیبان هم صفِ ارسال و کارتهایِ تعارض را پاک میکند و از فایل نمینویسد؛ جزئیات در مرجعِ صفحهٔ پشتیبانگیری و خروجی.
حالتهایِ صفحهٔ همگامسازی
| حالت | نشانهٔ قابل مشاهده | شرط |
|---|---|---|
| بارگذاری | چرخانِ بارگذاری | هنگامِ خواندنِ وضعیت |
| بدونِ سرور | صفحهٔ «پیکربندینشده» | نصبِ بدونِ سرور |
| خالی | «هیچ تعارض یا ردِ دائمیای نیست» | تعارضی نیست |
| پر | شمارندهها و فهرستِ تعارضها | دور اجرا شده یا مورد باز هست |
| در حالِ اجرا | نشانگرِ در حالِ اجرا و گام | دور در جریان |
| بیدسترسی | «شما به این بخش دسترسی ندارید» | واردنشده |
| دمو | بازگشت به تنظیمات | محیطِ دمو |
پیامهایِ خطایِ رایجِ صفحهٔ همگامسازی
پیامهایِ زیر از موتورِ تعارض میآیند و در توست دیده میشوند. اگر در حلِ تعارض، «تلاشِ دوبارهٔ همه» یا پاکسازیِ کارتها خطایی خارج از این قرارداد پیش بیاید، بهجایِ متنِ فنیِ خطا توستِ فارسیِ عمومیِ «انجام نشد — دوباره تلاش کنید.» دیده میشود.
| پیام عین ARB | شرط رخداد |
|---|---|
| «این ردیفِ تعارض دیگر وجود ندارد — صفحه را تازه کنید.» | کارت در این فاصله حل یا پاک شده |
| «ردیفِ تعارض ناقص است — جدول/شناسه مشخص نیست.» | کارت جدول یا شناسهٔ ردیف ندارد |
| «ردیفِ تعارض ناقص است — جدول/شناسه/نسخهٔ سرور مشخص نیست.» | کارت جدول، شناسه یا نسخهٔ سرور ندارد |
| «این ردیف ردِ دائمی نیست — نمیتوان آن را فقط تأیید کرد.» | «متوجه شدم» روی کارتی زده شد که ردِ دائمی نیست |
| «این ردیف ردِ دائمی نیست — از «نسخهٔ من»/«نسخهٔ سرور» استفاده کنید.» | «تلاشِ دوباره» روی کارتی زده شد که ردِ دائمی نیست |
| «این ردیفِ سرور هنوز رویِ این دستگاه اعمالشدنی نیست — مانعِ محلی (ردیفِ همنام/همکد، یا ستونِ ناسازگار) را برطرف کنید و دوباره تلاش کنید.» | ردیفِ سرور هنوز بهخاطرِ مانعِ محلی (ردیفِ همنام یا ستونِ ناسازگار) اعمال نمیشود |
| «فاکتورِ ردشده رویِ این دستگاه پیدا نشد.» | ابطالِ فاکتورِ ردشده: فاکتور روی دستگاه نیست |
| «این سند به دورهٔ مالیِ قفلشده تعلق دارد — پیش از حلِ این تعارض، دوره را باز کنید.» | حلِ تعارض یا تلاشِ دوباره روی سندِ دورهٔ مالیِ قفلشده |
| «ردِ حسابرسیِ این حذف برایِ بازگرداندن کافی نیست.» | ردِ حسابرسیِ حذف برایِ بازگرداندن کافی نیست |
| «مهلتِ ۷روزهٔ بازگرداندنِ این سند گذشته است.» | بیش از هفت روز از حذف گذشته |
| «این سند پیشتر یک بار بازگردانده شده است.» | سند پیشتر یک بار بازگردانده شده |
| «برای اصلاح انتقال، مجوز ویرایش خزانه و روزنامه لازم است.» | اصلاحِ انتقالِ ردشده از کسبوکارِ دیگری است یا مجوزِ خزانه و روزنامه ندارید |
برای جداکردنِ نامِ جدولها در پیامهایِ بالا از جداکنندهٔ «، » استفاده میشود.
پیوندهایِ مرتبط با صفحهٔ همگامسازی
- مرجعِ صفحهٔ پشتیبانگیری و خروجی — همگامسازی جایگزینِ پشتیبانِ مستقل نیست.
- دادههایِ شما کجاست و مال کیست
- دسترسی و لاگِ فعالیت
- جزئیاتِ سکوها (وب و اندروید):
docs/guides/WEB-PLATFORM.md