163 lines
8.2 KiB
Markdown
163 lines
8.2 KiB
Markdown
# Tanımlamalar (`App.Prc.Definitions`)
|
||
|
||
> Bu dosya ilk deploy'da otomatik açıldı. "Ek — Ekran envanteri" bölümü wizard dosyalarından üretilir, elle düzenlenmez.
|
||
|
||
## 1. Amaç ve kapsam
|
||
|
||
Satınalma belgelerinde kullanılacak ödeme koşulu, ödeme yöntemi, teslimat koşulu (Incoterm) ve teslim yöntemi tanımları. Kullanıcılar satınalma ve muhasebe personelidir. Satınalma talebi, teklif, sipariş ve fatura belgeleri bu modülün kapsamında değildir; bu ekranlar onların lookup kaynağıdır.
|
||
|
||
Tedarikçi kartı (eski `App.Prc.Supplier`) satış ve satınalmanın ortak kartı olarak **Kontaklar** adıyla Yönetim › Tanımlamalar'a taşındı; ayrıntı [AdministrationDefinitions.md](AdministrationDefinitions.md). Kontak kartının Satış ve Satınalma sekmeleri bu modülün tanımlarını lookup olarak kullanır.
|
||
|
||
## 2. Analiz ve kararlar
|
||
|
||
- Modül kodu `Prc`, tablo öneki `Prc_T_`; ekranlar Satınalma › Tanımlamalar altında.
|
||
- Kart, etiket, ilgili kişi ve banka hesabı ekranları Satış tarafı da kullanacağı için `Adm` modülüne (`Adm_T_Contact*`, `App.Definitions.Contact*`) taşındı; bu modülde yalnızca satınalma koşulu tanımları kaldı.
|
||
|
||
## 3. Menü ve ekranlar
|
||
|
||
Satınalma (`App.Prc`) › Tanımlamalar (`App.Prc.Definitions`):
|
||
|
||
| Ekran | Kod | Not |
|
||
| --- | --- | --- |
|
||
| Ödeme Koşulları | `App.Prc.PaymentTerm` | tanım, demo veri |
|
||
| Ödeme Yöntemleri | `App.Prc.PaymentMethod` | tanım, demo veri |
|
||
| Teslimat Koşulları | `App.Prc.Incoterm` | tanım, demo veri |
|
||
| Teslim Yöntemleri | `App.Prc.DeliveryMethod` | tanım, demo veri |
|
||
|
||
## 4. Veri modeli
|
||
|
||
Tüm tablolar kiracı (`TenantId`) + tam audit + soft delete taşır.
|
||
|
||
- `Prc_T_PaymentTerm` (Name, DueDays, Description, IsActive)
|
||
- `Prc_T_PaymentMethod` (Name, Journal, IsActive)
|
||
- `Prc_T_Incoterm` (Code, Name, IsActive)
|
||
- `Prc_T_DeliveryMethod` (Name, IsActive)
|
||
|
||
## 5. İş kuralları ve hesaplar
|
||
|
||
- Tanım lookup'ları yalnızca `IsActive = 1` ve silinmemiş kayıtları listeler; kullanılan tanım silinmek yerine pasife alınır.
|
||
- Ödeme koşulu `DueDays` vade gününü tutar; ay sonu kuralları açıklamada yazılıdır, otomatik vade hesabı yoktur.
|
||
|
||
## 6. Yetki ve görünürlük
|
||
|
||
Yetki ağacı: `App.Prc` › `App.Prc.Definitions` › her ekran (+ Create/Update/Delete/Export/Import/Note). Tüm ekranlar kiracı kapsamlıdır, şube filtresi yoktur. Widget'lar: her ekranda Toplam · Aktif · Pasif.
|
||
|
||
## 7. Entegrasyonlar
|
||
|
||
Yok. Tanımlar Yönetim › Tanımlamalar › Kontaklar'ın Satış ve Satınalma sekmelerinde (`App.Definitions.ContactSales`, `App.Definitions.ContactPurchasing`) seçilir.
|
||
|
||
## 8. Akış örneği
|
||
|
||
1. Satınalma › Tanımlamalar › Ödeme Koşulları'nda "30 Gün" aktif durur.
|
||
2. Yönetim › Tanımlamalar › Kontaklar'da "Acme Corporation" açılır; Satınalma sekmesinde Düzenle ile Ödeme Koşulu = 30 Gün seçilip kaydedilir.
|
||
|
||
## 9. Sık sorulanlar
|
||
|
||
- **Tedarikçiler ekranı nerede?** Yönetim › Tanımlamalar › Kontaklar; müşteri ve tedarikçi aynı karttadır.
|
||
- **Pasife alınan tanım kartta görünüyor mu?** Var olan kayıtta değer durur, yeni seçimde listelenmez.
|
||
|
||
## 10. Dosyalar ve geri alma
|
||
|
||
- Tablolar: `sql/object/Prc_T_PaymentTerm.sql`, `Prc_T_PaymentMethod.sql`, `Prc_T_Incoterm.sql`, `Prc_T_DeliveryMethod.sql`.
|
||
- Wizard'lar: `PaymentTerm.json`, `PaymentMethod.json`, `Incoterm.json`, `DeliveryMethod.json`.
|
||
- Demo veri: `data/App.Prc.{PaymentTerm,PaymentMethod,Incoterm,DeliveryMethod}.json`.
|
||
- Geri alma: Kontak sekmeleri bu tanımlara bağlı olduğu için önce kontak tarafındaki seçimler temizlenir; ekranlar `delete_wizard` ile silinir, tablolar yalnızca açık onayla `dropTables: true` ile düşürülür.
|
||
|
||
<!-- module-doc:auto:begin -->
|
||
## Ek — Ekran envanteri (otomatik)
|
||
|
||
> Wizard dosyalarından üretilir; deploy, silme, tasarımcı kaydı ve import'ta yenilenir. Elle düzenleme bir sonraki yenilemede kaybolur.
|
||
|
||
### Ödeme Koşulları — `App.Prc.PaymentTerm`
|
||
|
||
| Özellik | Değer |
|
||
| --- | --- |
|
||
| Wizard | `wizard/PaymentTerm.json` |
|
||
| Yol | Liste (Wizard) |
|
||
| Menü | `App.Prc.Definitions` › `App.Prc.PaymentTerm` (sıra 1) |
|
||
| Yetki | `App.Prc.PaymentTerm` + `.Create`, `.Update`, `.Delete`, `.Export`, `.Import`, `.Note` |
|
||
| Açıklama | Ödeme Koşulları — tedarikçi kartlarında ve satınalma belgelerinde kullanılan vade tanımları (peşin, 15/30/45 gün, ay sonu, peşinat + bakiye). |
|
||
| Geliştirme talebi | Satınalma Modülü |
|
||
| Kaynak | `Prc_T_PaymentTerm` · filtre `"IsDeleted" = 'false'` |
|
||
| Görünümler | Grid, Card, Pivot, Chart (açılış grid) |
|
||
| Düzenleme | ekle ✓ · düzenle ✓ · sil ✓ · popup |
|
||
| Kapsam | Kiracı |
|
||
| Widget'lar | `App.Widget.Total`, `App.Widget.Active`, `App.Widget.Passive` |
|
||
| Veri aynası | `data/App.Prc.PaymentTerm.json` |
|
||
|
||
| Alan | Başlık | Editör | Zorunlu | Formda | Kaynak |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| `Name` | Ad | dxTextBox | ✓ | ✓ | |
|
||
| `DueDays` | Vade (Gün) | dxNumberBox | | ✓ | |
|
||
| `IsActive` | Aktif | dxCheckBox | ✓ | ✓ | |
|
||
| `Description` | Açıklama | dxTextArea | | ✓ | |
|
||
|
||
### Ödeme Yöntemleri — `App.Prc.PaymentMethod`
|
||
|
||
| Özellik | Değer |
|
||
| --- | --- |
|
||
| Wizard | `wizard/PaymentMethod.json` |
|
||
| Yol | Liste (Wizard) |
|
||
| Menü | `App.Prc.Definitions` › `App.Prc.PaymentMethod` (sıra 2) |
|
||
| Yetki | `App.Prc.PaymentMethod` + `.Create`, `.Update`, `.Delete`, `.Export`, `.Import`, `.Note` |
|
||
| Açıklama | Ödeme Yöntemleri — tedarikçiye ödemenin nasıl yapılacağı (banka havalesi, çek, nakit kasa, NACHA). |
|
||
| Geliştirme talebi | Satınalma Modülü |
|
||
| Kaynak | `Prc_T_PaymentMethod` · filtre `"IsDeleted" = 'false'` |
|
||
| Görünümler | Grid, Card, Pivot, Chart (açılış grid) |
|
||
| Düzenleme | ekle ✓ · düzenle ✓ · sil ✓ · popup |
|
||
| Kapsam | Kiracı |
|
||
| Widget'lar | `App.Widget.Total`, `App.Widget.Active`, `App.Widget.Passive` |
|
||
| Veri aynası | `data/App.Prc.PaymentMethod.json` |
|
||
|
||
| Alan | Başlık | Editör | Zorunlu | Formda | Kaynak |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| `Name` | Ad | dxTextBox | ✓ | ✓ | |
|
||
| `Journal` | Yevmiye | dxTextBox | | ✓ | |
|
||
| `IsActive` | Aktif | dxCheckBox | ✓ | ✓ | |
|
||
|
||
### Teslimat Koşulları — `App.Prc.Incoterm`
|
||
|
||
| Özellik | Değer |
|
||
| --- | --- |
|
||
| Wizard | `wizard/Incoterm.json` |
|
||
| Yol | Liste (Wizard) |
|
||
| Menü | `App.Prc.Definitions` › `App.Prc.Incoterm` (sıra 3) |
|
||
| Yetki | `App.Prc.Incoterm` + `.Create`, `.Update`, `.Delete`, `.Export`, `.Import`, `.Note` |
|
||
| Açıklama | Teslimat Koşulları — taşıma, sigorta ve riskin kimde olduğunu belirleyen uluslararası teslim şekilleri (EXW, FCA, FAS, FOB, CFR, CIF, CPT, CIP). |
|
||
| Geliştirme talebi | Satınalma Modülü |
|
||
| Kaynak | `Prc_T_Incoterm` · filtre `"IsDeleted" = 'false'` |
|
||
| Görünümler | Grid, Card, Pivot, Chart (açılış grid) |
|
||
| Düzenleme | ekle ✓ · düzenle ✓ · sil ✓ · popup |
|
||
| Kapsam | Kiracı |
|
||
| Widget'lar | `App.Widget.Total`, `App.Widget.Active`, `App.Widget.Passive` |
|
||
| Veri aynası | `data/App.Prc.Incoterm.json` |
|
||
|
||
| Alan | Başlık | Editör | Zorunlu | Formda | Kaynak |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| `Code` | Kod | dxTextBox | ✓ | ✓ | |
|
||
| `Name` | Ad | dxTextBox | ✓ | ✓ | |
|
||
| `IsActive` | Aktif | dxCheckBox | ✓ | ✓ | |
|
||
|
||
### Teslim Yöntemleri — `App.Prc.DeliveryMethod`
|
||
|
||
| Özellik | Değer |
|
||
| --- | --- |
|
||
| Wizard | `wizard/DeliveryMethod.json` |
|
||
| Yol | Liste (Wizard) |
|
||
| Menü | `App.Prc.Definitions` › `App.Prc.DeliveryMethod` (sıra 4) |
|
||
| Yetki | `App.Prc.DeliveryMethod` + `.Create`, `.Update`, `.Delete`, `.Export`, `.Import`, `.Note` |
|
||
| Açıklama | Teslim Yöntemleri — malın nasıl teslim edileceği (yerel teslimat, kargo, kurye). |
|
||
| Geliştirme talebi | Satınalma Modülü |
|
||
| Kaynak | `Prc_T_DeliveryMethod` · filtre `"IsDeleted" = 'false'` |
|
||
| Görünümler | Grid, Card, Pivot, Chart (açılış grid) |
|
||
| Düzenleme | ekle ✓ · düzenle ✓ · sil ✓ · popup |
|
||
| Kapsam | Kiracı |
|
||
| Widget'lar | `App.Widget.Total`, `App.Widget.Active`, `App.Widget.Passive` |
|
||
| Veri aynası | `data/App.Prc.DeliveryMethod.json` |
|
||
|
||
| Alan | Başlık | Editör | Zorunlu | Formda | Kaynak |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| `Name` | Ad | dxTextBox | ✓ | ✓ | |
|
||
| `IsActive` | Aktif | dxCheckBox | ✓ | ✓ | |
|
||
|
||
<!-- module-doc:auto:end -->
|