Sınıf: FrmIptalOnayListesi · Modül: MOD-CARI · Türetildiği: DevExpress.XtraEditors.XtraForm · Yaşam döngüsü: ACTIVE_CRITICAL · Kapsam: ERPGOLD_CORE
Nedir?
Iptal Onay Listesi — yöneticinin, kullanıcıların gönderdiği silme (iptal) taleplerini onayladığı ya da reddettiği ekrandır. Silme ayarı "Eski Tarihe Yonetici İptal Edebilir" iken SilGun'den eski bir işlemi iptal etmek isteyen kullanıcı gerekçe yazar; talep Sistem.SilOnay'a düşer ve burada listelenir [DOCUMENT:06_Workflows/WF-SILME-TALEBI-ONAY.md] [BUSINESS_RULE:BR-IPTAL-003] [DB_OBJECT:Sistem.SilOnay]. Yönetici Onay deyince işlem AIO.Cari.Islem.DeleteAt(IslemNo, True) ile iptal edilir ve talep "Onaylandı" durumuna geçer; Iptal Et talebi siler (işlem durur) [SOURCE_CODE:ERPPRO/Form/Tanımlamalar/Cari/FrmIptalOnayListesi.vb:9-35]. Liste Sistem.IptalOnayListesi görünümünden okunur: şube, talep eden, işlem no, tarih, hesap, işlem türü, kod, miktar, fiyat, tutar, birim, yönetici, durum, onay tarihi [DB_OBJECT:Sistem.IptalOnayListesi].
Ne zaman kullanılır?
- Kullanıcı "İşlem Tarihinden İtibaren N Gün Geçmiştir. İşlemi Yöneticiniz İptal Edebilir." mesajı alıp silme talebi gönderdiğinde ("Silme Talebiniz Alınmıştır.") [DOCUMENT:06_Workflows/WF-SILME-TALEBI-ONAY.md].
- Kullanıcı "İptal Talebiniz Yönetici Tarafından Onay Bekliyor..." görüyorsa — bekleyen talep burada durur.
- Ön koşul: Settings ▸ Izinler ▸ Silme Onayı = "Eski Tarihe Yonetici İptal Edebilir" ve Silme Onay Gunu tanımlı [SCREEN:SCR-FRMGLOBALSETTINGS].
Adım adım kullanım
- Yönetici: ANA MENÜ ▸ Tanımlamalar ▸ Sistem Tanimlari ▸ Silme Onayları.
- Filitre kutusundan durum seçilir: Bekliyor (0) varsayılan; diğer durumlar (onaylandı / reddedildi — liste değerleri
CmbViewType'tan) geçmişi gösterir. Onay düğmesi yalnız Bekliyor filtresinde ve listede satır varken görünür [SOURCE_CODE:FrmIptalOnayListesi.vb:2-8,23-25]. - Satır seçilir; OnayAciklama (gerekçe) sütunu gizlidir — GAP: gerekçe ekranda nerede gösteriliyor, kaynakta görülmedi (
HideColumn("OnayAciklama")). - Onay: silme onay sorusu → işlem iptal edilir (yumuşak silme) → talep
Status = Onaylandi,UserId = yönetici→ liste yenilenir [SOURCE_CODE:FrmIptalOnayListesi.vb:9-22]. - Iptal Et: talep
SilOnay.DeleteAtile silinir; tetikleyiciIsDeleted=1satırı fiziksel kaldırır [BUSINESS_RULE:BR-IPTAL-011] [DB_OBJECT:Sistem.SilOnayUpdateTrigger]. İşlem silinmez. - Kullanıcı tarafında iptal edilen işlem listeden düşer; bakiye/stok tetikleyici ile geri alınır [BUSINESS_RULE:BR-IPTAL-012].
Alanların anlamı
| Ekran sütunu / etiketi | İş anlamı (kaynak kolon) |
|---|---|
| Filitre | Talep durumu süzgeci (SilOnay.Status: 0 Bekliyor …) |
| OnayNo | Talep kaydı (SilOnay.Id) |
| Sube / TalepEden | Talebi gönderen kullanıcının şubesi ve adı (ClientUserId) |
| IslemNo | İptali istenen işlem (SilOnay.TransactionId → Cari.Islemler.Id) |
| Tarih, HesapAdi, Isl, Kodu, Miktar, Fiyat, Tutar, Birim | İşlemin kimliği (Cari.Islemler, Sistem.GetIslemKodu ile tür adı) |
| Yonetici / OnayTarihi | Onaylayan kullanıcı ve tarih (UserId, IDate) — bekleyende boş |
| Status | Talep durumu |
| Onay / Iptal Et | İşlemi iptal et / talebi düşür |
Kolon anlamları görünüm tanımından ve kitapçık §6.3 Sistem.SilOnay bölümünden [DB_OBJECT:Sistem.IptalOnayListesi] [DOCUMENT:kitap#6.3 Sistem.SilOnay].
Hesaplama / doğrulama mantığı
- Onay ve Iptal Et düğmeleri standart "kayıt silinecek" onayı sorar (
Message.MessageType.DeleteRecord). - İşlem iptali
DeleteAt(Id, True)ile yönetici bayrağıyla çağrılır; gün sınırı bu yolda yeniden sorulmaz — GAP:DeleteAt'in ikinci parametresinin (True) mutabakat kilidi ve karşı bacak sorusunu atlayıp atlamadığı kaynak satırında doğrulanmadı. - Silme talebi oluşma eşiği: ekranda
>= SilGunuyarı,DeleteAtiçinde> SilGuntalep — tam SilGun gününde uyarı çıkar ama işlem normal silinir (CTR-023) [BUSINESS_RULE:BR-IPTAL-003]. - Liste sorgusu dinamik SQL ile kurulur (durum indeksi metne eklenir) — TD-DYNAMIC-SQL.
Stok / bakiye / rapor etkisi
İşlem ekranıdır: Onay Cari.Islemler.IsDeleted işaretini koyar; TRG-CARI.ACCEPTTRANSACTION / silme tetikleyicisi bakiye ve stok defter satırlarını geri alır, Cari.History'ye "İptal Edildi" düşer [BUSINESS_RULE:BR-IPTAL-009] [BUSINESS_RULE:BR-DEFTER-URETIMI]. Silinmiş işlemler raporunda silme açıklamasının görünmesi ayrı bir süreçtir [PROCESS:PROC-211].
Sık yapılan kullanıcı hataları
- Silme onayında işlem duruyor, silinmiyor — onay kaydı tamamlanmamış; teknik çözüm
Sistem.SilOnaysatırınınIsDeleted=1yapılması [DOCUMENT:12_Support/KnownIssues/H-098.md]. - Düzeltme/iptalde PIN soruluyor — farklı ayar (Pin Kodu Gerekir), bu ekranla ilgisi yok [DOCUMENT:12_Support/KnownIssues/H-097.md].
- Kullanıcı talebi gönderdi ama yönetici listede görmüyor — filtre "Bekliyor" değil ya da kullanıcı farklı şirkette — GAP: görünümde şirket/şube filtresi yok, kaynaklı destek kaydı yok.
İlgili ticket temaları
- PRB-BAKIYE-000 (düzeltme/iptal); playbook PB-031.
- Süreçler: PROC-128, PROC-153 (silme onayı geçen süreç dokümanları).
Müşteri varyasyonları
Bilinen fark yok. Kuyumcu DB'de Sistem.SilAciklama satırlarının %54,6'sı devir sonrası öksüzdür; silme gerekçesi izi devirle kopar (GAP-DEVIR-SCOPE) [DOCUMENT:00_Governance/KNOWN_GAPS.md#gap-devir-scope].
Kim kullanır? Nereden açılır?
- ANA MENÜ ▸ Tanımlamalar ▸ Sistem Tanimlari ▸ Silme Onayları
Yaşam döngüsü kanıtı
ACTIVE_CRITICAL — ANA MENÜ: Tanımlamalar ▸ Sistem Tanimlari ▸ Silme Onayları
Kullanıcı olayları
| Olay | Metot | Dosya:satır |
|---|---|---|
Me.Load, CmbViewType.SelectedIndexChanged |
DataBind |
FrmIptalOnayListesi.vb:2 |
BtnOnay.Click |
Button1_Click |
FrmIptalOnayListesi.vb:9 |
GridView1.RowCountChanged |
GridView1_RowCountChanged |
FrmIptalOnayListesi.vb:23 |
BtnIptal.Click |
BtnIptal_Click |
FrmIptalOnayListesi.vb:27 |
Okuduğu / yazdığı tablolar (kod içi SQL, statik)
| Tablo | Fiiller |
|---|---|
Sistem.IptalOnayListesi ⚠︎ DB'de yok |
SELECT |
Kullandığı DAO / iş sınıfları
Bilinen kusurlar / dikkat
- Dinamik SQL: 1 ifade — parametresiz birleştirme riski (TD-DYNAMIC-SQL).
Kaynaklar
SOURCE_CODE:ERPPRO/Form/Tanımlamalar/Cari/FrmIptalOnayListesi.Designer.vbSOURCE_CODE:ERPPRO/Form/Tanımlamalar/Cari/FrmIptalOnayListesi.vbDERIVED:docs/knowledge-base/screens/FrmIptalOnayListesi.md(KB-docs statik analiz)DERIVED:kb_src/erppro/scan.json(olay/SQL/çağrı)
Bilinmeyenler
- Hangi sürümde eklendiği: VERSION_UNKNOWN (GAP-CODE-VERSION-DATE).
