Tip: TRIGGER · Şema: Cari · Modül: MOD-CARI · Temizlik sınıfı: INDIRECTLY_USED (kategori C, güven 0) · Kapsam: ERPGOLD_CORE / ALL
BASE künyesi ve kullanım haritası (v1.5 · 13.09.2026)
| BASE Durumu | BASE'e dahil — BASE Status: CANDIDATE_CANONICAL |
| BASE Sınıfı | BASE-DEPENDENCY (BASE MASTER) · Wiki önerisi: BASE-DEPENDENCY · Action: INCLUDE_IN_BASE · Güven: HIGH |
| Runtime Certification | PENDING — BASE ile açılış/işlem testi yapılmadı; otomatik PASS yazılmadı |
| Kodda Kullanılıyor mu? | DOLAYLI — yalnız bağımlılık zinciriyle |
| Kod Referans Sayısı | BASE taraması: 0 (uygulama kodunda string literal referansı yok) · Kullanım Haritası kanıtı: 0 kayıt |
| Kullanan Ekranlar | — |
| Kullanan Class/Method | — |
| Incoming Dependency (bunu kullanan nesneler) | Cari.Islemler |
| Outgoing Dependency (bunun kullandığı nesneler) | Cari.History, Cari.IslemDetaylari, Cari.Islemler |
| Trigger İlişkisi | Tetikleyici → bağlı tablo: Cari.Islemler |
| Ticket Problem Aileleri | PF-007 |
| Bilinen Hatalar | ERR-SIL-030, ERR-SIL-059 (Hata Bilgi Bankası; Gözlemlendi durumu kayıtta) |
| Bilinen SQL Riskleri | SQLR-070 |
| Health Check Kuralı | INV-16, INV-17 |
| Müşteri Özel mi? | HAYIR |
| Opsiyonel Modül mü? | HAYIR |
| Legacy mi? | HAYIR |
| Son Doğrulama Tarihi | 13.09.2026 — statik analiz (katalog 2026-09-10 + kaynak kod taraması). Çalışma zamanı doğrulaması: PENDING |
Kullanım haritası
| Kullanım Haritası kategorisi | B — INDIRECT DEPENDENCY · B-TRIGGER · güven 95 |
| Derinlik / kök | 1 · Cari.Islemler |
| DependencyPath | ERPGOLD → Cari.Hesap → Cari.Islemler → Cari.UpdateTransaction |
Bkz. ERPGOLD BASE · Uzlaştırma · Database Usage Map · Kullanım Haritası Core · Hata Bilgi Bankası. BASE Status: CANDIDATE_CANONICAL · Runtime Certification: PENDING · Hiçbir DB değişikliği yapılmadı; SAFETY > CLEANUP.
Temizlik kanıtı
| Kontrol | Sonuç |
|---|---|
| app | NO |
| report | NO |
| config | NO |
| dynamic | NO |
| db_in | YES |
| db_out | YES |
| trigger | YES |
| fk | NO |
| computed | NO |
| crossdb | NO |
| runtime | UNKNOWN |
| external | NO |
Gerekçe: Cari.Islemler → Cari.UpdateTransaction (trigger (tablo→tetikleyici))
KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)
Tür: TRIGGER (TR) · Modül: MOD-CARI · Uzunluk: 299 satır
Tablo: Cari.Islemler · Olay: Update
Özet
Cari.Islemler'e UPDATE sonrası çalışır; değişikliği Cari.History'ye kaydeder. IsDeleted değişimini 'İptal Edildi'/'Geri Alındı', diğer güncellemeleri 'Düzeltme' olarak izler. Mutabakat güncellemesi iz üretmez.
Bağımlılıklar (bu nesne → hedef)
| İlişki | Hedef | Tip |
|---|---|---|
| WRITES | Cari.History | TABLE |
| WRITES | Cari.IslemDetaylari | TABLE |
İlgili iş kuralları
- Mutabakat güncellemesinde çalışmaz (if NOT Update(Mutabakat)) (Cari.UpdateTransaction.md)
- IsDeleted güncellendiyse: IsDeleted=True -> 'İptal Edildi', False -> 'Geri Alındı'; Deleted (önceki) satırı History'ye yazılır (Cari.UpdateTransaction.md)
- İptalde: ETTN boşsa Cari.IslemDetaylari silinir, doluysa Durum='EIPTAL' yapılır (Cari.UpdateTransaction.md)
- Diğer güncellemelerde 'Düzeltme' ile Inserted (yeni) satırı History'ye yazılır
SQL tanımı (AS-IMPLEMENTED, örnek DB)
CREATE Trigger [Cari].[UpdateTransaction] on Cari.Islemler After Update
as
if NOT Update(Mutabakat)
BEGIN
IF Update(IsDeleted)
BEGIN
Declare @Status varchar(50)=''
Set @Status = (Select top 1 case when IsDeleted='False' Then 'Geri Alındı' When IsDeleted='True' Then 'İptal Edildi' End as Durum From Inserted)
--Delete from Cari.IslemDetaylari where IslemId in (select Id from inserted where IsDeleted ='True')
Declare @Ettn nvarchar(Max)=''
Declare @IslemId int=0
Declare @IsDeleted bit=0
Select @IsDeleted =I.IsDeleted, @IslemId =D.IslemId , @Ettn =D.ETTN from inserted I Left Join Cari.IslemDetaylari D on D.IslemId =I.Id
if @IsDeleted= 'True'
BEGIN
if (IsNull(@ETTN,'')='')
BEGIN
Delete from Cari.IslemDetaylari where IslemId =@IslemId and IsNull(ETTN,'')=''
END
ELSE
BEGIN
Update Cari.IslemDetaylari Set Durum ='EIPTAL' where IslemId = @IslemId
END
END
Insert Into Cari.History(
[LogType]
,[LogDate]
,[TransactionId]
,[HesapType]
,[OwnerRefNo]
,[RefNo]
,[KasaId]
,[HesapId]
,[FisNo]
,[Tarih]
,[IslemKodu]
,[IslemTuru]
,[IslemTipi]
,[Vade]
,[StokId]
,[AyarEviId]
,[RaporNo]
,[IsRapor]
,[IsExtra]
,[Kodu]
,[BakiyeId]
,[Adet]
,[Miktar]
,[AuMilyem]
,[AgMilyem]
,[PldMilyem]
,[PltMilyem]
,[HasIsc]
,[HasIscBirimId]
,[HasIscBirimKur]
,[GumIsc]
,[GumIscBirimId]
,[GumIscBirimKur]
,[IscilikDurumu]
,[GumusDurumu]
,[PlatinDurumu]
,[PalladiumDurumu]
,[Fiyat]
,[FiyatTipi]
,[Tutar]
,[BirimId]
,[Birim]
,[Aciklama]
,[Kategori]
,[Kategori2]
,[Maliyet]
,[Satis]
,[Iscilik]
,[IscilikBirim]
,[IscilikBirimKur]
,[IscilikBirimId]
,[HasKur]
,[GumKur]
,[PltKur]
,[PldKur]
,[UsdKur]
,[EurKur]
,[Locked]
,[UserId]
,[InsertDate]
,[IsDeleted]
,[Status]
,[LoginId])
Select
@Status
,Getdate()
,Id
,[HesapType]
,[OwnerRefNo]
,[RefNo]
,[KasaId]
,[HesapId]
,[FisNo]
,[Tarih]
,[IslemKodu]
,[IslemTuru]
,[IslemTipi]
,[Vade]
,[StokId]
,[AyarEviId]
,[RaporNo]
,[IsRapor]
,[IsExtra]
,[Kodu]
,[BakiyeId]
,[Adet]
,[Miktar]
,[AuMilyem]
,[AgMilyem]
,[PldMilyem]
,[PltMilyem]
,[HasIsc]
,[HasIscBirimId]
,[HasIscBirimKur]
,[GumIsc]
,[GumIscBirimId]
,[GumIscBirimKur]
,[IscilikDurumu]
,[GumusDurumu]
,[PlatinDurumu]
,[PalladiumDurumu]
,[Fiyat]
,[FiyatTipi]
,[Tutar]
,[BirimId]
,[Birim]
,[Aciklama]
,[Kategori]
,[Kategori2]
,[Maliyet]
,[Satis]
,[Iscilik]
,[IscilikBirim]
,[IscilikBirimKur]
,[IscilikBirimId]
,[HasKur]
,[GumKur]
,[PltKur]
,[PldKur]
,[UsdKur]
,[EurKur]
,[Locked]
,[UserId]
,[InsertDate]
,[IsDeleted]
,[Status]
,[LoginId] From Deleted
END
ELSE
BEGIN
Insert Into Cari.History(
[LogType]
,[LogDate]
,[TransactionId]
,[HesapType]
,[OwnerRefNo]
,[RefNo]
,[KasaId]
,[HesapId]
,[FisNo]
,[Tarih]
,[IslemKodu]
,[IslemTuru]
,[IslemTipi]
,[Vade]
,[StokId]
,[AyarEviId]
,[RaporNo]
,[IsRapor]
,[IsExtra]
,[Kodu]
,[BakiyeId]
,[Adet]
,[Miktar]
,[AuMilyem]
,[AgMilyem]
,[PldMilyem]
,[PltMilyem]
,[HasIsc]
,[HasIscBirimId]
,[HasIscBirimKur]
,[GumIsc]
,[GumIscBirimId]
,[GumIscBirimKur]
,[IscilikDurumu]
,[GumusDurumu]
,[PlatinDurumu]
,[PalladiumDurumu]
,[Fiyat]
,[FiyatTipi]
,[Tutar]
,[BirimId]
,[Birim]
,[Aciklama]
,[Kategori]
,[Kategori2]
,[Maliyet]
,[Satis]
,[Iscilik]
,[IscilikBirim]
,[IscilikBirimKur]
,[IscilikBirimId]
,[HasKur]
,[GumKur]
,[PltKur]
,[PldKur]
,[UsdKur]
,[EurKur]
,[Locked]
,[UserId]
,[InsertDate]
,[IsDeleted]
,[Status]
,[LoginId])
Select
'Düzeltme'
,Getdate()
,Id
,[HesapType]
,[OwnerRefNo]
,[RefNo]
,[KasaId]
,[HesapId]
,[FisNo]
,[Tarih]
,[IslemKodu]
,[IslemTuru]
,[IslemTipi]
,[Vade]
,[StokId]
,[AyarEviId]
,[RaporNo]
,[IsRapor]
,[IsExtra]
,[Kodu]
,[BakiyeId]
,[Adet]
,[Miktar]
,[AuMilyem]
,[AgMilyem]
,[PldMilyem]
,[PltMilyem]
,[HasIsc]
,[HasIscBirimId]
,[HasIscBirimKur]
,[GumIsc]
,[GumIscBirimId]
,[GumIscBirimKur]
,[IscilikDurumu]
,[GumusDurumu]
,[PlatinDurumu]
,[PalladiumDurumu]
,[Fiyat]
,[FiyatTipi]
,[Tutar]
,[BirimId]
,[Birim]
,[Aciklama]
,[Kategori]
,[Kategori2]
,[Maliyet]
,[Satis]
,[Iscilik]
,[IscilikBirim]
,[IscilikBirimKur]
,[IscilikBirimId]
,[HasKur]
,[GumKur]
,[PltKur]
,[PldKur]
,[UsdKur]
,[EurKur]
,[Locked]
,[UserId]
,[InsertDate]
,[IsDeleted]
,[Status]
,[LoginId] From Inserted
END
END
Kaynaklar
- SRC-DB-MODULES —
sys.sql_modulestanımı (salt okunur); gizli sabitler[REDACTED_SECRET]ile değiştirildi.
Bilinmeyenler
- Hangi sürümde eklendiği:
createdDB tarihi bir kurulumun tarihidir, ürün sürümü değil (GAP-VERSION-02).
