Sınıf: FrmMainForm · Modül: MOD-SISTEM · Türetildiği: DevExpress.XtraBars.Ribbon.RibbonForm · Yaşam döngüsü: ACTIVE_CRITICAL · Kapsam: ERPGOLD_CORE
Nedir?
ANA MENÜ — programın ana kabuğu. Başlığında oturum şubesi yazar ("ANA MENU - [ŞUBE]"), üstte 6 sekme · 20 grup · 151 düğmelik şerit (ribbon), altta sekmeli çalışma alanı (MainTabControl) bulunur [SOURCE_CODE:ERPPRO/Form/Genel/FrmMainForm.vb:8-31] [DOCUMENT:03_ERPGOLD_Product/MENU_TREE.md]. Her düğmenin bir etiketi (Tag) vardır; tıklanınca onMenuSelect etikete göre ilgili ekranı açar (menü → ekran → DAO → tablo zinciri buradan başlar) [SOURCE_CODE:FrmMainForm.vb:54-60] [DOCUMENT:09_CodeArchitecture/ARCH-APP-FLOW.md]. Hangi düğmelerin görüneceği kullanıcının yetki grubundan gelir; lisans süresi dolmuşsa şerit tümüyle kapanır [SOURCE_CODE:FrmMainForm.vb:13-17] [SCREEN:SCR-FRMADDUSERGROUP]. Sekmelerin üstündeki şube seçici ile programdan çıkmadan başka şubeye geçilir; Resmi anahtarı (ChkResmi) gölge/resmi modu (Program.ShadowMode) açar [SOURCE_CODE:FrmMainForm.vb:36-52,660-662].
Ne zaman kullanılır?
- Girişten sonra sürekli açıktır; tüm ekranlar buradan açılır. Kapatılınca giriş ekranı yeniden görünür ve kullanıcı ayarları (tema) kaydedilir [SOURCE_CODE:FrmMainForm.vb:531-537].
- Şube değiştirmek, sistem yenilemek (Ctrl+F5), yedek almak, yardım/uzak destek aracını çalıştırmak, sürüm güncellemek için.
Adım adım kullanım
- Giriş sonrası pencere açılır; takvim/görev sekmesi (
Takvim.Show) varsayılan olarak yüklenir [SOURCE_CODE:FrmMainForm.vb:23]. - Sekmeler: Hesap Yonetimi (Cari İşlemler, Hesaplar, Master, Faturalar, Transferler, Seri İşlem, Gişe, BTRANS, TCMB kurları, raporlar…), Uretim Modulu, Personel Yonetimi, Operasyonlar, Tanımlamalar (Sistem Tanimlari, Stok Tanimlari, Sistem ▸ Settings/Devir), Aifa Developer Studio [DOCUMENT:03_ERPGOLD_Product/MENU_TREE.md].
- Düğmeye tıklanınca ekran çalışma alanında sekme olarak (
Program.DataGridList.Show(Of …)(MainTabControl)) ya da ayrı pencere olarak açılır [SOURCE_CODE:FrmMainForm.vb:60-530]. - Şube seçici değiştirilince "… Subesine Giriş Yapılacaktır. Onaylıyormusunuz ?" sorulur; evetlenirse açık sekmeler kaydedilip yeni şubeyle yeniden giriş yapılır (parola bellekten gönderilir) [SOURCE_CODE:FrmMainForm.vb:36-52] [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#2].
- Sistem Yenile (Ctrl+F5): tanım tabloları (birim, kasa, hesap, stok listeleri) belleğe yeniden yüklenir — tanım sonrası "listede yok" sorununun standart çözümü [DOCUMENT:12_Support/Playbooks/PB-039.md] [DOCUMENT:03_ERPGOLD_Product/MENU_TREE.md].
- Kısayollar: Form Aç düğmesi Cari İşlem ekranını ayrı pencerede açar (Ctrl+F yeni hesap sekmesi); Pesin Islem Ekranı hızlı satışı (HizliSatisEkrani); Pano (FrmPano); Yedek Al (Backup); Nabız (FrmNabiz); Yardım (uzak destek aracını indirip çalıştırır; internet yoksa "Lütfen internet Bağlantınızı Kontrol Ediniz...") [SOURCE_CODE:FrmMainForm.vb:643-700].
- Gizli düğmeler:
Id=1kullanıcı Shift+D ile Tanımlamalar ▸ Sistem ▸ Devir düğmesini görünür yapar; Alt+Shift+F7 (CapsLock açık, NumLock kapalıyken) geliştirici ayrıntı grubunu açar [SOURCE_CODE:FrmMainForm.vb:705-716] [SCREEN:SCR-FRMDEVIR]. - Sürüm kontrolü: "Mevcut Sürümünüz Güncel." mesajı güncelleme kontrolünden gelir [DOCUMENT:06_Workflows/WF-EXE-GUNCELLEME.md].
Alanların anlamı
| Ekran öğesi | Anlamı |
|---|---|
Başlık ANA MENU - [Şube] |
Oturum şubesi (LoginInformation.Sube.Kodu) |
Şube seçici (CmbSube) |
Aktif şube; değişince yeniden giriş (LoginInformation.Login) |
Resmi anahtarı (ChkResmi) |
Program.ShadowMode; açıkken çalışma alanı temizlenir, gişe/stok listeleri resmi (Muhasebe.Stoklar) kaynaktan okunur [SOURCE_CODE:FrmMainForm.vb:31-35] [SOURCE_CODE:ERPPRO/Controls/Islem Ekranı/Parakende/GiseEkrani.vb:578-590] |
Seri İşlem şeridi (RbSeriIslem) |
Yalnız resmi şubede görünür [SOURCE_CODE:FrmMainForm.vb:11] |
| Ribbon sekme/grup/düğme | MENU_TREE — görünürlük yetki grubundan (Permission menü bölümü) |
| Çalışma alanı sekmeleri | Açık ekranlar; şube değişiminde Screen.Save/Init ile korunur |
Hesaplama / doğrulama mantığı
- Bu Raporu Almak için İzniniz Yok. — rapor menüsünde yetki kontrolü [SOURCE_CODE:FrmMainForm.vb:363] (rapor düğmeleri veritabanındaki
AifaDev.RibbonPagetanımından gelir) [DOCUMENT:03_ERPGOLD_Product/MENU_TREE.md]. - Lisans:
AIO.Lisans.IsLicensed = Expiredise şerit kapalı, lisans penceresi açılır [SOURCE_CODE:FrmMainForm.vb:13-17] [DOCUMENT:09_CodeArchitecture/Security/SEC-AUTHN.md#7.5]. - Aynı türden pencere zaten açıksa öne getirilir (
FindOpenForm) [SOURCE_CODE:FrmMainForm.vb:538-548]. - Şube değişiminde parola bellekteki kopyadan gönderilir, kullanıcıya sorulmaz (SEC-AUTHN R2).
Stok / bakiye / rapor etkisi
Defter etkisi yok — kabuk ekranı; Cari.Islemler'e yazmaz. Kod içindeki SELECT'ler (stok listeleri, personel tanım tabloları) yalnız görüntüleme içindir.
Sık yapılan kullanıcı hataları
- Bazı işlem ekranları menüde görünmüyor — yetki grubu [DOCUMENT:12_Support/KnownIssues/H-012.md] [DOCUMENT:12_Support/Playbooks/PB-041.md].
- Aifa Developer Studio sekmesi görünmüyor [DOCUMENT:12_Support/KnownIssues/H-019.md].
- Tanımladım ama listede yok — Ctrl+F5 Sistem Yenile [DOCUMENT:12_Support/Playbooks/PB-039.md].
- Program her açılışta lisans istiyor / şerit kapalı [DOCUMENT:12_Support/KnownIssues/H-014.md] [DOCUMENT:12_Support/Playbooks/PB-008.md].
- Yanlış şubede işlem yapıldı — şube seçici / işlem şubesi oturum şubesidir [BUSINESS_RULE:BR-KASA-006].
- Program sürümü güncellenmek isteniyor [DOCUMENT:12_Support/KnownIssues/H-161.md] [DOCUMENT:12_Support/Playbooks/PB-012.md].
- Yedek alma [DOCUMENT:12_Support/KnownIssues/H-162.md] [DOCUMENT:12_Support/Playbooks/PB-013.md].
İlgili ticket temaları
- PRB-LISANS-000, PRB-GUNCELLEME-000, PRB-TANIMLAMA-000 (yetki); zincirler SYM-LISANS, SYM-GUNCELLEME.
- Playbook'lar: PB-041, PB-039, PB-012.
Müşteri varyasyonları
- Rapor sekmesi/düğmeleri veritabanından (
AifaDev.RibbonPage/Group/Item) geldiği için müşteriye göre farklıdır [DOCUMENT:03_ERPGOLD_Product/MENU_TREE.md]. - Personel/organizasyon menüleri her kurulumda kullanılmaz (
BarButtonItem65içinde yorumlanmış test kodu bırakılmıştır) [SOURCE_CODE:FrmMainForm.vb:566-631].
Kim kullanır? Nereden açılır?
- Kod içinden açan sınıflar:
LoginInformation,Program
Yaşam döngüsü kanıtı
ACTIVE_CRITICAL — çağıran sınıf: LoginInformation, Program
Kullanıcı olayları
| Olay | Metot | Dosya:satır |
|---|---|---|
Me.Load |
FormInit |
FrmMainForm.vb:8 |
CmbSube.EditValueChanged |
CmbSubeChanged |
FrmMainForm.vb:36 |
RibbonControl.ItemClick |
MenuClick |
FrmMainForm.vb:54 |
Me.ItemClick |
onMenuSelect |
FrmMainForm.vb:60 |
Me.FormClosed |
FormClose |
FrmMainForm.vb:531 |
BarButtonItem62.ItemClick |
BarButtonItem62_ItemClick |
FrmMainForm.vb:553 |
BarButtonItem65.ItemClick |
BarButtonItem65_ItemClick |
FrmMainForm.vb:566 |
BarButtonItem98.ItemClick |
BarButtonItem98_ItemClick |
FrmMainForm.vb:633 |
BarButtonItem99.ItemClick |
BarButtonItem99_ItemClick |
FrmMainForm.vb:638 |
BtnFormAc.ItemClick |
BtnFormAc_ItemClick |
FrmMainForm.vb:643 |
BtnPesinIslemEkranı.ItemClick |
BtnPesinIslemEkranı_ItemClick |
FrmMainForm.vb:655 |
ChkResmi.CheckedChanged |
TGTrade_CheckedChanged |
FrmMainForm.vb:660 |
BtnPano.ItemClick |
BtnPano_ItemClick |
FrmMainForm.vb:664 |
BtnZiyetIscilik.ItemClick |
BarButtonItem113_ItemClick |
FrmMainForm.vb:668 |
BarButtonItem113.ItemClick |
BarButtonItem113_ItemClick_1 |
FrmMainForm.vb:672 |
BItmNabiz.ItemClick |
BarButtonItem14_ItemClick |
FrmMainForm.vb:680 |
BtnYedekAl.ItemClick |
BtnYedekAl_ItemClick |
FrmMainForm.vb:684 |
BtnYardim.ItemClick, BtnYardim.ItemClick |
ShowHelp |
FrmMainForm.vb:689 |
Me.KeyDown |
FrmMainForm_KeyDown |
FrmMainForm.vb:705 |
Okuduğu / yazdığı tablolar (kod içi SQL, statik)
| Tablo | Fiiller |
|---|---|
Dov.GetMadenStoklari ⚠︎ DB'de yok |
SELECT |
Dov.GetNakitStoklari ⚠︎ DB'de yok |
SELECT |
Personel.CikisNedenleri |
SELECT |
Personel.IzinListesi ⚠︎ DB'de yok |
SELECT |
Personel.MeslekKodlari |
SELECT |
Personel.SSKGrup |
SELECT |
Personel.ZimmetListesi ⚠︎ DB'de yok |
SELECT |
Stok.GetCesniStoklari ⚠︎ DB'de yok |
SELECT |
stok.GetGenelStoklar ⚠︎ DB'de yok |
SELECT |
Kullandığı DAO / iş sınıfları
AIO.Organizasyon.Gorev, [AIO.Parakende.HizliSatisEkrani]
Kullanıcıya gösterilen mesajlar (doğrulama)
- Bu Raporu Almak için İzniniz Yok.
- Lütfen internet Bağlantınızı Kontrol Ediniz...
- Mevcut Sürümünüz Güncel.
Bilinen kusurlar / dikkat
- Dinamik SQL: 6 ifade — parametresiz birleştirme riski (TD-DYNAMIC-SQL).
Kaynaklar
SOURCE_CODE:ERPPRO/Form/Genel/FrmMainForm.Designer.vbSOURCE_CODE:ERPPRO/Form/Genel/FrmMainForm.vbDERIVED:KnowledgeBase/02_Screens/FrmMainForm.md(KB-v1 anlatım)DERIVED:docs/knowledge-base/screens/FrmMainForm.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).
- Menüden değil kod içinden açılıyor; kullanıcı yolu doğrulanmalı.
