{ "title": "M18 Sync", "pageTitle": "M18 Sync (by code)", "pageSubtitle": "ADMIN only. Sync Purchase Order, Delivery Order, or product/material from M18 using document or item code.", "tabPo": "1. Purchase Order", "tabDo": "2. Delivery Order", "tabDoExtra": "3. Delivery Order (Extra)", "tabProduct": "4. Product", "sectionPo": "M18 Purchase Order — sync by code", "sectionDo": "M18 Delivery Order — sync by code", "sectionDoExtra": "M18 Delivery Order — Extra (isExtra)", "sectionProduct": "M18 Product / Material — sync by code", "labelPoCode": "PO Code", "labelDoCode": "DO / Shop PO Code", "labelDoExtraCode": "DO / Shop PO Code (Extra)", "labelProductCode": "Item / Product Code", "labelSyncResult": "Sync Result", "btnSyncPo": "Sync PO from M18", "btnSyncDo": "Sync DO from M18", "btnSyncDoExtra": "Sync DO (Extra) from M18", "btnSyncProduct": "Sync product from M18", "syncing": "Syncing...", "placeholderPoCode": "e.g. PFP002PO26030341", "placeholderDoCode": "e.g. same document code as M18 shop PO", "placeholderDoExtraCode": "Enter multiple codes separated by comma or newline", "placeholderProductCode": "e.g. PP1175 (M18 item code)", "waiting": "Waiting for implementation...", "noResponse": "No response received", "alreadyExists": "{{docName}} already exists in system", "notFoundInM18": "{{docName}} not found in M18", "syncSuccess": "Synced successfully: {{total}} {{docName}}(s)", "syncFail": "Failed: unable to sync {{docName}}", "syncMixed": "Complete: success {{success}} / fail {{fail}} ({{docName}})", "syncedOk": "Synced successfully", "summarySuccess": "{{count}} delivery order(s) synced successfully", "summaryNotFound": "{{count}} order(s) not found in M18 ({{codes}})", "summaryExists": "{{count}} order(s) already exist in system ({{codes}})", "summaryFail": "{{count}} order(s) sync failed ({{codes}})", "alertEnterPoCode": "Please enter PO code.", "alertEnterDoCode": "Please enter DO / shop PO code.", "alertEnterDoExtraCode": "Please enter DO / shop PO code(s) (Extra).", "alertEnterAtLeastOne": "Please enter at least one code.", "alertEnterProductCode": "Please enter M18 item / product code.", "alertSyncFailed": "Sync failed: {{status}}", "errorPoSync": "M18 PO sync failed. Check console/network.", "errorDoSync": "M18 DO sync failed. Check console/network.", "errorDoExtraSync": "M18 DO (Extra) sync failed. Check console/network.", "errorProductSync": "M18 product sync failed. Check console/network." }