Kaynak: KB-v1
06_Workflows/WF-YIL-SONU-DEVIR.md(2026-09-10, kısmi kod kapsamı). Bu makale artık kanoniktir; KB-v1 kopyası22_Archive'da referanstır.
Yıl sonu devri (veritabanı devri)
Kimlik: WF-YIL-SONU-DEVIR · Modül: MOD-SISTEM · Kim: SUPPORT · Güven: HIGH · Gerçeklik: AS-DOCUMENTED
Ne zaman başlar
Yeni yıla geçişte eski dönemin arşivlenmesi ve açılış bakiyelerinin oluşturulması
Ön koşullar
- Yedek alınmış
- Devir günü takoz VE çeşni stokları sıfır; maden stokları tek kasada
- Nakit ve maden stokları (operasyonel ve belgelendirilmiş görünüm), bakiye ekstresi ve son bilanço not edilmiş
- Program güncel sürümde; Aralık BTrans'ı alınmış
Adımlar
| # | Ekran | Kullanıcı ne yapar | Sistem ne yapar | Tablolar |
|---|---|---|---|---|
| 1 | SCR-STOKLAR |
Takozlar SERİ ÇIKIŞ ile geçici carte çıkılır; çeşni C - ÇEŞNİ ile çıkılır; stoklar tek kasaya transfer edilir | Bkz. WF-TAKOZ-SERI-CIKIS, WF-CESNI-CIKIS, WF-KASA-TRANSFER | Stok.Takoz, Stok.StokHaraketleri |
| 2 | SCR-SQL |
Cari.Islemler geçici olarak Cari.Islemler_ adıyla değiştirilip yedek alınır; yedek ERPGOLDV2[yıl] adıyla restore edilir | Kullanıcıların yedek sırasında işlem yapması engellenir | Cari.Islemler |
| 3 | SCR-SISTEM |
ADMIN ile giriş; ana menüde Shift+D ile Sistem > Tanımlamalar > Devir düğmesi aktif edilir; Devir + ADMIN şifresi | Sistem.Devir(@Tarih) / sp_DevirIslemiYap: bakiyeler IslemId=-1 satırları olarak Cari.BakiyeIslem'e, stok son durumu Stok.StokHaraketleri'ne yazılır; Cari.Islemler, History, IslemDetaylari, Transferler temizlenir; Sistem.Login yazılır | Cari.BakiyeIslem, Stok.StokHaraketleri, Cari.Islemler, Cari.History, Cari.IslemDetaylari, Cari.Transferler |
| 4 | SCR-SQL |
Arşiv veritabanında AcceptTransaction tetiği RAISERROR('BU VERI TABANI ISLEME KAPATILMISTIR.') ile kapatılır; ERPGLOBAL.Company tablosuna arşiv adı eklenir | ||
| 5 | SCR-STOKLAR |
Resmi stoklar DEVİR hesabından GİRİŞ+MAHSUP ile elle girilir; takozlar Blok Takoz ile, çeşni 0,01 gr takozla geri alınır; transferler geri yapılır | ||
| 6 | SCR-RAPORLAR |
Bilanço, maden/nakit stokları (GR/R), pozisyon, bakiye listesi eski yılın son günüyle karşılaştırılır; kur listesi yeni yıla girilir | Tarih alanı NULL olan BakiyeIslem/StokHaraketleri satırları tutarsızlık işaretidir; fişte eski bakiye çıkmazsa Bakiye.GetBakiyeFisNo güncellenir | Cari.BakiyeIslem, Stok.StokHaraketleri |
Sonuç (bakiye / stok / kasa)
- Yeni dönemde açılış satırları (IslemId=-1, düzeltilemez); eski yılın işlemleri arşiv DB'de
- Bakiye kartında devir işlem listesinde görünmez ama bakiyeye dahildir
Varyantlar
- Manuel devir (SQL query ile tarih bazlı, v2/v3 süreç dokümanı): triggerlar disable edilip geçici tablolarla bakiye/stok taşınır
Uyarı mesajları
- "Devir sonrası takoz stoğu −1 (devirden önce alınan takoz devirden sonra çıkılmış)"
- "DEVİR hesabında kalıcı bakiye (MAHSUP yerine NORMAL girilmiş)"
İlgili kurallar
BR-DEVIR-TAKOZ-SIFIRBR-DEVIR-MAHSUP-001
Kaynaklar
- SRC-PROC-DOC —
surecbook/docs.json - SRC-PROC-DOC —
surecbook/docs.json - SRC-PROC-DOC —
surecbook/docs.json - SRC-DRV-AZ —
az/06-duzeltme.md— bölüm 6.6 - SRC-DRV-AZ —
az/ekran-B.md— bölüm 5.7.0 - SRC-DB-MODULES —
Sistem.Devir - SRC-DB-MODULES —
dbo.sp_DevirIslemiYap - SRC-DRV-KITAPCIK —
kitapcik/05-operasyon.md— bölüm 5.1
