Tip: INLINE TABLE FUNCTION · Şema: Muhasebe · Modül: MOD-FATURA · Temizlik sınıfı: ACTIVE (kategori A, güven 0) · Kapsam: ERPGOLD_CORE / ALL
Kullanım haritası (13.09.2026)
| Kategori | A — ERPGOLD CORE · A-STORED_SQL |
| Güven | 95 |
| Derinlik / kök | 0 · bu nesne (Seviye-0) |
| DependencyPath | ERPGOLD → AifaDev.Reports / Design (DB içi SQL) → Muhasebe.MerkezBankasiRaporu |
| Uygulama kullanımı | REPORT_SQL+CONFIG_SQL |
Bkz. Database Usage Map · Direct Application Objects. Hiçbir DB değişikliği yapılmadı; SAFETY > CLEANUP.
Temizlik kanıtı
| Kontrol | Sonuç |
|---|---|
| app | NO |
| report | YES |
| config | YES |
| dynamic | NO |
| db_in | NO |
| db_out | YES |
| trigger | NO |
| fk | NO |
| computed | NO |
| crossdb | NO |
| runtime | UNKNOWN |
| external | NO |
Gerekçe: REPORT (DB içi rapor/tasarım SQL'i)
KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)
Tür: FUNCTION (IF) · Modül: MOD-FATURA · Uzunluk: 76 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 | @BasTarih | date | |
| 3 | @SonTarih | date |
Bağımlılıklar (bu nesne → hedef)
| İlişki | Hedef | Tip |
|---|---|---|
| READS | Cari.Hesaplar | TABLE |
| READS | Cari.Islemler | TABLE |
| CALLS | FN.Bol | FUNCTION |
| CALLS | Muhasebe.StokHaraketleri | FUNCTION |
| READS | Sistem.Subeler | TABLE |
SQL tanımı (AS-IMPLEMENTED, örnek DB)
CREATE Function [Muhasebe].[MerkezBankasiRaporu](@SubeId int,@BasTarih Date,@SonTarih Date)
returns Table
as
return
Select
KATEGORI ,
CASE WHEN ISLEM='A' THEN 'AY ICINDE ALINAN' WHEN ISLEM ='S' THEN 'AY ICINDE SATILAN' END AS ISLEM,
USD,USDTL ,
EUR,EURTL ,
DIGER ,DIGERTL ,
R.*,UN.Unvan,
CASE WHEN ISLEM='A' THEN 'ALISLAR' WHEN ISLEM ='S' THEN 'SATISLAR' END AS BASLIK,
CONVERT(VARCHAR(7), @BasTarih, 126) as DONEM from
(
Select Y.KATEGORI ,Y.ISLEM ,SUM(T.USD) AS USD ,ABS(SUM(T.USDTL)) AS USDTL ,SUM(T.EUR) AS EUR ,ABS(SUM(T.EURTL)) AS EURTL ,SUM(T.DIGER) AS DIGER ,ABS(SUM(T.DIGERTL)) AS DIGERTL from
(
Select '1.MERKEZ BANKASI' AS KATEGORI,'A' as ISLEM
UNION ALL
Select '2.BANKA' AS KATEGORI,'A' as ISLEM
UNION ALL
Select '3.YETKILI MUESSESE' AS KATEGORI,'A' as ISLEM
UNION ALL
Select '4.DIGER' AS KATEGORI,'A' as ISLEM
UNION ALL
Select '1.MERKEZ BANKASI' AS KATEGORI,'S' as ISLEM
UNION ALL
Select '2.BANKA' AS KATEGORI,'S' as ISLEM
UNION ALL
Select '3.YETKILI MUESSESE' AS KATEGORI,'S' as ISLEM
UNION ALL
Select '4.DIGER' AS KATEGORI,'S' as ISLEM
) Y
Left Join
(
Select Case When H.HesapTuru =1 Then '3.YETKILI MUESSESE' WHEN H.HesapTuru =2 Then '2.BANKA' WHEN H.HesapTuru =5 Then '1.MERKEZ BANKASI' ELSE '4.DIGER' END AS GroupKodu
, Islem,Case When X.Kodu ='USD' or X.Kodu ='EUR' Then X.Kodu Else 'DIGER' End as Kodu, Sum(X.Adet) as Adet,Sum(X.Miktar) as Miktar,Sum(X.TLTutar) as TLTutar ,Sum(X.UsdTutar) as UsdTutar from
(
Select IslemId , Islem,Kodu ,COUNT(*) as Adet, abs(Sum(Miktar)) as Miktar ,FN.Bol ( Sum(TLTutar ),Sum(Abs(Miktar))) as Fiyat ,Sum(TLTutar ) as TLTutar,Sum(UsdTutar) as UsdTutar from Muhasebe .StokHaraketleri (@SubeId,2,@BasTarih ,@SonTarih) group by Islem,Kodu ,IslemId
) X
Left Join Cari.Islemler I on I.Id=X.IslemId
Left Join Cari.Hesaplar H on H.Id =I.HesapId
Where X.Kodu <>'TL'
group by H.HesapTuru ,Islem,Case When X.Kodu ='USD' or X.Kodu ='EUR' Then X.Kodu Else 'DIGER' End
) X ON Y.KATEGORI =X.GroupKodu and x.Islem =y.ISLEM
CROSS APPLY (VALUES(
GroupKodu,
x.Islem ,
case When Kodu ='USD' then Miktar Else 0 End,
case When Kodu ='USD' then TLTutar Else 0 End,
case When Kodu ='EUR' then Miktar Else 0 End,
case When Kodu ='EUR' then TLTutar Else 0 End,
case When Kodu ='DIGER' then Miktar Else 0 End,
case When Kodu ='DIGER' then TLTutar Else 0 End
)
) t(KATEGORI,ISLEM,USD,USDTL,EUR,EURTL,DIGER,DIGERTL)
GROUP BY Y.KATEGORI ,Y.ISLEM
) X
Left Join
(
Select S.Id,Unvan FROM Sistem.Subeler S
Left join Cari.Islemler I2 on S.Id=I2.SubeId group by S.Id,Unvan) UN on UN.Id=@SubeId
Left Join
(
Select SUM(Case When Islem ='D' Then USD Else 0 End) as DUSD,sUM(Case When Islem ='B' Then USD Else 0 End) as BUSD,SUM(Case When Islem ='D' Then EUR Else 0 End) as DEUR,sUM(Case When Islem ='B' Then EUR Else 0 End) as BEUR
From
(
Select 'B' as Islem,SUM(Case When Kodu ='USD' Then Miktar Else 0 End) AS USD ,0 AS USDTL ,SUM(Case When Kodu ='EUR' Then Miktar Else 0 End) AS EUR ,0 AS EURTL ,0 AS DIGER ,0 AS DIGERTL from Muhasebe .StokHaraketleri (@SubeId,2,NULL,@SonTarih) Where Kodu ='USD' or Kodu ='EUR'
UNION ALL
Select 'D' as Islem,SUM(Case When Kodu ='USD' Then Miktar Else 0 End) AS USD ,0 AS USDTL ,SUM(Case When Kodu ='EUR' Then Miktar Else 0 End) AS EUR ,0 AS EURTL ,0 AS DIGER ,0 AS DIGERTL from Muhasebe .StokHaraketleri (@SubeId,2,NULL,DATEADD (DAY,-1,@BasTarih)) Where Kodu ='USD' or Kodu ='EUR'
) z)r on 1=1
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).
