Sınıf: FrmSeriIslem · Modül: MOD-CARI · Türetildiği: DevExpress.XtraEditors.XtraForm · Yaşam döngüsü: ACTIVE_CRITICAL · Kapsam: ERPGOLD_CORE
Nedir?
Seri Islem Ekranı — Cari İşlemler tezgâhından bağımsız, resmi şubede kullanılan ayrı bir işlem penceresidir: üstte hesap seçici (iHesapControl), sağda hesabın bakiye özeti (Bakiye.GetBakiye), ortada bugünkü/seçili fişin işlem listesi (Cari.IslemListesi) ve alt şeritte üç işlem düğmesi vardır: 1 - ISLEM (stok işlem formu FrmStokIslem), 2 - TAKOZ G. (TAKOZ GİRİŞİ (seri)) ve 3 - TAKOZ C. (TAKOZ ÇIKIŞI (seri)) [SOURCE_CODE:ERPPRO/Controls/Islem Ekranı/Ekran/SeriIslemEkrani/FrmSeriIslem.vb:1-320] [SOURCE_CODE:ERPPRO/Form/Genel/FrmMainForm.vb:11]. Aynı fişe arka arkaya satır girmek, listeden DUZELT / IPTAL ET yapmak ve F1–F11 kısayollarıyla fiş/ekstre/takoz belgesi basmak için tasarlanmıştır [DOCUMENT:06_Workflows/WF-SERI-ISLEM.md#varyantlar]. Cari İşlemler içindeki dar "SERİ İŞLEM" satırı (iFSeriIslem) ayrı bir kontroldür; bu makale ayrı pencereyi anlatır.
Ne zaman kullanılır?
- Banko kullanıcısı aynı fişe birden çok kalemi (maden, hurda, nakit, takoz giriş/çıkış) hızlı girecekse [DOCUMENT:06_Workflows/WF-SERI-ISLEM.md].
- Peşin Kontrolü yetkili kullanıcı düzeltme yaparken (fiş toplamı sıfıra kapanmalı) [BUSINESS_RULE:BR-FATURA-008].
- Kuyumcu/rafineri akışında takoz alım-teslim fişleri ve takoz belgeleri (etiket, takoz fişi, barkodlu ekstre, raporsuz takoz listesi) buradan basılır [SOURCE_CODE:FrmSeriIslem.vb:30-57] [DOCUMENT:18_Glossary/TERM-FIS-RAPOR-KISAYOLLARI-F1-F11.md].
Adım adım kullanım
- ANA MENÜ ▸ Hesap Yonetimi ▸ Seri Islemler ▸ Seri Islem Ekranı (şerit yalnız resmi şubede görünür).
- Üstte Hesap seçilir, TAMAM (Enter) basılır: işlem paneli ve bakiye ızgarası açılır, fiş tasarım listesi hesaba göre dolar, odak 1 - ISLEM'e gelir [SOURCE_CODE:FrmSeriIslem.vb:12-29]. Ön koşullar: şube/kasa/hesap dolu, hesap aktif, grupta ekran yetkisi, zorunlu evrak eksik değil [DOCUMENT:06_Workflows/WF-SERI-ISLEM.md#ön-koşullar].
- 1 - ISLEM: stok işlem formu açılır (maden/hurda/nakit vb. satır); 2 - TAKOZ G. ve 3 - TAKOZ C. takoz pencereleri. Kaydedilen her satır listeye düşer, bakiye özeti yenilenir; ilk kayıtta yeni fiş numarası alınır, sonraki satırlar aynı fişe düşer [BUSINESS_RULE:BR-GENEL-002].
- Listede satır seçip DUZELT: takoz giriş satırı (
ICode=0, IType=0) → takoz giriş penceresi; takoz çıkış (ICode=0, IType=1) → takoz çıkış; diğerleri → stok işlem formu [SOURCE_CODE:FrmSeriIslem.vb:297-315]. IPTAL ET: "Seçmiş Olduğunuz İşlem İptal Edilecektir. Onaylıyormusnuz ?" →Islem.DeleteAt[SOURCE_CODE:FrmSeriIslem.vb:271-279]. - 4 - LISTELE: bugünün fişi yerine Bas. Tarihi aralığındaki (varsayılan son 15 gün) tüm işlemler listelenir; işlem paneli gizlenir; Esc geri döner [SOURCE_CODE:FrmSeriIslem.vb:79-82,120-142].
- Yazdırma (fiş tasarımı 0 iken): F1 açıklamalı fiş, F11 fiş, F2 son durum, F3 takoz ekstresi, F4 hesap ekstresi, F5 takoz fişi (raporlu/raporsuz), F6 takoz barkodu, F7 barkodlu takoz ekstresi, F8 raporsuz takoz listesi, F9 bakiye ekstresi; özel fiş tasarımı seçiliyse F1–F9/F11 Fiş : kutusundaki tasarımı basar [SOURCE_CODE:FrmSeriIslem.vb:30-57]. YAZDIR düğmesi seçili tasarımı basar.
- Esc hesabı yeniden TAMAM'lar (listeyi kapatır); Shift+Esc ya da ESC - KAPAT pencereyi kapatır; Ctrl+F8 liste düzeni tasarım modunu açar [SOURCE_CODE:FrmSeriIslem.vb:30-33,59-70].
Alanların anlamı
| Ekran etiketi | İş anlamı |
|---|---|
| Hesap (üst seçici) / Fiş : | Seçili cari hesap ve o an açık fiş numarası (iHesapControl.HesapId/FisNo) |
| Bakiye ızgarası (BAKIYE / ALACAK / BORC) | Bakiye.GetBakiye(0, Hesap, IslemId) — hesabın birim bazında bakiyesi; listede satır seçilince o satıra kadar olan bakiye [SOURCE_CODE:FrmSeriIslem.vb:108-113,206-217] |
| İşlem listesi | Cari.IslemListesi(0, Hesap, FişNo, tarih1, tarih2) — bugünkü fiş ya da tarih aralığı; Sec sütunu liste modunda görünür |
| Bas. Tarihi (iki tarih) | LISTELE modunda aralık; varsayılan bugün−15 gün … bugün |
| Rapor : | Rapor/fiş tasarım listesi (ReportsCombo1, parametreler HesapId/RecordId/FisNo) |
| Gorunum | Liste düzeni (CmbListLayout1, Ctrl+F8 tasarım) |
| 1 - ISLEM / 2 - TAKOZ G. / 3 - TAKOZ C. / 4 - LISTELE / DUZELT / IPTAL ET / YAZDIR / ESC - KAPAT | Eylem düğmeleri (Alt+rakam kısayolları) |
Bu ekranın kendi giriş alanı yoktur; işlem alanları açılan alt pencerelerdedir (alan haritaları o makalelerde).
Hesaplama / doğrulama mantığı
- İşlemin Karşılığı Bulunamadı. Lütfen İşlemin Karşılığını Giriniz. — kullanıcı grubunda Pesin Kontrolu açıksa, yazdırma öncesi
Cari.Islem.GetFisTutar(kullanıcı, fiş)≠ 0 ise fiş basılmaz; fişteki giriş ve çıkışların TL karşılığı sıfıra kapanmalı [SOURCE_CODE:FrmSeriIslem.vb:227-233] [BUSINESS_RULE:BR-FATURA-008]. - Fiş numarası
Max(FisNo)+1ile alınır; kilit yoktur — iki kullanıcı aynı fiş numarasını alabilir [DOCUMENT:09_CodeArchitecture/CONFIGURATION.md#cfg-hard-fisno-maxplus1] [DOCUMENT:12_Support/KnownIssues/H-102.md]. - Liste sorguları dinamik SQL (3 ifade); bir boş
catch(ListRefresh) hatayı yutar. - Takoz belgeleri yalnız takoz satırında (
ICode=0) basılır; fiş/ekstre yalnızFisNo ≠ 0iken.
Stok / bakiye / rapor etkisi
İşlem ekranıdır (alt pencereler üzerinden): her F2 tek Cari.Islemler satırı yazar; TRG-CARI.ACCEPTTRANSACTION bakiye (Cari.BakiyeIslem), stok (Stok.StokHaraketleri) ve iz (Cari.History) satırlarını üretir; hangi defterin üretileceği ürün tipi, IslemTipi ve kurulum profiline bağlıdır — bkz. BR-DEFTER-URETIMI. Takoz satırları ayrıca Stok.Takoz kartını açar/kapatır [BUSINESS_RULE:BR-STOK-013] [BUSINESS_RULE:BR-STOK-002]. İptal yumuşak silmedir; defter satırları geri alınır [BUSINESS_RULE:BR-IPTAL-009].
Sık yapılan kullanıcı hataları
- "LÜTFEN BİR STOK SEÇİNİZ." / "İşlemin Karşılığı Bulunamadı" / pasif stok / tarih — seri işlem tuzakları [DOCUMENT:12_Support/Playbooks/PB-064.md] [DOCUMENT:12_Support/KnownIssues/H-082.md] [DOCUMENT:12_Support/KnownIssues/H-083.md] [DOCUMENT:12_Support/KnownIssues/H-084.md].
- Seri kayıt modunda barkod okutunca anında kaydediyor (takoz) [DOCUMENT:12_Support/KnownIssues/H-074.md].
- Fiş numarası iki güne yayılmış / iki kişi aynı fişi almış [DOCUMENT:12_Support/KnownIssues/H-102.md] [DOCUMENT:12_Support/Playbooks/PB-065.md].
- Ekrandaki tarih değil ana pencere tarihi kaydedilir (iFSeriIslem) — seçtiğim tarih kaydedilmedi [DOCUMENT:12_Support/KnownIssues/H-081.md] [DOCUMENT:06_Workflows/WF-SERI-ISLEM.md].
- Raporda ALACAK/BORÇ süzgeci boş; VİRMAN/BORÇ başlığı 'GIRIS' yazıyor [DOCUMENT:12_Support/KnownIssues/H-135.md] [DOCUMENT:12_Support/Playbooks/PB-054.md].
- Takoz etiketi çıkmıyor / küçük takoz etiketi — 30 gr eşiği ve etiket yazıcısı [DOCUMENT:12_Support/KnownIssues/H-073.md] [DOCUMENT:12_Support/Playbooks/PB-026.md].
İlgili ticket temaları
- PRB-TAKOZ-000, PRB-BAKIYE-000, PRB-YAZICI-000; zincirler SYM-TAKOZ, SYM-YAZICI.
- Playbook'lar: PB-064, PB-065, PB-049, PB-026.
Müşteri varyasyonları
- Şerit yalnız resmi şubede (
Sube.IsResmi) görünür; resmi olmayan şubelerde ekran menüde yoktur [SOURCE_CODE:FrmMainForm.vb:11]. - Takoz düğmeleri kuyumcu/rafineri kurulumuna özgüdür (
Stok.TakozV2'de boş, KUYUMCU'da 10.870 satır) [DOCUMENT:kitap#9.5]. - Kullanıcı ayarındaki Fiş tasarımı (
FisDizayni) 0 ise sabit rapor seti, değilse müşteriye özel fiş tasarımları (CmbOzelFisTasarimlari) basılır [DOCUMENT:09_CodeArchitecture/CONFIGURATION.md#cfg-client-fisdizayni].
Kim kullanır? Nereden açılır?
- ANA MENÜ ▸ Hesap Yonetimi ▸ Seri Islemler ▸ Seri Islem Ekranı
- Kod içinden açan sınıflar: FrmStokIslem, FrmTakozCikisi, FrmTakozGiris, iScreen
Yaşam döngüsü kanıtı
ACTIVE_CRITICAL — ANA MENÜ: Hesap Yonetimi ▸ Seri Islemler ▸ Seri Islem Ekranı; çağıran sınıf: FrmStokIslem, FrmTakozCikisi, FrmTakozGiris, iScreen
Alanlar (etiket metinleri)
| Etiket | Tür | Kontrol (teknik) |
|---|---|---|
| ESC - KAPAT | Button | BtnKapat |
| ** ** | LabelControl | LabelControl2 |
| Rapor : | LabelControl | LabelControl5 |
| Fiş : | LabelControl | LabelControl15 |
| YAZDIR | Button | Button1 |
| Gorunum | LabelControl | LabelControl6 |
| Bas. Tarihi | LabelControl | LabelControl3 |
| IPTAL ET | Button | BtnIptal |
| DUZELT | Button | BtnModify |
| &4 - LISTELE | Button | BtnListele1 |
| &2 - TAKOZ G. | Button | BtnTakozGiris |
| &3 - TAKOZ C. | Button | BtnTakozCikis |
| &1 - ISLEM | Button | BtnMaden |
| ** ** | LabelControl | LabelControl4 |
Kullanıcı olayları
| Olay | Metot | Dosya:satır |
|---|---|---|
ReportsCombo1.BeforeReport |
ReportsCombo1_BeforeReport |
FrmSeriIslem.vb:6 |
CmbHesap.ButtonClick |
HesapValidate |
FrmSeriIslem.vb:12 |
Me.KeyDown |
FrmSeriIslem_KeyDown |
FrmSeriIslem.vb:30 |
Me.Shown |
FormInit |
FrmSeriIslem.vb:77 |
BtnKapat.Click |
FormClose |
FrmSeriIslem.vb:83 |
BtnListele.Click, BtnListele1.Click |
ListOpenOrClose |
FrmSeriIslem.vb:143 |
VwBakiye.CustomColumnDisplayText |
VwBakiye_CustomColumnDisplayText |
FrmSeriIslem.vb:168 |
VwBakiye.CustomDrawCell |
CustomDrawCell |
FrmSeriIslem.vb:173 |
VwIslem.KeyUp, VwIslem.MouseUp |
VWIslemBakiyeRefresh |
FrmSeriIslem.vb:206 |
VwIslem.LostFocus |
VWIslemLostFocus |
FrmSeriIslem.vb:212 |
BtnIptal.Click |
BtnIptal_Click |
FrmSeriIslem.vb:271 |
BtnMaden.Click |
BtnMaden_Click |
FrmSeriIslem.vb:280 |
BtnTakozGiris.Click |
BtnTakozGiris_Click |
FrmSeriIslem.vb:287 |
BtnTakozCikis.Click |
BtnTakozCikis_Click |
FrmSeriIslem.vb:292 |
BtnModify.Click |
BtnModify_Click |
FrmSeriIslem.vb:297 |
Okuduğu / yazdığı tablolar (kod içi SQL, statik)
| Tablo | Fiiller |
|---|---|
Bakiye.GetBakiye ⚠︎ DB'de yok |
SELECT |
Cari.IslemListesi ⚠︎ DB'de yok |
SELECT |
Kullandığı DAO / iş sınıfları
AIO.Cari.ListItem, AIO.Stok.Takoz
Kullanıcıya gösterilen mesajlar (doğrulama)
- Seçmiş Olduğunuz İşlem İptal Edilecektir. Onaylıyormusnuz ?
- İşlemin Karşılığı Bulunamadı. Lütfen İşlemin Karşılığını Giriniz.
Yetki bayrakları
PesinKontrol
Bilinen kusurlar / dikkat
- Boş
catchbloğu: 1 — hata yutuluyor (TD-EMPTY-CATCH). - Dinamik SQL: 3 ifade — parametresiz birleştirme riski (TD-DYNAMIC-SQL).
Kaynaklar
SOURCE_CODE:ERPPRO/Controls/Islem Ekranı/Ekran/SeriIslemEkrani/FrmSeriIslem.Designer.vbSOURCE_CODE:ERPPRO/Controls/Islem Ekranı/Ekran/SeriIslemEkrani/FrmSeriIslem.vbDERIVED:KnowledgeBase/02_Screens/FrmSeriIslem.md(KB-v1 anlatım)DERIVED:docs/knowledge-base/screens/FrmSeriIslem.md(KB-docs statik analiz)DERIVED:kb_src/erppro/scan.json(olay/SQL/çağrı)
Bilinmeyenler
- Hangi sürümde eklendiği: VERSION_UNKNOWN (GAP-CODE-VERSION-DATE).
