Tip: INLINE TABLE FUNCTION · Şema: Bakiye · Modül: MOD-RAPOR · 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 Durumu | BASE'e dahil — BASE Status: CANDIDATE_CANONICAL |
| BASE Sınıfı | BASE-CORE (BASE MASTER) · Wiki önerisi: BASE-CORE · Action: INCLUDE_IN_BASE · Güven: HIGH |
| Runtime Certification | PENDING — BASE ile açılış/işlem testi yapılmadı; otomatik PASS yazılmadı |
| Kodda Kullanılıyor mu? | EVET — doğrudan (Seviye-0) |
| Kod Referans Sayısı | BASE taraması: 5 SQL_LITERAL (= 5) · Kullanım Haritası kanıtı: 5 kayıt (APP_CODE) |
| Kullanan Ekranlar | FrmDevirGiris, FrmSeriIslem |
| Kullanan Class/Method | Cari.Bakiye, FrmSeriIslem |
| Incoming Dependency (bunu kullanan nesneler) | Bakiye.GetDateOfBakiye |
| Outgoing Dependency (bunun kullandığı nesneler) | Cari.BakiyeIslem, Cari.Islemler, Sistem.Birimler, Sistem.GetKurListesi, Stok.Takoz |
| Trigger İlişkisi | yok |
| Ticket Problem Aileleri | — |
| Bilinen Hatalar | — |
| Bilinen SQL Riskleri | — |
| Health Check Kuralı | OBJ-01 |
| Müşteri Özel mi? | HAYIR |
| Opsiyonel Modül mü? | HAYIR |
| Legacy mi? | HAYIR |
| Son Doğrulama Tarihi | 13.09.2026 — statik analiz (katalog 2026-09-10 + kaynak kod taraması). Çalışma zamanı doğrulaması: PENDING |
Kullanım haritası
| Kullanım Haritası kategorisi | A — ERPGOLD CORE · A-APP_CODE · güven 100 |
| Derinlik / kök | 0 · bu nesne (Seviye-0) |
| DependencyPath | ERPGOLD → Cari.Bakiye → Bakiye.GetBakiye |
| Dış uygulama | ErpPosV2:FrmMainForm |
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 |
YES |
| report |
NO |
| config |
NO |
| dynamic |
NO |
| db_in |
YES |
| db_out |
YES |
| trigger |
NO |
| fk |
NO |
| computed |
NO |
| crossdb |
NO |
| runtime |
UNKNOWN |
| external |
NO |
Gerekçe: APP
KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)
Tür: FUNCTION (IF) · Modül: MOD-CARI · Uzunluk: 27 satır
Özet
Bir hesabın ekrandaki bakiye kartını döner: her birim için BAKIYE, ALACAK, BORC, NET. @IslemId=0 ise bugüne kadar. TAKOZ satırını ayrıca hesaplar; IsStatic birimler sıfır olsa da gelir.
Parametreler
| # |
Parametre |
Tip |
Çıktı |
| 1 |
@HesapType |
int |
|
| 2 |
@HesapId |
int |
|
| 3 |
@IslemId |
int |
|
Bağımlılıklar (bu nesne → hedef)
Bu nesneyi kullananlar
İlgili iş kuralları
- Cari.BakiyeIslem'i BirimId bazında toplar; ALACAK = Bakiye<0 mutlak değeri, BORC = Bakiye>0, NET = Bakiye-1Alis kuru (Bakiye.GetBakiye.md)
- TAKOZ: raporsuz takozlardan (IsRapor=0) XRFAuMilyem (0 ise 0.6) ile has hesaplar (Bakiye.GetBakiye.md)
- @IslemId<=Id veya 0 filtresiyle belirli işleme kadar bakiye alınabilir; KasaId kullanılmaz (Bakiye.GetBakiye.md; az 8.5)
- IsStatic='True' birimler bakiye 0 olsa da listelenir (Bakiye.GetBakiye.md)
SQL tanımı (AS-IMPLEMENTED, örnek DB)
CREATE Function [Bakiye].[GetBakiye] (@HesapType int,@HesapId int,@IslemId int)
RETURNS TABLE
as
return
select BAKIYE,SUM(ALACAK) AS ALACAK,SUM(BORC) AS BORC,SUM(NET) AS NET FROM
(
Select 'TAKOZ' AS BAKIYE,Case When Miktar>0 Then Miktar Else 0 End as ALACAK,Case When Miktar <0 Then Miktar Else 0 End as BORC ,Has * Kur.Alis as NET From
(
Select I.HesapId,SUM((I.Miktar + I.CesniMiktar) * I.SAdet ) as Miktar,SUM(((I.Miktar + I.CesniMiktar) * I.SAdet ) * Case When T.XRFAuMilyem=0 Then 0.6 Else T.XRFAuMilyem End ) as Has From Cari.Islemler I Left Join Stok.Takoz T on T.Id =I.StokId Where I.IsRapor =0 And IslemKodu =0 And I.IsDeleted ='False' And (I.HesapId =@HesapId) and (I.Id <=@IslemId Or @IslemId =0)
group by I.HesapId,I.StokId
) x Left Join Sistem.GetKurListesi (getdate()) Kur on Kur.Birim ='HAS'
) X GROUP BY BAKIYE
UNION ALL
Select top 10000 Kod.Kodu as BAKIYE, Case When Bakiye < 0 Then Abs(Bakiye) else null end as ALACAK, Case When Bakiye> 0 Then Bakiye else null end as BORC,IsNull((Bakiye *-1) * KurA.Alis ,0) as NET
From Sistem.Birimler Kod
Left Join
(
Select BirimId as BakiyeId,Sum(Bakiye) as Bakiye
from Cari.BakiyeIslem
Where (HesapType =@HesapType And HesapId =@HesapId) And (IslemId <=@IslemId Or @IslemId =0)
Group By BirimId
) Bak on Bak.BakiyeId =Kod.Id
Left Join Sistem.GetKurListesi (GETDATE()) KurA on KurA.BirimId =Kod.Id
Where (Kod.IsStatic='False' And Bakiye<>0) or Kod.IsStatic='True'
order by Kod.IsStatic desc, Kod.SiraNo asc
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).