AIFA AKADEMI · Kurumsal Wiki
4.310 makale
Ana sayfa Kurumsal Wiki › Veritabanı › Functions › FN-REPORTS.BAKIYELISTESI

Reports.BakiyeListesi

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

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

Kullanım haritası (13.09.2026)

KategoriA — ERPGOLD CORE · A-STORED_SQL
Güven95
Derinlik / kök0 · bu nesne (Seviye-0)
DependencyPathERPGOLD → AifaDev.Reports / Design (DB içi SQL) → Reports.BakiyeListesi
Uygulama kullanımıREPORT_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 WEAK
report YES
config NO
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-RAPOR · Uzunluk: 128 satır

Özet

Bakiye ekstresi (pivot) — şube/tarih için tüm hesapların birim bazında (TAKOZ,HAS,GUM,TL,USD,EUR...) bakiyesini durum etiketleriyle ve HAS toplamıyla listeler.

Parametreler

# Parametre Tip Çıktı
1 @Tarih date
2 @SubeId int

Bağımlılıklar (bu nesne → hedef)

İlişki Hedef Tip
READS Cari.BakiyeIslem TABLE
CALLS Cari.BakiyeKodlari VIEW
READS Cari.Hesaplar TABLE
CALLS FN.BakiyeDurum FUNCTION
CALLS FN.Bol FUNCTION
CALLS Sistem.GetKurListesi FUNCTION
READS Sistem.Kasalar TABLE

İlgili iş kuralları

  • Cari.BakiyeIslem'i şubenin kasalarıyla filtreleyip Bakiye*-1 ile birim pivotlar, FN.BakiyeDurum ile A/B etiketi üretir (Reports.BakiyeListesi.md)

SQL tanımı (AS-IMPLEMENTED, örnek DB)

CREATE Function [Reports].[BakiyeListesi] (@Tarih date,@SubeId int)
 returns table
 as
 return
--Select  P.HesapId, H.HesapAdi,H.GrupKodu,H.Kategori ,H.Telefon1 as Telefon,
--FN.BakiyeDurum( P.TAKOZ) as TakozDurum, 
--P.TAKOZ,
--FN.BakiyeDurum( P.HAS) as HasDurum,
--P.HAS,
--FN.BakiyeDurum( P.GUM) as GumusDurum,
--P.GUM,
--FN.BakiyeDurum( P.TL) as TLDurum,
--P.TL,
--FN.BakiyeDurum( P.USD) as UsdDurum,
--P.USD,
--FN.BakiyeDurum( P.Eur) as EurDurum,
--P.EUR,
--FN.BakiyeDurum( P.GBP ) as GBPDURUM,
--P.GBP,
--FN.BakiyeDurum( P.CHF) as CHFDURUM,
--P.CHF ,
--FN.BakiyeDurum( P.SEK) as SEKDURUM,
--P.SEK ,
--FN.BakiyeDurum( P.NOK) as NOKDURUM,
--P.NOK ,
--FN.BakiyeDurum( P.DKK) as DKKDURUM,
--P.DKK ,
--FN.BakiyeDurum( P.CAD) as CADDURUM,
--P.CAD ,
--FN.BakiyeDurum( P.SAR) as SARDURUM,
--P.SAR ,
--FN.BakiyeDurum( P.AUD) as AUDDURUM,
--P.AUD ,
--FN.BakiyeDurum( P.JPY) as JPYDURUM,
--P.JPY ,

--fN.bOL(P.NetBakiye,kUR.Alis ) as Toplam,
--H.LastDate as SonTarih 

--From 

--(
--Select HesapId,Sum([TAKOZ]) as Takoz, Sum([HAS]) as Has, Sum([GUM]) as Gum, Sum([TL]) as TL, Sum([USD]) as Usd, Sum([EUR]) as Eur, Sum( GBP) as GBP, Sum(CHF) as CHF,Sum([PND]) as Pnd,Sum([SEK]) as SEK,Sum([NOK]) as NOK,Sum([DKK]) as DKK,Sum([CAD]) as CAD, Sum([SAR]) as SAR, Sum([AUD]) as AUD, Sum([JPY]) as JPY , Sum(NET) as NetBakiye From

--  ( 
--  Select HesapId,br.Kodu as Birim,SUM(Bakiye*-1) as BakiyeX,Sum((Bakiye ) * Kur.Alis)  as NET,MAX (B.Tarih) as Tarih   
--      from Cari.BakiyeIslem B 
--      Left Join Sistem.Birimler br on Br.Id=B.BirimId 
--      Left Join Sistem.Kasalar K on K.Id =B.KasaId 
--      Left Join Sistem.GetKurListesi (@Tarih) Kur on Kur.BirimId =B.BirimId 
--      Where B.Tarih <=@Tarih And K.SubeId =@SubeId 
--      Group by HesapId ,Br.Kodu Having SUM (Bakiye)<>0
--  ) A
--  PIVOT
--  (
--  Sum(BakiyeX)
--  FOR Birim  IN ([TAKOZ], [HAS], [GUM], [TL], [USD], [EUR], [GBP], [CHF],[PND],[SEK],[NOK],[DKK],[CAD],[SAR],[AUD],[JPY])
--  ) AS P 
--  Group by HesapId
--) P
--Left Join Sistem.GetKurListesi (@Tarih) Kur on Kur.Birim ='USD'
--Left Join Cari.Hesaplar H on H.Id=P.HesapId 
--Where H.SubeId=@SubeId AND
--( 
--IsNull([TAKOZ],0) + IsNull([HAS],0)+IsNull([GUM],0) + 
--IsNull([TL],0) + IsNull([USD],0) + IsNull([EUR],0) + 
--IsNull(GBP ,0) + IsNull(CHF,0) +IsNull( [PND],0))+ IsNull(SEK,0)+ IsNull(NOK,0)+ IsNull(DKK,0)+ IsNull(CAD,0)+ IsNull(SAR,0)+ IsNull(AUD,0)+ IsNull(JPY,0)<>0


Select  P.HesapId as HesapId, H.HesapAdi,H.GrupKodu ,
FN.BakiyeDurum( P.TAKOZ) as TAKOZDurum,
P.TAKOZ, 
FN.BakiyeDurum( P.HAS) as HASDurum,
P.HAS,
FN.BakiyeDurum( P.GUM) as GUMDurum,
P.GUM,
FN.BakiyeDurum( P.TL) as TLDurum,
P.TL, 
FN.BakiyeDurum( P.USD) as UsdDurum,
P.USD,
FN.BakiyeDurum( P.Eur) as EurDurum,
P.EUR,
FN.BakiyeDurum( P.GBP ) as GBPDURUM,
P.GBP,
FN.BakiyeDurum( P.CHF) as CHFDURUM,
P.CHF , 
FN.BakiyeDurum( P.Pnd) as PNDDURUM, --8
P.Pnd AS PND, 

((P.NetBakiye)*-1)  as Toplam,
H.LastDate as SonTarih 

From 

(
Select
HesapId,Sum([TAKOZ]) as TAKOZ, Sum([HAS]) as HAS,Sum([GUM]) as GUM,
Sum([TL]) as TL, Sum([USD]) as Usd,
Sum([EUR]) as Eur, Sum([GBP]) as GBP,
Sum([CHF]) as CHF, Sum([PND]) as Pnd,

Sum(NetBakiye) as NetBakiye  From

                ( 
                Select B.AnaBirim , B.HesapId ,B.Bakiye ,Fn.Bol( B.Bakiye * Kur.Alis,KurHAS.Alis )*-1 as NetBakiye  From
                (
                select  B.BirimId , B.HesapId,Kod.Kodu as AnaBirim   , SUM(Bakiye)*-1 as Bakiye               from  Cari.BakiyeIslem   B
                Left Join cari.BakiyeKodlari  Kod on Kod.Id =BirimId 
                 Where  HesapType=0 and (B.Tarih<=@Tarih or @Tarih is null)  and B.KasaId in(Select Id From Sistem.Kasalar Where SubeId=@SubeId)
                group by HesapId ,Kod.Kodu,B.BirimId 
                 having Sum(NetBakiye)<>0
                ) B
                Left Join Sistem.GetKurListesi (getdate()) Kur on Kur.BirimId =B.BirimId
                Left Join Sistem.GetKurListesi (getdate()) KurHAS on KurHAS.Birim ='HAS'

                ) A
                PIVOT
                (
                Sum(Bakiye) 
                FOR AnaBirim IN ([TAKOZ], [HAS], [GUM],[TL], [USD], [EUR], [GBP], [CHF],[PND])
                ) AS P Group by HesapId
) P

Left Join Cari.Hesaplar H on H.Id=P.HesapId 

Where H.SubeId=@SubeId

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).