Kaynak: KB-v1
06_Workflows/WF-KARSI-HESAP-CIFT-KAYIT.md(2026-09-10, kısmi kod kapsamı). Bu makale artık kanoniktir; KB-v1 kopyası22_Archive'da referanstır.
KARŞI HESAP ile iki hesaba karşılıklı kayıt (HURDA/NAKİT/ÇEVİR/VADELİ/TAŞ/…)
Kimlik: WF-KARSI-HESAP-CIFT-KAYIT · Modül: MOD-CARI · Kim: END_USER · Güven: HIGH · Gerçeklik: AS-IMPLEMENTED
Ne zaman başlar
Bir işlem aynı anda ikinci bir hesaba ters yönde de yazılacaksa (KARŞI HESAP = EVET)
Ön koşullar
- Cari İşlemler (Ctrl+F) sekmesinde hesap seçilip TAMAM denmiş; şube, kasa ve hesap dolu (aksi hâlde "Sube,Kasa veya Hesap Seçili Değil. İşlem Yapamazsınız.")
- Hesap aktif (pasif hesapta işlem düğmeleri kapalıdır: "Hesap Pasif İşlem Yapamazsınız.")
- Kullanıcı grubunda ilgili ekran yetkisi açık; şube pasif değil (tetik: "SUBE PASIF HALDE. ISLEM YAPAMAZSINIZ...")
- Hesabın zorunlu evrakları eksik değil (tetik: "BU HESABIN ZORUNLU EVRAKLARI EKSIKTIR. ISLEM YAPAMAZSINIZ.")
- Karşı hesap aynı şubede, hesabı ve kartı aktif; kart şifreliyse şifre biliniyor
- MADEN ekranında panel görünse de karşı hesaba yazılmaz; VİRMAN'da panel gizlidir
Adımlar
| # | Ekran | Kullanıcı ne yapar | Sistem ne yapar | Tablolar |
|---|---|---|---|---|
| 1 | İşlem ekranı ortak çerçevesi | İşlem alanları doldurulur; F3 ile KARŞI HESAP'a gidilir, EVET seçilir, hesap seçilir | CmbHesapAdi listesi: ListOfHesap.FindAll(Id<>açık hesap, SubeId=Program.SubeId, HActive, KActive) | Cari.Hesaplar |
| 2 | İşlem ekranı ortak çerçevesi | Karşı hesap şifreliyse "Lütfen İşlem Yapabilmek İçin Kart Şifresini Giriniz." penceresi; şifre girilir | CmbHesapAdi_Validated: Password.IsNull=False ise PasswordBox; yanlışsa seçim boşa döner | Cari.Kartlar |
| 3 | İşlem ekranı ortak çerçevesi | F2 - KAYIT | Önce açık hesaba Save(); başarılıysa SendTo(I): Id=0, HesapId=karşı hesap, IslemTuru=DSX.FN.GetKarsiIslemTuru (ters yön), Validate+Save; aynı RefNo ile bağ kurulur | Cari.Islemler |
| 4 | İşlem ekranı ortak çerçevesi | Karşı satır yazılamazsa "Karşı Hesaba Transfer Edilemedi. Lütfen İşlemi Manuel Olarak Gerçekleştiriniz." | Ana satır kaydedilmiş kalır; karşı satır yoktur (dengesizlik) |
Sonuç (bakiye / stok / kasa)
- İki hesapta ters yönlü iki satır (aynı RefNo, aynı fiş no)
- İptalde "Bu İşleme Ait Karşı Hesapda İşlem Var. Karşı İşlemde İptal Edilsin mi?" sorulur (RefNo eşleşmesi)
Varyantlar
- HURDA: açıklamaya " - Hesap/KarşıHesap" eklenir
- NAKİT PARİTE ve VADELİ ARBİTRAJ: her iki satır için de karşı hesaba yazılır (4 satır)
Uyarı mesajları
- "Karşı Hesaba Transfer Edilemedi. Lütfen İşlemi Manuel Olarak Gerçekleştiriniz."
- "Lütfen İşlem Yapabilmek İçin Kart Şifresini Giriniz."
İlgili kurallar
Kaynaklar
- SRC-DRV-AZ —
az/ekran-A.md— bölüm 5.0.4 - SRC-DRV-AZ —
az/ekran-A.md— bölüm 5.2.3-C - SRC-CODE-EKRAN —
ekran/Ekran/iFormBase.vb— satır 87 - SRC-CODE-EKRAN —
ekran/Ekran/iFormBase.vb— satır 218 - SRC-CODE-EKRAN —
ekran/Ekran/iFormBase.vb— satır 265 - SRC-CODE-EKRAN —
ekran/Ekran/iFHurda.vb— satır 148 - SRC-CODE-DAO —
dao/Dao/Islem/Cari.Islem.vb— satır 1055
