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

Reports.GetPozisyonDetayAnaliz

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.Hesaplar, Cari.Islemler, FN.Bol, Sistem.AnaBirimler, Sistem.Birimler, Sistem.GetKurListesi
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: 63 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

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

İlişki Hedef Tip
READS Cari.Hesaplar TABLE
READS Cari.Islemler TABLE
CALLS FN.Bol FUNCTION
CALLS Sistem.AnaBirimler VIEW
READS Sistem.Birimler TABLE
CALLS Sistem.GetKurListesi FUNCTION

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

Create Function [Reports].[GetPozisyonDetayAnaliz] (@SubeId int)
returns table
as
return


select 
KODU,
ALIS,AFIYAT,ALISTUTAR,
SATIS,SFIYAT,SATISTUTAR,
GUNLUKKZ,
GUNLUKPOZISYON,
GUNLUKPOZISYONTUTAR,
KAPANISFIYAT,
DUNFIYAT,
PKAPANISTUTAR,
PKAPANISTUTAR-GUNLUKPOZISYONTUTAR as NETKZ,
GUNLUKKZ+(PKAPANISTUTAR-GUNLUKPOZISYONTUTAR) as TOPLAMKZ 
from 
    (Select top 
    1000000
    X.KODU,
    ALIS,AFIYAT,ALISTUTAR , 
    SATIS,SFIYAT ,SATISTUTAR,
    CASE WHEN ALIS>SATIS THEN SATISTUTAR - (SATIS * AFIYAT) 
    WHEN ALIS<SATIS THEN (ALIS * SFIYAT)-ALISTUTAR end as GUNLUKKZ,

    --SATISTUTAR - (SATIS * AFIYAT) AS KZ,
    --ALIS -SATIS AS POZISYON,
    --CASE WHEN (ALIS -SATIS)<0 THEN  SFIYAT WHEN ALIS -SATIS >0 THEN AFIYAT END AS PMALIYET,

    ALIS-SATIS as GUNLUKPOZISYON,
    CASE WHEN (ALIS -SATIS)<0 THEN  (ALIS-SATIS)*SFIYAT WHEN ALIS -SATIS >0 THEN (ALIS-SATIS)*AFIYAT END  as GUNLUKPOZISYONTUTAR,
    Kur1.Alis as KAPANISFIYAT,
    Kur2.Alis as DUNFIYAT,
    Case When (ALIS -SATIS)<0 Then (ALIS -SATIS)*Kur2.Alis Else (ALIS -SATIS)*Kur1.Alis end as PKAPANISTUTAR

    from 
        (
        sELECT Br.SiraNo , B.Kodu AS KODU ,
        SUM(ALIS) AS ALIS,fn.Bol (SUM(ALISMALIYET),SUM(ALIS)) AS AFIYAT,SUM(ALISMALIYET) AS ALISTUTAR,
        SUM(USDALIS) AS USDALIS,SUM(SATIS) AS SATIS,fn.Bol (SUM(SATISMALIYET),SUM(SATIS)) AS SFIYAT,SUM(SATISMALIYET)AS  SATISTUTAR,SUM(USDSATIS) AS USDSATIS FROM 
            (
            Select TARIH ,HESAPADI ,KODU ,Sum(ALIS) as ALIS,SUM(ALISMALIYET ) AS ALISMALIYET,SUM(USDALIS) as USDALIS ,ABS( Sum(SATIS)) as SATIS  ,SUM(SATISMALIYET) AS SATISMALIYET,SUM(USDSATIS) AS USDSATIS 
            from
                (
                Select Tarih AS TARIH,HesapAdi AS HESAPADI,Kodu as KODU,Case When Miktar>0 Then Miktar  else 0 End as ALIS,Case When Miktar>0 Then Tutar   else 0 End as ALISMALIYET,Case When Miktar > 0 Then USDTUTAR  else 0 End as USDALIS,Case When Miktar <0 Then Miktar  else 0 End as SATIS,Case When Miktar <0 Then Tutar  else 0 End as SATISMALIYET,Case When Miktar <0 Then USDTUTAR  else 0 End as USDSATIS  From
                    (
                    select Tarih,H.HesapAdi ,Kodu ,Case When IslemYonu ='ALIS' Then  Miktar Else Miktar *-1 End as Miktar,Fiyat, Tutar * BirimKur as Tutar,Fn.Bol(  Tutar * BirimKur, UsdKur) as USDTUTAR  from Cari.Islemler I Left Join Cari.Hesaplar H on H.Id =I.HesapId  
                    Where I.SubeId=@SubeId and I.Fiyat <>0 And I.Kodu<>I.Birim 
                    And I.IslemKodu in (1,2,3,6) And I.IslemTipi <>11 And I.IsDeleted ='False'  And (I.Tarih <=getdate())
                    ) Islemler
                ) Hacim WHERE KODU <>'TL'
            GROUP BY TARIH,HESAPADI,KODU 
            )
         B Left Join Sistem.Birimler Br on B.Kodu=br.Kodu  
        GROUP BY B.KODU  ,br.SiraNo 
        ) x 
    LEft Join Sistem.AnaBirimler AB on AB.Kodu=X.Kodu
    Left Join Sistem.GetKurListesi (getdate()) Kur1 on Kur1.BirimId =AB.Id
    Left Join Sistem.GetKurListesi (getdate()-1) Kur2 on Kur2.BirimId =AB.Id
    ORDER BY SiraNo 
    )X

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