Kaynak: KB-v1
06_Workflows/WF-ISLEM-IPTAL.md(2026-09-10, kısmi kod kapsamı). Bu makale artık kanoniktir; KB-v1 kopyası22_Archive'da referanstır.
Tek işlem iptali (İPTAL)
Kimlik: WF-ISLEM-IPTAL · Modül: MOD-CARI · Kim: END_USER · Güven: VERY_HIGH · Gerçeklik: AS-IMPLEMENTED
Ne zaman başlar
Yanlış girilen işlemin silinmesi (iptal işareti)
Ön koşullar
- Kullanıcı grubunda İşlem iptal yetkisi
- Provizyonlu işlemde gönderen şube iptal etmiş
Adımlar
| # | Ekran | Kullanıcı ne yapar | Sistem ne yapar | Tablolar |
|---|---|---|---|---|
| 1 | CARİ İŞLEMLER (ana ekran) | Listede satır seçilir; İPTAL | IslemIptal=False → "İşlem İptal Etme Yetkiniz Yok."; provizyon IsAllow kontrolü | Sistem.UserGroup |
| 2 | CARİ İŞLEMLER (ana ekran) | Mutabakat / PIN / gün kontrolleri | LastMutabikId ≥ Id → MutabakatPermission; DeletePermission PinGerekli → PIN; EskiTariheYapilamaz ve gün ≥ SilGun → "…Gün Geçmiştir. İşlemi Yöneticiniz İptal Edebilir." (mesaj sonrası akış DeleteAt'e devam eder) | Sistem.Settings |
| 3 | CARİ İŞLEMLER (ana ekran) | FATURA satırıysa fatura bağı; değilse silme onayı → Evet | DeleteAt: DeletePermission=EskiTariheYapilamaz ve gün > SilGun → silme talebi (bkz. WF-SILME-TALEBI); FrmSilmeOnayAl ile gerekçe zorunlu | Sistem.SilOnay, Sistem.SilAciklama |
| 4 | CARİ İŞLEMLER (ana ekran) | Karşı bacak varsa "Bu İşleme Ait Karşı Hesapda İşlem Var. Karşı İşlemde İptal Edilsin mi?" | Aynı RefNo+IslemKodu ile başka satır varsa: Evet → tüm RefNo satırları IsDeleted=True; Hayır → virmanda ret ("Virman İşlemi İptal Edilmedi."), diğerlerinde yalnız seçili satır. Karşı bacak yoksa DeleteEFatura (entegratör iptali) sonra IsDeleted=True | Cari.Islemler |
| 5 | CARİ İŞLEMLER (ana ekran) | Satır listeden kalkar; bakiye kartı yenilenir | Sistem.SilAciklama'ya gerekçe; Cari.History'e "İptal Edildi" | Sistem.SilAciklama, Cari.History |
Sonuç (bakiye / stok / kasa)
- İşlem fiziksel silinmez, IsDeleted=True; bakiye ve stok etkisi kalkar
- Ara (İşlem Geçmişi) ve Silinmiş İşlemler Raporu'nda görünür; yönetici geri alabilir (Geri Alındı)
Varyantlar
- Tetik doğrudan DELETE'i reddeder (ISLEMLERI DIREK SILEMEZSINIZ)
Uyarı mesajları
- "İşlem İptal Etme Yetkiniz Yok."
- "Bu İşlemi İptal Etme Yetkiniz Yok. Önce Gönderen Şube İptal Etmelidir."
- "N Numaralı İşlemde Mutabakat Yapılmış. Önceki İşlemleri Değiştiremezsiniz."
- "İşlem Tarihinden İtibaren N Gün Geçmiştir. İşlemi Yöneticiniz İptal Edebilir."
- "Bu İşleme Ait Karşı Hesapda İşlem Var. Karşı İşlemde İptal Edilsin mi?"
- "Virman İşlemi İptal Edilmedi."
- "Entegrator Faturayı İptal Edemedi."
- "Fatura Bulunamadı. Lütfen Faturalar Modülünden Kontrol Ediniz."
İlgili kurallar
Kaynaklar
- SRC-DRV-AZ —
az/06-duzeltme.md— bölüm 6.2 - SRC-CODE-BASE —
basecontrol/Base Control/iScreen.vb— satır 729 - SRC-CODE-BASE —
basecontrol/Base Control/iScreen.vb— satır 748 - SRC-CODE-BASE —
basecontrol/Base Control/iScreen.vb— satır 759 - SRC-CODE-BASE —
basecontrol/Base Control/iScreen.vb— satır 771 - SRC-CODE-DAO —
dao/Dao/Islem/Cari.Islem.vb— satır 1006 - SRC-CODE-DAO —
dao/Dao/Islem/Cari.Islem.vb— satır 1046 - SRC-CODE-DAO —
dao/Dao/Islem/Cari.Islem.vb— satır 1055 - SRC-CODE-DAO —
dao/Dao/Islem/Cari.Islem.vb— satır 1122 - SRC-DB-MODULES —
Cari.AcceptTransaction— satır 121
