AIFA AKADEMI · Kurumsal Wiki
4.330 makale
Ana sayfa Kurumsal Wiki › Kalite ve teknik borç › Items › TD-02

`Max(...)+1` ile numara üretimi (yarış koşulu)

TECH_DEBTERPGOLD_COREACTIVEVERY_HIGHSOURCE_IMPLEMENTED
Kanonik kaynak: markdown · bu sayfa üretilmiş görünümdür

Etki: VB · Öncelik: P1 · Doğrulama: VERIFIED

Kaynak: KB-docs quality/technical-debt.md (tam kod taraması, 2026-09-10). Alanlar: Risk · Evidence · Impact · Recommendation · Priority — KB-docs metninde gömülü; aşağıda korunmuştur.

  • Nerede: ERPPRO/Class/Ext/Cari.IslemEx.vb:256-260 (GetNewFisNo: Select Max(FisNo) From Cari.Islemler + 1), :261-267 (GetNewSiraNo: Cari.GetNewSiraNo(...) + 1); ERPPRO/Class/Dao/Stok.Model.vb:248, Stok.Pirlanta.vb:469, Class/Ext/Siparis.ModelEx.vb:52, Siparis.ParcaEx.vb:56 (GetLastKodu: Select Max(Kodu) … Where Left(Kodu, n)=…); ERPPRO/Class/Dao/Dov.Fatura.vb:373 (GetInvoiceNumber: Select Max(FatNo) … Where fATSeri=…). Çağrı: Cari.Islem.Save Cari.Islem.vb:507.
  • Etki: VB — iki istemci aynı anda kaydederse aynı fiş/kod/fatura numarası üretilir; fiş numarası evrensel tek sayaç (ERPGOLD-mimari-referans.md §10 soru 6, AS-DOCUMENTED) olduğundan çok kullanıcılı/web senaryosunda kesin çakışma.
  • Kanıt: Kilit/UPDLOCK/SEQUENCE yok; okuma ve yazma ayrı bağlantılarda (TD-01).
  • Öneri: SQL SEQUENCE veya Sistem.FaturaSiraNo benzeri sayaç tablosunda UPDATE … OUTPUT ile atomik artırma; fatura serisi bazında ayrı sayaç; benzersiz indeks ile ikinci koruma.
  • Öncelik: P1.

Hata Bilgi Bankası bağlantıları (v1.5)

Ticket problem aileleriPF-005 (416 ticket) · PF-012 (248 ticket) · PF-035 (125 ticket)
GÖZLEMLENMİŞERR-OBS-012 Yanlış yapılan işlemin düzeltilmesi / kayıt olmuyor / mutabakat / fiş · ERR-OBS-035 Program yavaşlığı / donma / index talebi
POTANSİYELERR-POT-002 TD-02 — `Max(...)+1` ile numara üretimi (yarış koşulu)
SESSİZ MANTIK / HESAPLAMAERR-SIL-028 SQLR-063 Duplicate key: Sistem.Kurlar (BirimId,Tarih); Sistem.Birimler

Bu kayıt Hata Bilgi Bankası'nda 4 hata kaydı ve 3 ticket problem ailesi tarafından referans alınıyor. Kayıt sınıfı etiketine dikkat: yalnız GÖZLEMLENMİŞ kayıtlar kanıtlıdır. → Genel Bakış · Kullanım Rehberi