Sınıf: FrmKullaniciEkle · Modül: MOD-SISTEM · Türetildiği: ERPPRO.FormEditBase · Yaşam döngüsü: ACTIVE_CRITICAL · Kapsam: ERPGOLD_CORE
Nedir?
Kullanıcı tanımlama ekranıdır: programa giriş yapacak kullanıcıyı Sistem.Users'a açar ve alt ızgarada kullanıcının hangi şubede, hangi kasayla, hangi yetki grubunda çalışacağını Sistem.UserDetails satırları olarak tanımlar [SOURCE_CODE:ERPPRO/Form/Users/FrmKullaniciEkle.vb:1-115] [DB_OBJECT:Sistem.Users] [DB_OBJECT:Sistem.UserDetails]. Bir kullanıcı birden çok şube-kasa satırına sahip olabilir; giriş ekranında bunlardan birini seçer [DOCUMENT:06_Workflows/WF-KULLANICI-TANIMLAMA.md] [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#1]. Kullanıcı satırı olmadan giriş yapılamaz ("Lütfen bilgileri Eksiksiz Giriniz.") ve hiçbir menü çalışmaz [DOCUMENT:12_Support/KnownIssues/H-010.md].
Ne zaman kullanılır?
- Yeni personel için giriş açılırken [DOCUMENT:06_Workflows/WF-KULLANICI-TANIMLAMA.md].
- Kullanıcıya ek şube/kasa verilirken, yetki grubu değiştirilirken ya da kasa kilidi (Lock) açılıp kapatılırken.
- Kullanıcı ayrılınca giriş izni silinirken.
- Şifre değişikliği bu ekrandan da yapılabilir; kullanıcı kendi şifresini Sifre Değiştir ile değiştirir.
Adım adım kullanım
- ANA MENÜ ▸ Tanımlamalar ▸ Sistem Tanimlari ▸ Kullanıcı Tanımlama ▸ YENİ KAYIT.
- Sirket oturum şirketine kilitlidir. Kullanıcı Adi ve Sifre yazılır; istenirse Personel (Personel.Personeller kaydı), Email, GSM [SOURCE_CODE:FrmKullaniciEkle.vb:15-37].
- Kayıt — yeni kayıtta pencere açık kalır ve alt Sube bölümü etkinleşir (
RecordId <> 0) [SOURCE_CODE:FrmKullaniciEkle.vb:4-12,57-66]. - Sube seçilir → kasa listesi o şubenin kasalarıyla dolar → Kasa ve Grup (yetki grubu) seçilir → mavi artı (Ekle) ile satır eklenir. Satır
IsLocked = True(kasa kilitli) olarak eklenir; kullanıcı kasa değiştirebilsin isteniyorsa ızgaradaki Lock kutusu kaldırılır [SOURCE_CODE:FrmKullaniciEkle.vb:79-85,104-113]. - Izgarada yalnız Group ve Lock sütunları düzenlenebilir; değişiklik anında yazılır ("Kullanıcı Grubu Duzeltilemedi." hata mesajı).
- Kaldır düğmesi seçili satırı yumuşak siler: "Kullanıcı Griş İzni silinecektir. Onaylıyor musunuz?" [SOURCE_CODE:FrmKullaniciEkle.vb:87-95].
- Kullanıcı programdan çıkıp yeniden girer; yetkiler girişte yüklenir [DOCUMENT:06_Workflows/WF-KULLANICI-TANIMLAMA.md#varyantlar].
Alanların anlamı
| Ekran etiketi | İş anlamı (kolon) |
|---|---|
| Sirket | Kullanıcının şirketi (Sistem.Users.SirketId); giriş ekranındaki ilk seçim |
| Kullanıcı Adi | Giriş adı (UserName); giriş ekranında açılır listede görünür |
| Sifre | Giriş parolası (Password, geri döndürülebilir şifreli metin; boş kaydedilirse giriş yapılamaz) [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#4] |
| Personel | Bağlı personel kartı (PersonelId) |
| Email / GSM | İletişim (Email, Gsm) |
| Sube / Kasa / Grup (ızgara) | Şube-kasa-yetki grubu ataması (UserDetails.SubeId, KasaId, GroupId) |
| Lock (ızgara) | Kasa kilidi: işaretliyse işlem ekranlarında KASA kutusu değiştirilemez (UserDetails.IsLocked → User.Lock) [DOCUMENT:09_CodeArchitecture/CONFIGURATION.md#cfg-userdetail-islocked] [BUSINESS_RULE:BR-KASA-001] |
Kolon anlamları kitapçık §6.3 ve SEC-AUTHN §1'den [DOCUMENT:kitap#6.3 Sistem.Users] [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#1].
Hesaplama / doğrulama mantığı
- Ekranda ad/şifre için doğrulama mesajı yoktur; şifre karmaşıklık kuralı yoktur [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#4].
Sistem.Users.IsActivegiriş sırasında filtrelenmez: pasif kullanıcı giriş yapabilir; erişimi kesmek için şube satırı Kaldır ile silinmelidir [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#1].UserDetailsINSERT/UPDATE string birleştirmeyle kurulur (TD-DYNAMIC-SQL; SEC-AUTHN R10).Lockgirişte engel değildir; yalnız kasa/şube seçim kutularını kilitler (Cari İşlemler, Transfer Ekle, Mutabakat) [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#1].
Stok / bakiye / rapor etkisi
Defter etkisi yok — tanım ekranı. Kullanıcı ataması, işlem satırına yazılan UserId/LoginId ve varsayılan KasaId'yi belirler [BUSINESS_RULE:BR-LOGIN-001].
Sık yapılan kullanıcı hataları
- Yeni kullanıcı girdi ama şube/kasa seçemiyor, hiçbir ekran açılmıyor — şube-kasa-grup satırı eklenmemiş [DOCUMENT:12_Support/KnownIssues/H-010.md] [DOCUMENT:12_Support/Playbooks/PB-009.md].
- Kullanıcı adı / şifre kabul edilmiyor [DOCUMENT:12_Support/KnownIssues/H-009.md].
- Perakendede/işlemde kasa değiştiremiyorum — Lock işaretli [DOCUMENT:12_Support/KnownIssues/H-090.md].
- Yetki değişti ama ekran aynı — yeniden giriş yapılmamış [DOCUMENT:06_Workflows/WF-KULLANICI-GRUBU-YETKI.md].
- Ek kullanıcı bilgisayarından programa girilemiyor — kullanıcı tanımı değil bağlantı/lisans sorunu [DOCUMENT:12_Support/KnownIssues/H-002.md] [DOCUMENT:12_Support/Playbooks/PB-002.md].
İlgili ticket temaları
- PRB-TANIMLAMA-000, PRB-BAGLANTI-000; zincirler SYM-TANIMLAMA, SYM-BAGLANTI.
- Playbook: PB-009.
Müşteri varyasyonları
Bilinen fark yok. Yeni şirket kurulumunda varsayılan admin kullanıcısı Sistem.SirketOlustur ile açılır [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#6].
Kim kullanır? Nereden açılır?
- ANA MENÜ ▸ Tanımlamalar ▸ Sistem Tanimlari ▸ Kullanıcı Tanımlama
- Liste ekranındaki Ekle/Düzenle:
AIO.Sistem.Users.FormEditBase→ bu form
Yaşam döngüsü kanıtı
ACTIVE_CRITICAL — ANA MENÜ: Tanımlamalar ▸ Sistem Tanimlari ▸ Kullanıcı Tanımlama; DAO FormEditBase hedefi: AIO.Sistem.Users
Alanlar → veritabanı
| Ekrandaki alan | Kontrol | Tablo.Kolon | Yön |
|---|---|---|---|
| Sirket | CmbSirket |
Sistem.Users.SirketId |
yaz |
| Kullanıcı Adi | TxtUserName |
Sistem.Users.UserName |
yaz |
| Sifre | TxtPassword |
Sistem.Users.Password |
yaz |
| Personel | CmbPersonel |
Sistem.Users.PersonelId |
yaz |
TxtEmail |
Sistem.Users.Email |
yaz | |
| GSM | TxtTelefon1 |
Sistem.Users.Gsm |
yaz |
Kullanıcı olayları
| Olay | Metot | Dosya:satır |
|---|---|---|
CmbSube.EditValueChanged |
SubeDegisti |
FrmKullaniciEkle.vb:43 |
BtnAdd.Click |
Add |
FrmKullaniciEkle.vb:79 |
BtnRemove.Click |
Remove |
FrmKullaniciEkle.vb:87 |
View.FocusedColumnChanged, View.FocusedRowChanged, View.Click |
View_Changed |
FrmKullaniciEkle.vb:96 |
View.CellValueChanged |
View_ValidateRow |
FrmKullaniciEkle.vb:104 |
Okuduğu / yazdığı tablolar (kod içi SQL, statik)
| Tablo | Fiiller |
|---|---|
Personel.Personeller |
SELECT |
Sistem.GetUsers ⚠︎ DB'de yok |
SELECT |
Sistem.Sirketler |
SELECT |
Sistem.Subeler |
SELECT |
Sistem.UserDetails |
INSERT, UPDATE |
Sistem.UserGroup |
SELECT |
Kullandığı DAO / iş sınıfları
Kullanıcıya gösterilen mesajlar (doğrulama)
- Kullanıcı Griş İzni silinecektir. Onaylıyor musunuz?
- Kullanıcı Grubu Duzeltilemedi.
Bilinen kusurlar / dikkat
- Dinamik SQL: 6 ifade — parametresiz birleştirme riski (TD-DYNAMIC-SQL).
Kaynaklar
SOURCE_CODE:ERPPRO/Form/Users/FrmKullaniciEkle.Designer.vbSOURCE_CODE:ERPPRO/Form/Users/FrmKullaniciEkle.vbDERIVED:docs/knowledge-base/screens/FrmKullaniciEkle.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).
