Çevrimdışı çalışma
İnternet/sunucu yokken satış, bekleyen satışlar ve senkron. Herkes için
POS offline-first tasarlanmıştır: ağ kesilse, sunucu kapansa ya da Mikro erişilemese bile kasa satışa devam eder. Müşteri bekletilmez; veri kaybolmaz.
#Bağlantı durumu
Satış ekranının üst çubuğunda Çevrimiçi / Çevrimdışı rozeti ve yanında senkron düğmesi vardır; altında Son Senkron zamanı yazar. Kasiyer Seçimi ekranında da durum görünür.
- Çevrimiçi — kernel'e ulaşılıyor.
- Çevrimdışı — kernel'e ulaşılamıyor; kasa yerel kayıtlarla çalışır.
- Son Senkron — kataloğun en son ne zaman başarıyla çekildiği; Son Çevrimiçi — en son ne zaman bağlantı olduğu (ikisi farklı şeylerdir).
#Çevrimdışıyken neler yapılabilir?
| İşlem | Çevrimdışı |
|---|---|
| Barkod okutma, ürün arama, hızlı ürün butonları | ✔ — yerel katalogdan (son senkrondaki fiyat/ürün bilgisiyle). |
| Kasiyer girişi | ✔ — kasiyer bu kasada daha önce çevrimiçiyken en az bir kez girdiyse (yerel PIN özeti ve yetkileri saklanır). |
| Vardiya açma/kapatma, satış, ödeme, fiş | ✔ — yerelde tamamlanır, kernel'e bağlantı gelince gönderilir. |
| Askıya alma, ekran kilitleme, indirim | ✔ |
| Fiş numarası | ✔ — kasada yerel üretilir. |
| Müşteri (cari) arama | ✘ — cari listesi sunucudan aranır, çevrimiçi gerekir. Çevrimdışıyken satış terminalin varsayılan carisine (yoksa Perakende Müşteri) yapılır. |
| Hızlı ürün düzeni | ✔ — son başarılı yükleme yerel önbellekten gösterilir. |
| İlk kurulum / ilk katalog indirme | ✘ — ilk bağlantıda kernel'e ulaşılmalıdır. |
#Satışlar nasıl gönderilir?
- Yerel kuyruk.Her satış tamamlandığı anda kasanın yerel veritabanındaki kuyruğa yazılır.
- Kernel'e gönderim.Arka plan işçisi bağlantı olduğunda kuyruktaki satışları sırayla kernel'e gönderir. Kernel her satışa hemen "aldım" yanıtı verir.
- Çift kayıt olmaz.Her satışın benzersiz kimliği (id2) vardır; ağ kesilip aynı satış tekrar gönderilse bile kernel ikinci kez kaydetmez.
- Mikro'ya yazım.Kernel satışı arka planda Mikro'ya yazar. Mikro da kapalıysa kernel kuyruğunda bekler. → Senkron ve aktarım
Kasa ile Mikro arasında üç ayrı bekleme noktası vardır: kasanın kuyruğu (kernel'e ulaşamadı), kernel'in kuyruğu (Mikro'ya yazamadı) ve Mikro. Yönetici panelinde Satışlar yalnızca kernel'e ulaşanları gösterir; bir satış orada yoksa hâlâ kasadadır.
#Kataloğun güncellenmesi
- Kasa kataloğu (ürün/fiyat/barkod, stok, politika) çevrimiçiyken her 10 dakikada bir kendiliğinden yeniler.
- Hemen güncellemek için üst çubuktaki (ya da Kasiyer Seçimi'ndeki) Şimdi Senkronize Et düğmesine dokunun — örneğin fiyat değiştirildiyse veya yönetici yeni kasiyer/terminal ayarı yaptıysa.
- Çevrimdışıyken katalog son bilinen haliyle kullanılır; fiyat güncellemeleri bağlantı gelince alınır.
- Sıfır fiyat/indirim politikası da yerel önbellekten okunur; kasada hiçbir satış anında sunucuya sorulmaz (bu, hızı ve çevrimdışı çalışmayı garanti eder).
#Dikkat edilecekler
- Kasa bilgisayarını uzun süre çevrimdışı bırakmayın: bekleyen satışlar yalnızca o bilgisayarda durur. Diski bozulursa kernel'e ulaşmamış satışlar kaybolur.
- Programı bekleyen satış varken kaldırmayın ve yerel veri klasörünü silmeyin.
- Yönetici gün sonunda Satışlar'da tüm terminallerin satışlarının geldiğini doğrulamalıdır (Gün sonu).
- Sunucu uzun süre kapalı kaldıysa açıldığında kasaların bekleyen satışları kendiliğinden göndermesi birkaç dakika sürebilir.