Erpnextkta

ERPNextKTA, KTA Endüstri Sistemleri için geliştirilen ERPNext/Frappe tabanlı özelleştirilmiş bir üretim, kalite ve operasyon yönetimi uygulamasıdır.

Install Erpnextkta

bench get-app https://github.com/KTA-Endustri-Sistemleri/erpnextkta

Add the Frappe Gems badge to your README

Maintain Erpnextkta? Paste this into your README:

[![Listed on Frappe Gems](https://frappegems.com/api/method/frappe_gems.seo.badge?app=KTA-Endustri-Sistemleri%2Ferpnextkta)](https://frappegems.com/gems/apps/KTA-Endustri-Sistemleri/erpnextkta)

About Erpnextkta

# 📦 ERPNEXTKTA – Custom App ERPNextKTA, KTA Endüstri Sistemleri için geliştirilen ERPNext/Frappe tabanlı özelleştirilmiş bir üretim, kalite ve operasyon yönetimi uygulamasıdır. Uygulama; iş emirleri, iş kartları, operasyon akışları, üretim planlama, kesim formları, tarama sistemleri (QR Scanner) ve şirket içi özel süreçlerin tamamını dijitalleştirmek amacıyla tasarlanmıştır. ---
👥 1) Kullanıcılar İçin
Bu bölüm, ERPNextKTA uygulamasını kullanacak son kullanıcılar için sade bir genel bakış sunar. ### 📖 Kullanım Kılavuzları - 🚀 [KTA Çalışma Kartı Kullanım Kılavuzu](docs/kta_calisma_karti_kilavuzu.html) - 📏 [KTA Kalite Yönetimi Kılavuzu](docs/kta_kalite_kilavuzu.html) ## 🎯 ERPNextKTA Nedir? ERPNextKTA, standart ERPNext işleyişine ek olarak aşağıdaki alanlarda kapsamlı geliştirmeler içerir: ### 🔧 Üretim & Operasyon Yönetimi - Gelişmiş İş Kartı (Job Card) akışı - Çoklu operatör desteği - Alt operasyon tanımlama - **Dinamik Duruş Yönetimi**: Duruşların (Planlı, Plansız, Sistem) merkezi tablodan yönetimi ve analizleri - Detaylı zaman ve adet kayıtları - Üretim saha süreçlerinde hız ve doğruluk artışı ### 🏭 Kesim & Forma Yönetimi - Müşteri gruplarına göre otomatik dosya klasörleme - Kesim formlarının ürün ve BOM'lara otomatik eşlenmesi - PDF işleme & otomatik adlandırma ### 📦 Stok & Lojistik - Gelişmiş negatif stok kuralları - Üretimden otomatik giriş/çıkış hareketleri - Üretim planlama için veri hazırlığı ### 📱 QR Scanner Entegrasyonu - Masaüstü + Mobil tarama desteği - Duplicate ve hız kontrol mekanizması - Otomatik hata yönetimi & kullanıcıya anlık geri bildirim - **Krimp & Test Masası Kontrolü**: Krimp Book (Referans Kütüphanesi) ve Test Masası Poke-Yoke sistemleri ### 🔍 Kalite Kontrol (KTA Quality) - **Krimp Book**: 1500+ kayıtlık teknik referans kütüphanesi - **Test Masası Doğrulama**: 17 maddelik otomatik Poke-Yoke kontrol listesi - **Krimp Yükseklik Parametreleri**: Terminal bazlı dinamik kısıtlamalar ### 📊 Yönetici Araçları - Özel raporlar - İç süreçlere uygun iş akışları - Kullanıcı dostu ekranlar - Dinamik yetki yönetimi (Admin Rolleri Konfigürasyonu) - **Duruş Nedenleri & Otomasyon**: Sistem duruşlarının (Zaman Aşımı vb.) ve manuel nedenlerin merkezi kontrolü
---
🧑‍💻 2) Geliştiriciler İçin
Bu bölüm, projeye katkıda bulunacak veya geliştirme ortamında çalışacak geliştiricilere yöneliktir. Tüm semantic-release, CI/CD, versiyonlama, commit standartları ve proje teknik detayları burada yer alır. --- # 📦 Semantic Release & Conventional Commit Rehberi **ERPNextKTA – Otomatik Versiyonlama, Yayın Süreci ve Commit Standartları** Bu proje, otomatik versiyonlama, otomatik tag oluşturma, otomatik CHANGELOG üretimi ve GitHub Release entegrasyonu için python-semantic-release kullanmaktadır. Buna ek olarak, commit mesajları tamamen Conventional Commits standardına göre yazılmalıdır. Bu iki yapı birlikte çalışarak: ✔ Versiyonlamayı otomatize eder ✔ Changelog'u otomatik üretir ✔ Dağıtımı standartlaştırır ✔ Kod kalitesini artırır ✔ Production ERPNext uygulaması için net bir sürüm takibi sağlar --- ## 🚀 Özellikler - Commit mesajlarına göre otomatik versiyon artırma - erpnextkta/__init__.py içindeki __version__ değerinin otomatik güncellenmesi - Otomatik Git tag (ör. v0.4.0, v1.0.0) - Otomatik CHANGELOG.md - Otomatik GitHub Release - Lokal makinede Node.js gerekmez - CI/CD (GitHub Actions) ile tam entegre - ERPNext/Frappe ile uyumlu sürüm takibi --- ## 🧩 Semantic Release Çalışma Mantığı Semantic Release commit mesajlarını analiz eder ve üç tip değişiklikten birine göre sürüm artırır: | Commit Prefix | Versiyon Türü | Semantic-release davranışı | |------------------------|-------------------------|-----------------------------------| | fix: | Patch (x.y.z → x.y.z+1) | Hata düzeltmesi | | feat: | Minor (x.y.z → x.y+1.0) | Yeni özellik | | BREAKING CHANGE: | Major (x.y.z → x+1.0.0) | Geriye dönük uyumsuz değişiklik | Commit mesajları Conventional Commits standardına uygun olmalıdır. --- ## ✔️ Versiyon Bilgisi Sürüm numarası yalnızca: ```text erpnextkta/__init__.py ``` dosyasında tutulur: ```python __version__ = "0.0.1" ``` Semantic Release bu değeri otomatik günceller. --- ## 📁 Yapılandırma (pyproject.toml) ```toml [tool.semantic_release] version_variables = ["erpnextkta/__init__.py:__version__"] commit_parser = "conventional" tag_format = "v{version}" [tool.semantic_release.remote] name = "origin" type = "github" token = { env = "GH_TOKEN" } ignore_token_for_push = false insecure = false branch = "main" ``` --- ## 🤖 GitHub Actions Pipeline .github/workflows/release.yml: ```yaml name: Semantic Release on: push: branches: - main permissions: contents: write jobs: release: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Python uses: actions/setup-python@v5 with: python-version: "3.11" - name: Install python-semantic-release run: | python -m pip install --upgrade pip pip install python-semantic-release - name: Run Semantic Release env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | semantic-release version --push --vcs-release ``` --- ## ✍️ Conventional Commit Rehberi Commit formatı: ```text (scope): BREAKING CHANGE: ``` --- ### Commit Türleri | Type | Açıklama | Semantic Release | |----------|--------------------|------------------| | feat | Yeni özellik | minor bump | | fix | Hata düzeltme | patch bump | | refactor | Yapısal değişiklik | bump yok | | perf | Performans | bump yok | | docs | Dokümantasyon | bump yok | | style | Format | bump yok | | test | Testler | bump yok | | chore | Yapılandırma | bump yok | | ci | CI/CD | bump yok | --- ### Önerilen Scope’lar - job-card - work-order - qr-scanner - doctype:<name> - client - server - api - hooks --- ### Örnek Commit Mesajları #### Patch ```text fix(work-order): incorrect status calculation when job cards paused ``` #### Minor ```text feat(job-card): add operator assignment validation ``` #### Major ```text feat(api): new time log schema BREAKING CHANGE: old time_logs format is no longer supported ``` #### Refactor ```text refactor(qr): extract scanner state logic ``` #### Docs ```text docs: update semantic release installation guide ``` --- ## 🚫 Kaçınılması Gereken Commit Mesajları - update code - fixing issues - temp - deneme - aaa - final --- ## 📦 Production Deploy - Git tag oluşturulduğunda production git pull ile yeni sürümü otomatik alır - ERPNext App Versions ekranı otomatik güncellenir - CHANGELOG.md güncel olur --- # 🛠️ Test Otomasyonu ve Kalite Kontrol (QA) ERPNextKTA projesi, kod kalitesini korumak ve regresyonu önlemek için kapsamlı bir test altyapısına sahiptir. ## 🧪 Birim Testleri (Unit Tests) Uygulamanın mantıksal doğruluğunu test etmek için Frappe'nin yerleşik test runner'ı kullanılır. ### Manuel Test Çalıştırma Spesifik bir modülü test etmek için: ```bash bench --site [site-adı] run-tests --module erpnextkta.kta_calisma_karti.doctype.calisma_karti.test_calisma_karti ``` ### VS Code Entegrasyonu `.code-workspace` dosyasındaki tanımlı görevler sayesinde: - **KTA: Run Specific Test (Local)**: Terminale girmeden doğrudan aktif testi koşturur. - **KTA: Local CI Simulation (act)**: GitHub ortamını yerelde simüle eder. --- ## 🤖 CI/CD ve Otomatik Testler Her `push` ve `Pull Request` işleminde `.github/workflows/tests.yml` akışı otomatik olarak tetiklenir. ### İşleyiş: 1. **Ortam Hazırlığı:** Ubuntu konteyner üzerinde MariaDB ve Redis servisleri ayağa kaldırılır. 2. **Bağımlılıkların Kurulumu:** ERPNext ve gerekli tüm yan uygulamalar (trtaxoffices vb.) temiz bir şekilde kurulur. 3. **Otomatik Test Koşumu:** Tüm unit testler izole bir veri tabanı üzerinde koşturulur. 4. **Sonuç Raporlama:** Başarısız testler Pull Request aşamasında bloklanır. --- ## 🎭 Yerel CI Simülasyonu (`act`) GitHub sunucularına kod göndermeden önce tüm test sürecini kendi makinenizde (Docker üzerinde) deneyebilirsiniz. ### Ön Gereksinimler: - Docker yüklü olmalıdır. - `act` aracı sistemde kurulu olmalıdır. ### Çalıştırma: ```bash act -j tests ``` *Not: Yerel Redis/MariaDB portlarıyla çakışma yaşanmaması için workflow dosyasında port remapping (33066, 11001, 13001) uygulanmıştır.* --- ## 🎉 Sonuç Bu yapı sayesinde: - Manuel versiyon artırma yok - Manuel tag yok - Otomatik changelog - Standart commit formatı - Daha güvenli deployment - ERPNext/Frappe ile tam uyumlu bir geliştirme süreci

Related Manufacturing apps for Frappe & ERPNext

  • Frappe Manager — The production platform for Frappe/ERPNext. Automatic TLS, versioned migrations, worker orchestration, isolated benches. Everything from a single CLI.
  • Process Manufacturing — PROCESS MANUFACTURING
  • Textile — Textile App for ERPNext
  • Aumms — AuMMS ( Aurum Manufacturing Management System ) is a Frappe App to facilitate the Operations in Gold Manufacturing
  • Next Pms
  • Frappe Gmail Thread — Gmail thread tracking app
  • Frappe Search — Frappe Search enables powerful, global search functionality across your custom Frappe apps.
  • Erpnext Mrp — MRP Tools for ERPNext