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

Reports.VadeliHacimRaporu

FUNCTIONMOD-RAPORERPGOLD_COREUNUSED_HIGH_CONFIDENCEVERY_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ı: UNUSED_HIGH_CONFIDENCE (kategori E, güven 95) · 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ı)
BASE SınıfıUNKNOWN (BASE MASTER) · Wiki önerisi: UNKNOWN — F-POSSIBLE_STORED_SQL_TARGET · Action: MANUAL_REVIEW · Güven: LOW
Runtime CertificationN/A — BASE üyesi değil
Kodda Kullanılıyor mu?HAYIR — doğrudan/dolaylı kod referansı bulunamadı
Kod Referans SayısıBASE taraması: 0 (uygulama kodunda string literal referansı yok) · Kullanım Haritası kanıtı: 0 kayıt
Kullanan Ekranlar
Kullanan Class/Method
Incoming Dependency (bunu kullanan nesneler)
Outgoing Dependency (bunun kullandığı nesneler)Cari.Islemler, FN.Bol, Sistem.Birimler, Sistem.GetKurListesi, Sistem.Pariteler, Stok.Maden, Stok.Nakit
Trigger İlişkisiyok
Ticket Problem Aileleri
Bilinen Hatalar
Bilinen SQL Riskleri
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ı kategorisiF — MANUAL REVIEW · F-POSSIBLE_STORED_SQL_TARGET · güven 50
GerekçeSonuç kümesi döndüren TVF/görünüm: menü raporu, popup grid ve dashboard tanımları (AifaDev.Reports.SQL, ReportsFilter.SQL, Design.PopupGrid.SQL, Dashboard.Layout) kurulum bazlı VERİDİR; V2 demoda referans yok ama başka müşteri DB'sinde olabilir. ERPGOLD kodunda, DB içi rapor/tasarım SQL'inde (V2 demo), dinamik SQL kalıplarında, tetikleyici/FK/computed/cross-db bağlarında ve gerekli nesnelerin bağımlılık grafında referans yok
Uzlaştırma10_Manual_Review — Her iki yöntem de karar veremedi: Sonuç kümesi döndüren TVF/görünüm: menü raporu, popup grid ve dashboard tanımları (AifaDev.Reports.SQL, ReportsFilter.SQL, Design.PopupGrid.SQL, Dashboard.Layou

Bkz. ERPGOLD BASE · Uzlaştırma · Database Usage Map · Kullanım Haritası Manual · 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 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: Hiçbir kaynakta referans bulunamadı

KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)

Tür: FUNCTION (IF) · Modül: MOD-RAPOR · Uzunluk: 62 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 @StartDate date
3 @EndDate date

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

İlişki Hedef Tip
READS Cari.Islemler TABLE
CALLS FN.Bol FUNCTION
READS Sistem.Birimler TABLE
CALLS Sistem.GetKurListesi FUNCTION
READS Sistem.Pariteler TABLE
READS Stok.Maden TABLE
READS Stok.Nakit TABLE

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

CREATE Function Reports.VadeliHacimRaporu (@SubeId int,@StartDate as Date,@EndDate as Date)
returns Table
as
return

Select Parite,Kodu ,A_Miktar ,A_Fiyat ,A_Tutar ,S_Miktar ,S_Fiyat ,S_Tutar,X.Birim ,CONVERT(Decimal(18,2), S_Miktar *  ABS(Case When IsNull(A_Fiyat,0)=0 Then S_Fiyat Else A_Fiyat end))*-1  as Maliyet,Fn.Bol( (abs(S_Tutar) - CONVERT(Decimal(18,2), abs(S_Miktar) *  ABS(Case When IsNull(A_Fiyat,0)=0 Then S_Fiyat Else A_Fiyat end))) * Kur.Alis,KurHas.Satis)  as KarHAS

From 
(
Select 
    Parite,
    Kodu ,
    Sum(Case When Islem ='A' Then Miktar Else 0 End) as A_Miktar,
    Sum(Case When Islem ='A' Then Fiyat Else 0 End) as A_Fiyat,
    Sum(Case When Islem ='A' Then Tutar Else 0 End) as A_Tutar,
    Sum(Case When Islem ='S' Then Miktar*-1 Else 0 End) as S_Miktar,
    Sum(Case When Islem ='S' Then Fiyat Else 0 End) as S_Fiyat,
    Sum(Case When Islem ='S' Then Tutar *-1 Else 0 End) as S_Tutar,
    Birim 


from

(
Select  Parite ,Islem ,Kodu,SUM(Miktar) as Miktar,Fn.Bol(SUM(Tutar),Sum(Miktar)) as Fiyat ,SUM(Tutar) as Tutar,Birim 
From
(           
                    Select P.Parite,Case When P.AnaBirim = I.Kodu Then I.Islem Else Case When I.Islem ='A' Then 'S' Else 'A'  End End as Islem,P.AnaBirim as Kodu,Case When P.AnaBirim = I.Kodu Then I.Miktar Else I.Tutar End as Miktar,Case When P.AnaBirim = I.Kodu Then I.Tutar Else I.Miktar End as Tutar,P.Birim 
                    from (Select Distinct Parite,AnaBirim ,Birim From Sistem.Pariteler Where IsDeleted ='False') P
                    Left Join
                    (
                    Select Islem,K.Kodu as Kodu,Sum(Miktar) as Miktar, Sum(Tutar) as Tutar,B.Kodu as Birim from 

                        (
                            Select Case  When (IslemTuru % 2)=0  Then 'A' Else 'S' End as Islem,
                                Case When IslemKodu in(1,2) Then M.AnaBirimId 
                                When IslemKodu =3 Then N.AnaBirimId 
                                Else 
                                BakiyeId End as StokId,
                                Miktar * Case When Convert(int,IsNull(I.AuMilyem,0)) =0 Then 1 Else AuMilyem  End as Miktar,
                                Tutar ,
                                Case When I.IslemTipi =1 Then NB.AnaBirimId Else I.BirimId End as BirimId
                            from Cari.Islemler I 
                            Left Join Stok.Nakit N on N.Id =I.StokId And I.IslemKodu =3
                            Left Join Stok.Maden  M on M.Id =I.StokId And I.IslemKodu in (1,2)
                            Left Join Stok.Nakit NB on NB.Id =I.BirimId And I.IslemTipi =1
                            Where ((IslemKodu in (1,2) And IslemTipi in (1,2,5)) or IslemKodu in (3,4,6)) And I.IsDeleted ='False' and SubeId=@SubeId  And Tarih >=@StartDate And Tarih <=@EndDate  and IslemTipi not in (11,12)
                        ) x 
                        Left Join Sistem.Birimler K on K.Id =X.StokId 
                        Left Join Sistem.Birimler B on B.Id =X.BirimId 
                        Where X.BirimId <>X.StokId   
                        Group by Islem,B.Kodu ,K.Kodu 
                    ) I on (I.Kodu =P.AnaBirim And I.Birim =P.Birim) or (I.Kodu =P.Birim  And I.Birim =P.AnaBirim) 
) X Where Miktar is not null and Tutar is not null 
Group by Parite,Islem ,Kodu ,Birim 

) X
 group by Parite,Kodu ,Birim 
) x
Left Join Sistem.GetKurListesi (GETDATE()) as Kur on Kur.Birim =X.Birim 
Left Join Sistem.GetKurListesi (GETDATE()) as KurHas on KurHas.Birim ='HAS'

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