MERKEZ şubesindeki ANAKASA'dan ŞUBE-2'nin kasasına 2.000 USD gönderiliyor. Bu iş Cari.Islemler'e değil Cari.Transferler'e yazılır ve kabul edilince stok defterine düşer. İkinci mekanizma provizyon: karşı şube hesabına yapılan cari işlemin karşı şubede onaylanması. Virman ile karıştırılmamalı (SCN-VIRMAN): virman bakiye taşır, transfer fiziksel stok taşır.
Başlangıç durumu
| Öğe | Değer |
|---|---|
| MERKEZ / ANAKASA (KasaId 1) | 10.000 USD |
| ŞUBE-2 / ŞUBE2-KASA (KasaId 5) | 1.000 USD |
| Ayar | Provizyon = açık (CFG-PROVIZYON); şubeler arası transfer hesabı tanımlı (KarsiHesapId, TBL-CARI.HESAPLAR) |
| Yetki | gönderen kullanıcıda IslemIptal (iptal için) |
Kullanıcı işlemi
A — Kasa transferi: 1. TRANSFER (Hesap Yönetimi ▸ Transferler) ▸ Giden kutusu ▸ Transfer düğmesi → TRANSFER EKLE: gönderen kasa ANAKASA, alan kasa ŞUBE2-KASA, işlem nakit, stok USD, miktar 2.000, açıklama; kayıt (WF-KASA-TRANSFER adım 2). 2. ŞUBE-2 kullanıcısı: Gelen kutusu ▸ Kabul Et → "Seçmiş Olduğunuz Gonderi Kabul Edilecektir. Onaylıyor musunuz?" (BR-TRANSFER-001); alternatif Reddet; gönderen Durum=0 iken İptal.
B — Provizyonlu cari işlem: MERKEZ'de ŞUBE-2 transfer hesabına işlem girilir (tür ÇIKIŞ'a kilitli, BR-TIP-012; takoz girişi yapılamaz, BR-TAKOZ-001); F2 → Provizyon.Send (BR-TRANSFER-004); ŞUBE-2 listede BEKLİYOR satırını onaylar/reddeder (BR-TRANSFER-005, SCR-PROVIZYONGRID).
Beklenen kayıt
A — Cari.Transferler 1 satır: CikanKasaId 1, GirenKasaId 5, StokTipi 0 (nakit), StokId USD, Miktar 2.000, Milyem/Has (madende), Maliyet = birim fiyat TL × miktar, Status 0 (bekliyor) → kabulde 1, ret 2, iptal 3. Cari.Islemler satırı yok; bu senaryoda IslemKodu/IslemTipi alanları uygulanmaz. Kolonlar CikanKasaId, GirenKasaId, StokTipi, Status tablo makalesinde doğrulandı (TBL-CARI.TRANSFERLER).
B — Cari.Provizyon satırı (HesapId, ProvizyonHesapId, IslemId; durum ENUM-PROVIZYON-PROVIZYONSTATUS); onayda karşı şubede Cari.Islemler satırı yazılır (takoz dahil).
Bakiye etkisi
- A: cari bakiye değişmez (WF-KASA-TRANSFER sonuç).
- B: onaylanana kadar karşı şubede işlem yoktur; onay sonrası her iki şubede kayıt ve bakiye (WF-PROVIZYON-SUBELER-ARASI sonuç). Alıcı şube düzeltemez: "…Önce Gönderen Şube Düzeltmelidir."
Stok etkisi
A — kabulde TRG-CARI.TRANSFERUPDATESTATUS (BR-TRANSFER-002):
Stok.StokHaraketleri |
Bolum | KasaId | StokTipi | Miktar |
|---|---|---|---|---|
| çıkan kasa | 2 | 1 ANAKASA | 2 (StokTipi 0 → nakit) | −2.000 |
| giren kasa | 2 | 5 ŞUBE2-KASA | 2 | +2.000 |
ANAKASA 8.000 USD, ŞUBE2-KASA 3.000 USD. Bekleyen (Status 0) transferde stok hiç hareket etmez; "transfer yapıldı ama karşı kasada görünmüyor" (H-114, PB-037) → kabul edilmemiştir. Tetikleyici önce StokTipi −2 eski satırları siler (GAP: yazdığı satırlar StokTipi 1/2 iken −2'yi silmesi kod tutarsızlığı görünüyor; GAP-TRN-TRANSFER-02).
Rapor etkisi
- Nakit/maden stok hareket raporlarında Bolum 2 satırları transfer olarak görünür; tarih/yön sorunları H-119.
- Kasa durum raporu (SCR-FRMNAKITSTOKLARI) kasa bazlı; hesap bakiyesi kasa ayrımı yapmaz (kitapçık §3.1).
- Devir:
Cari.Transferlerdevirde TRUNCATE edilir; transfer stok satırları (45.400) BalanceRepair ile yok olur (TD-30).
Kontrol soruları
- Transfer hangi tabloya yazılır? — Cari.Transferler; Cari.Islemler değil.
- Stok ne zaman hareket eder? — Yalnız Status=1 (kabul) güncellemesinde, tetikleyiciyle.
- Virman ile farkı? — Virman bakiye taşır (iki hesap), transfer fiziksel stok taşır (iki kasa).
- Ret edilirse? — Status 2; stok satırı yok; gönderen kasada mal kalır.
- Provizyonlu işlemi alıcı şube düzeltebilir mi? — Hayır; önce gönderen şube.
- Transfer hesabında GİRİŞ neden yapılamaz? — Şube hesabında tür ÇIKIŞ'a kilitlidir (BR-TIP-012); takoz girişi engellenir (H-069).
Sık yapılan hata
- Gelen kutusunu kontrol etmemek → stok "kayıp" (H-114).
- "Provizyon İşlemi Kayıt Edilemedi. Tekrar Denemek İstiyor musunuz?" döngüsü — bağlantı kopması (INT-SUBELER-ARASI-PROVIZYON-RSAKTAR).
- Devir öncesi transferleri geri yapmamak (WF-YIL-SONU-DEVIR adım 5).
