Bu kılavuz PySide6 masaüstü istemcisini bir iş istasyonuna kurar ve bir Cluster ERP sunucusuna giriş yapar. desktop kurulum ekini, başlatma komutunu, giriş iletişim kutusunu ve en sık açılış hatalarını kapsar. Arka plan bilgisi masaüstü istemciye genel bakış sayfasındadır. Sunucunun kendisinin başlatılması sunucu açılışı ve uygulama fabrikası sayfasında açıklanır.
Ön koşullar¶
- Python 3.12 veya sonrası (
pyproject.toml:9). - Erişilebilir bir Cluster ERP sunucusu. İstemci adresini
api_urlayarından okur ve ayar boşsa yerel bir varsayılan kullanır (src/cluster_erp/desktop/main.py:167). - O sunucuda bir kullanıcı hesabı. İstemci bir kullanıcı adı ve parolayla giriş yapar (
src/cluster_erp/desktop/core/api_client.py:134-140).
Adımlar¶
- Paketi depo kökünden
desktopekiyle kurun.pyproject.toml:68-71içindeki yorum bu biçimi iş istasyonu için adlandırır; ek PySide6 ekler (pyproject.toml:72-74).
powershell
pip install -e .[desktop]
-
PySide6 sürümünü kendiniz seçiyorsanız 6.8.3 kullanın.
pyproject.toml:70-71içindeki yorum 6.8.3'ü Windows'ta bilinen iyi sürüm, 6.11.0'ı DLL hatasıyla başarısız olan sürüm olarak adlandırır. CI istemciyi 6.8.3'e karşı denetler (.github/workflows/ci.yml:50). -
İstemciyi başlatın. Modül çalıştırıldığında
main()çalışır (src/cluster_erp/desktop/main.py:243-244). Aynı işlevcluster-erp-desktopkonsol betiği olarak kurulur (pyproject.toml:88).
powershell
python -m cluster_erp.desktop.main
-
Giriş iletişim kutusunda Sunucu alanını denetleyin (
src/cluster_erp/desktop/i18n/tr.jsonanahtarıauth.server). Bu alan, başarıyla giriş yapılan son on adresin düzenlenebilir listesidir ve istemcinin geçerli adresiyle başlar (src/cluster_erp/desktop/widgets/login_dialog.py:108-124,src/cluster_erp/desktop/widgets/login_dialog.py:274-283). Sunucunuzun API temel adresini yazın, örneğinhttps://erp.example.com/api/v1. -
İsterseniz arayüz dilini seçin ve iletişim kutusunun alt satırından Erişilebilirlik (anahtar
accessibility.title) açın (src/cluster_erp/desktop/widgets/login_dialog.py:214-240). -
Kullanıcı adını ve parolayı girin, ardından Giriş Yap (anahtar
auth.login_button) seçin. İstemci isteği bir çalışan iş parçacığında gönderir (src/cluster_erp/desktop/widgets/login_dialog.py:287-309). Başarı durumunda sunucu adresiniserver_urlsveapi_urlayarlarına yazar ve iletişim kutusunu kapatır (src/cluster_erp/desktop/widgets/login_dialog.py:311-314). -
Sonradan başka bir sunucu gerekirse Tercihler (anahtar
settings.title) içinde Sunucu Adresi (anahtarsettings.api_url) değerini değiştirin ve istemciyi yeniden başlatın. İletişim kutusu değeri kaydeder ve değer değiştiyse yeniden başlatma ister (src/cluster_erp/desktop/widgets/preferences_dialog.py:117-133).
Sonucu doğrulayın¶
- Ana pencere bir kenar çubuğu, bir karşılama sekmesi ve bir durum çubuğuyla açılır (
src/cluster_erp/desktop/widgets/main_window.py:69-137). - Sunucu kökündeki
GET /health200 döndüğünde durum çubuğu Bağlı (anahtarapp.connected) gösterir (src/cluster_erp/desktop/widgets/status_bar.py:56-88,src/cluster_erp/desktop/core/api_client.py:326-333). Denetim her 15 saniyede bir yapılır (src/cluster_erp/desktop/widgets/status_bar.py:49-51). - Kenar çubuğu yalnızca sunucu metadata'sının bildirdiği, kullanıcının okuyabildiği ve uygulamalarını kullanabildiği bölümleri listeler (
src/cluster_erp/desktop/widgets/sidebar.py:159-240). Bkz. metadata deposu ve yabancı anahtar önbelleği.
Sorun giderme¶
| Belirti | Koddaki neden | Çözüm |
|---|---|---|
İletişim kutusu auth.login_failed metnini gösterir |
Sunucu girişe 401 yanıtı verdi (src/cluster_erp/desktop/widgets/login_dialog.py:328-329) |
Kullanıcı adını ve parolayı denetleyin. |
İletişim kutusu app.connection_error metnini bir aktarım iletisiyle gösterir |
İstek herhangi bir HTTP yanıtı gelmeden başarısız oldu; aktarım hataları için durum 0 kullanılır (src/cluster_erp/desktop/core/api_client.py:151-156, src/cluster_erp/desktop/widgets/login_dialog.py:330-333) |
Sunucu adresini ve sunucunun çalıştığını denetleyin. |
app.metadata_load_failed metnini ve yeniden deneme düğmesini içeren bir iletişim kutusu |
Girişten sonra GET /_meta başarısız oldu (src/cluster_erp/desktop/main.py:197-214) |
Yeniden denemeyi seçin. Üç başarısız denemeden sonra istemci app.metadata_load_failed_final gösterir ve 1 çıkış koduyla kapanır (src/cluster_erp/desktop/main.py:216-222). |
| Değiştirilen Sunucu Adresi etkili olmaz | Tercih yalnızca açılışta okunur (src/cluster_erp/desktop/main.py:167) |
settings.api_url_restart_required iletisinin dediği gibi istemciyi yeniden başlatın. |
| Windows'ta açılış bir Qt DLL hatasıyla başarısız olur | Koddan belirlenemedi; pyproject.toml:70-71 içindeki yorum PySide6 6.11.0'ı adlandırır |
PySide6 6.8.3 kurun. |
Bir kenar çubuğu girdisi app.section_missing metnini içeren bir sekme açar |
Sunucu o anahtar için bölüm metadata'sı göndermedi (src/cluster_erp/desktop/widgets/main_window.py:353-357) |
Sunucu sürümünü ve metadata'sını denetleyin. |
Tanıtılan terimler¶
| Terim | Kod tanımlayıcısı | Tanım | Türkçe terim | Kaynak |
|---|---|---|---|---|
| server address list | server_urls |
Başarıyla giriş yapılan son on sunucu adresini tutan ayar. | sunucu adresi listesi | src/cluster_erp/desktop/widgets/login_dialog.py:274-283 |
| sign-in dialog | LoginDialog |
Ana pencere açılmadan önce sunucu adresini ve kimlik bilgilerini toplayan kipli iletişim kutusu. | giriş iletişim kutusu | src/cluster_erp/desktop/widgets/login_dialog.py:43 |
İlgili sayfalar¶
- Masaüstü istemci
- Masaüstü istemciye genel bakış
- Diller, temalar ve erişilebilirlik
- Yerel geliştirme kurulumu
92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.