AIFA AKADEMI · Kurumsal Wiki
4.330 makale
Ana sayfa Kurumsal Wiki › Veritabanı › StoredProcedures › SP-DBO.SPSORT

dbo.SPSort

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

Tip: STORED PROCEDURE · Şema: dbo · Modül: MOD-DIGER · 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'e dahil — BASE Status: CANDIDATE_CANONICAL
BASE SınıfıBASE-CORE (BASE MASTER) · Wiki önerisi: BASE-CORE · Action: INCLUDE_IN_BASE · Güven: MEDIUM
Runtime CertificationPENDING — 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ı: 1 UNQUALIFIED_SQL (= 1) · Kullanım Haritası kanıtı: 1 kayıt (APP_CODE)
Kullanan Ekranlar
Kullanan Class/Method
Incoming Dependency (bunu kullanan nesneler)
Outgoing Dependency (bunun kullandığı nesneler)Cari.Hesaplar, Cari.IslemDetaylari, Cari.Islemler
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ı kategorisiA — ERPGOLD CORE · A-APP_CODE · güven 100
Derinlik / kök0 · bu nesne (Seviye-0)
DependencyPathERPGOLD → uygulama kodu (ERPPRO statik tarama) → dbo.SPSort

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 NO
db_out YES
trigger NO
fk NO
computed NO
crossdb NO
runtime UNKNOWN
external NO

Gerekçe: APP (şemasız ad)

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

Tür: PROCEDURE (P) · Modül: MOD-DIGER · Uzunluk: 34 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 @IslemTipi int
2 @BasTarih date
3 @SonTarih date
4 @KasaId int

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

İlişki Hedef Tip
READS Cari.Hesaplar TABLE
WRITES Cari.IslemDetaylari TABLE
READS Cari.Islemler TABLE

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

CREATE Proc [dbo].[SPSort](@IslemTipi int,@BasTarih date,@SonTarih date,@KasaId int)
as
Insert Into Cari.IslemDetaylari (IslemId,FaturaNo,FaturaSeri,SiraNo )
Select Id,null,null,null From Cari.Islemler Where Id not in (Select IslemId from Cari.IslemDetaylari)


Update D Set D.SiraNo =0 FRom Cari.IslemDetaylari D Left Join Cari.Islemler I on I.Id =D.IslemId Left Join Cari.Hesaplar H on H.Id =I.HesapId Where H.GrupKodu ='MASRAF'


if @IslemTipi =0 
BEGIN
        Declare @MaxASriaNo int =  IsNull((SELECT Max(SiraNo) FROM Cari.IslemDetaylari D Left Join Cari.Islemler I on I.Id =D.IslemId    Where ((I.IslemKodu =1 Or I.IslemKodu =3) And IslemTipi =1) and IsNull(FaturaNo,0)<>0  And   IsDeleted ='False' And Yon ='+'  and KasaId =@KasaId),0)
        UPDATE x
        SET x.SiraNo =@MaxASriaNo + x.NewSiraNo
        FROM (
                SELECT SiraNo   , ROW_NUMBER() OVER (ORDER BY [Tarih]) AS NewSiraNo
                FROM Cari.IslemDetaylari D Left Join Cari.Islemler I on I.Id =D.IslemId  Left Join Cari.Hesaplar H on H.Id =I.HesapId   Where ((I.IslemKodu =1 Or I.IslemKodu =3) And IslemTipi =1) and  I.IsDeleted ='False' And Yon ='+' And  (Tarih >=@BasTarih AND Tarih <=@SonTarih) and KasaId =@KasaId And IsNull(FaturaNo,0) =0 And IsNull(H.GrupKodu,'') <>'MASRAF'
            ) x
END 



 if @IslemTipi =1 
 BEGIN
        Declare @MaxSSriaNo int =  IsNull((SELECT Max(SiraNo) FROM Cari.IslemDetaylari D Left Join Cari.Islemler I on I.Id =D.IslemId    Where ((I.IslemKodu =1 Or I.IslemKodu =3) And IslemTipi =1) and IsNull(FaturaNo,0)<>0  and  IsDeleted ='False' And Yon ='-'   and KasaId =@KasaId),0)
        UPDATE y
        SET y.SiraNo =@MaxSSriaNo + y.NewSiraNo
        FROM (
            SELECT SiraNo   , ROW_NUMBER() OVER (ORDER BY [Tarih]) AS NewSiraNo
            FROM Cari.IslemDetaylari D Left Join Cari.Islemler I on I.Id =D.IslemId Left Join Cari.Hesaplar H on H.Id =I.HesapId    Where I.IsDeleted ='False' and ((I.IslemKodu =1 Or I.IslemKodu =3) And IslemTipi =1) And Yon ='-' And (Tarih >=@BasTarih AND Tarih <=@SonTarih)  and KasaId =@KasaId And IsNull(FaturaNo,0)=0 And IsNull(H.GrupKodu,'') <>'MASRAF'
            ) y
 END

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