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

`Devir.DevirYap`: `TRUNCATE` + yeniden `INSERT`, transaction yok

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/Module/Devir.vb:39-40 (BACKUP/RESTORE metinleri string birleştirme), :76-87 (Truncate Table Cari.Islemler, Cari.BakiyeIslem, Cari.History, Stok.StokHaraketleri, Cari.IslemDetaylari + INSERT … Select * from #ErpBalance/#ERPStok), :90-147 (adımlar ayrı ExecuteNonQuery/ExecuteScalar, BEGIN TRAN yok), :91 (sp_configure … RECONFIGURE WITH OVERRIDE).
  • Etki: VB — TRUNCATE sonrası INSERT hata verirse hareket tabloları boş kalır; tek güvence önce alınan yedek.
  • Kanıt: satırlar yukarıda.
  • Öneri: Devir betiğini BEGIN TRAN … COMMIT + TRY/CATCH içine almak; TRUNCATE yerine yeni dönem DB'si oluşturma; sp_configure değişikliğini kaldırmak.
  • Öncelik: P1.