AIFA AKADEMI · Kurumsal Wiki
4.330 makale
Ana sayfa Kurumsal Wiki › Veritabanı › Functions › FN-MUHASEBE.MERKEZBANKASIRAPORU

Muhasebe.MerkezBankasiRaporu

FUNCTIONMOD-FATURAERPGOLD_COREACTIVEVERY_HIGH[SOURCE_IMPLEMENTED]
Kanonik kaynak: markdown · bu sayfa üretilmiş görünümdür

Tip: INLINE TABLE FUNCTION · Şema: Muhasebe · Modül: MOD-FATURA · Temizlik sınıfı: ACTIVE (kategori A, güven 0) · Kapsam: ERPGOLD_CORE / ALL

BASE künyesi ve kullanım haritası (v1.5 · 13.09.2026)

BASE DurumuBASE dışı — BASE Status: CANDIDATE_CANONICAL (Runtime Certification tamamlanmadı) · CTR-BASE-0071
BASE SınıfıREPORT-ONLY (BASE MASTER) · Wiki önerisi: REPORT-ONLY (Kullanım Haritası: A-STORED_SQL) · Action: EXCLUDE_REPORT_ONLY · Güven: HIGH
Runtime CertificationN/A — BASE üyesi değil
Kodda Kullanılıyor mu?EVET — doğrudan (Seviye-0) · BASE: UsedByApplication=NO (çelişki — CTR)
Kod Referans SayısıBASE taraması: 0 (uygulama kodunda string literal referansı yok) · Kullanım Haritası kanıtı: 2 kayıt (CONFIG_SQL+REPORT_SQL)
Kullanan Ekranlar
Kullanan Class/Method
Incoming Dependency (bunu kullanan nesneler)
Outgoing Dependency (bunun kullandığı nesneler)Cari.Hesaplar, Cari.Islemler, FN.Bol, Muhasebe.StokHaraketleri, Sistem.Subeler
Trigger İlişkisiyok
Ticket Problem AileleriPF-008
Bilinen HatalarERR-POT-117 (Hata Bilgi Bankası; Gözlemlendi durumu kayıtta)
Bilinen SQL RiskleriSQLR-047
Health Check Kuralı
Müşteri Özel mi?HAYIR
Opsiyonel Modül mü?HAYIR
Legacy mi?HAYIR
Son Doğrulama Tarihi13.09.2026 — statik analiz (katalog 2026-09-10 + kaynak kod taraması). Çalışma zamanı doğrulaması: PENDING

Kullanım haritası

Kullanım Haritası kategorisiA — ERPGOLD CORE · A-STORED_SQL · güven 95
Derinlik / kök0 · bu nesne (Seviye-0)
DependencyPathERPGOLD → AifaDev.Reports / Design (DB içi SQL) → Muhasebe.MerkezBankasiRaporu
Uzlaştırma07_Report_Only_Farklari — Yöntem farkı: Kullanım Haritası DB içi rapor/tasarım SQL'ini (AifaDev.Reports/PopupGrid) çalışma zamanı kullanımı saydı; BASE rapor SQL'ini CORE kanıtı saymaz (kurulum bazlı veri). İş nesnesi yalnız rapor hedefi → REPORT-ONLY

Bkz. ERPGOLD BASE · Uzlaştırma · Database Usage Map · Kullanım Haritası Direct · 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 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_modules tanımı (salt okunur); gizli sabitler [REDACTED_SECRET] ile değiştirildi.

Bilinmeyenler

  • Hangi sürümde eklendiği: created DB tarihi bir kurulumun tarihidir, ürün sürümü değil (GAP-VERSION-02).