Tip: INLINE TABLE FUNCTION · Şema: Muhasebe · Modül: MOD-FATURA · Temizlik sınıfı: MANUAL_REVIEW (kategori D, güven 80) · Kapsam: ERPGOLD_CORE / ALL
Kullanım haritası (13.09.2026)
| Kategori | F — MANUAL REVIEW · F-DYNAMIC_SQL |
| Güven | 20 |
| Gerekçe | Adı dinamik SQL kullanan modül(ler)de geçiyor: dbo.sp_DevirIslemiYap |
| Dinamik SQL eşleşmesi | dbo.sp_DevirIslemiYap |
Bkz. Database Usage Map · Manual Review. Hiçbir DB değişikliği yapılmadı; SAFETY > CLEANUP.
Temizlik kanıtı
| Kontrol | Sonuç |
|---|---|
| app | WEAK |
| report | NO |
| config | NO |
| dynamic | NO |
| db_in | NO |
| db_out | YES |
| trigger | NO |
| fk | NO |
| computed | NO |
| crossdb | NO |
| runtime | UNKNOWN |
| external | NO |
Gerekçe: Kaynak kodda yalnızca zayıf ad eşleşmesi var (sınıf/özellik adı olabilir); ikinci turda incelendi
KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)
Tür: FUNCTION (IF) · Modül: MOD-FATURA · Uzunluk: 42 satır
Özet
[GAP] Kaynakta açıklama yorumu yok; davranış aşağıdaki SQL tanımından ve ilişkilerden okunur.
Parametreler
| # | Parametre | Tip | Çıktı |
|---|---|---|---|
| 1 | @SubeId | int | |
| 2 | @KasaId | int | |
| 3 | @Tarih | date |
Bağımlılıklar (bu nesne → hedef)
| İlişki | Hedef | Tip |
|---|---|---|
| CALLS | Muhasebe.Islemler | FUNCTION |
| READS | Sistem.Birimler | TABLE |
| READS | Sistem.Sirketler | TABLE |
| READS | Sistem.Subeler | TABLE |
| READS | Sistem.Vadeli | TABLE |
| READS | Stok.Maden | TABLE |
| READS | Stok.Nakit | TABLE |
SQL tanımı (AS-IMPLEMENTED, örnek DB)
CREATE Function [Muhasebe].[NakitStoklari] (@SubeId int,@KasaId int,@Tarih as Date)
returns Table
as
return
Select top 100000 SK.Kodu as Sirket, S.Kodu as Sube,'MUHASEBE' as Kasa, B.Kodu ,B.Aciklama ,Sum(Giren) as Giren, Sum(Cikan) as Cikan,Sum(Giren + Cikan) as Miktar From
(
Select T.* From
(
select
H.SubeId,
H.KasaId,
H.Tarih,
case
when IslemKodu =1 or IslemKodu=2 Then KM.AnaBirimId
When IslemKodu =3 then KN.AnaBirimId
WHEN IslemKodu =6 then KV.BirimId
END AS StokId,
Case When IslemTuru % 2 =0 Then Miktar Else 0 End as Giren,
Case When IslemTuru % 2 <>0 Then Miktar *-1 Else 0 End as Cikan,
Case When IslemTipi=1 Then TN.AnaBirimId Else H.BirimId End as BirimId,
Case When IslemTuru % 2 = 0 and IslemTipi<>12 Then Tutar *-1 Else 0 End as CikanTutar,
Case When IslemTuru % 2 <>0 and IslemTipi<>12 Then Tutar Else 0 End as GirenTutar
from muhasebe.Islemler(@SubeId,null,@Tarih) H
Left Join Stok.Maden KM on KM.Id =H.StokId And H.IslemKodu in (1,2) ------EĞER İŞLEM MADEN YADA HURDA İŞLEMİ İSE
Left Join Stok.Nakit KN on KN.Id =H.StokId And H.IslemKodu =3 ------EĞER İŞLEM NAKİT İŞLEMİ İSE
Left Join Sistem.Vadeli KV on KV.Id =H.StokId And H.IslemKodu =6 ------EĞER İŞLEM VADELİ İŞLEMİ İSE
Left Join Stok.Nakit TN on TN.Id =H.BirimId ------EĞER İŞLEM PEŞİN İŞLEMİ İSE TUTARA NAKİT STOKLARININ BİRİMID SİNİ YAZ
Where H.SubeId =@SubeId
) X
CROSS APPLY(VALUES
(SubeId,KasaId,Tarih,StokId,Giren,Cikan) ,
(SubeId,KasaId,Tarih,BirimId,GirenTutar,CikanTutar))
T(SubeId,KasaId,Tarih,StokId,Giren,Cikan)
) H
Left Join Sistem.Birimler B on B.Id =H.StokId
Left Join Sistem.Subeler S on S.Id =H.SubeId
Left Join Sistem.Sirketler SK on SK.Id =S.SirketId
Where B.IsMetal ='False'
group by SubeId,StokId,B.Kodu ,B.Aciklama ,b.SiraNo ,Sk.Kodu ,S.Kodu
order by b.SiraNo
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).
