Tip: TRIGGER · Şema: Cari · Modül: MOD-CARI · Temizlik sınıfı: INDIRECTLY_USED (kategori C, güven 0) · Kapsam: ERPGOLD_CORE / ALL
Kullanım haritası (13.09.2026)
| Kategori | B — INDIRECT DEPENDENCY · B-TRIGGER |
| Güven | 95 |
| Derinlik / kök | 1 · Cari.Islemler |
| DependencyPath | ERPGOLD → Cari.Hesap → Cari.Islemler → Cari.UpdateTransaction |
| Bağlı tablo | Cari.Islemler |
Bkz. Database Usage Map · Core Database Objects. 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).
