Satınalma (App.Prc)
Menünün altındaki her dal bu dosyada bir bölümdür (module-doc:section); dosya ve bölümler ilk deploy'da otomatik açılır. module-doc:todo işaretli alt bölümleri modülü üreten kişi ya da AI doldurur (lowcode.instructions.md §0.13); MCP ile üretimde talep bu bölümler doldurulmadan Testing'e alınamaz. "Ek — Ekran envanteri" bölümü wizard dosyalarından üretilir, elle düzenlenmez.
Tanımlamalar (App.Prc.Definitions)
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ı Administration › Tanımlamalar. 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
- Satınalma › Tanımlamalar › Ödeme Koşulları'nda "30 Gün" aktif durur.
- 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:
Prc_PaymentTerm.json, Prc_PaymentMethod.json, Prc_Incoterm.json, Prc_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.
Malzeme Talepleri (App.Prc.MaterialRequests)
1. Amaç ve kapsam
Departmanların iç ve dış ihtiyaç duydukları malzemeleri satınalmaya iletmesi. Talep eden personel talebi ve satırlarını girer, onaya gönderir; talep önce talep edenin departman onaycısına, sonra satınalmaya düşer. Onaylanan talep Tüm Talepler listesinde satınalma ekibinin işine düşer; teklif toplama süreci buradan başlar. Teklif, sipariş, transfer ve stok miktarı bu dalın kapsamında değildir.
2. Analiz ve kararlar
- Wizard List ekranları + menüsüz satır alt formu + Grid Workflow. Taleplerim ve iki onay listesi aynı tabloyu (
Prc_T_MaterialRequest) filtreyle gösterir; Tüm Talepler başlık × kalem görünümünden (Prc_V_MaterialRequestLine) okur, her kalem bir satırdır.
- Belge no numaratörden:
MaterialRequest (MT-YYYY-00001, yıllık sıfırlanır). Şirket alanı açılmadı (kiracı kapsamı).
- Departman onaycısı:
Adm_T_Approver'da Onay Yeri = Satınalma (Purchase) ve talebin departmanı. Satınalma onaycısı Onaycılar'da tanımlanmaz: Satınalma Onayı Bekleyenler ekranında karar verebilen, yani App.Prc.MaterialRequestPurchaseApproval.Update yetkisi doğrudan ya da rolüyle verilmiş aktif kullanıcılardır (satınalma ekibinin rolüne bu yetki verilir). Herhangi bir onaycının onayı yeterli.
- Taslak aşaması: kayıt Taslak açılır; akış platformun Onaya Gönder işlemiyle başlar (
WorkflowDto.ApprovalIsManualStart: true — yoksa yeni kayıt akışı kendiliğinden başlatır ve satır girilemez).
- Görseldeki "Kendi Depomda" ve "Tüm Depolar" stok kolonları üretilmedi: uygulamada stok miktarı/hareket tablosu yok; stok modülü gelince ayrı talep.
- Karşılama Şekli: Satınalma / Depodan Transfer.
- İş akışı kolonları tablo tasarımcısının Workflow şablonundaki dörtlüdür:
ApprovalUserName nvarchar(256) (onaycı kullanıcı adları), ApprovalStatus nvarchar(50) (bulunulan düğümün başlığı), ApprovalDate datetime, ApprovalDescription nvarchar(200); dört ekranın WorkflowDto'su bunlara bağlıdır. Departman ve satınalma kararları ayrı kolonda tutulmaz; her karar (karar veren, açıklama, red nedeni) iş akışı notlarına yazılır.
- Onay ve red bilgileri popup düzenleme formunda yer almaz (iş akışı yazar); listede kolon olarak görünür.
- Red nedeni ayrı kolonda tutulmaz: onay düğümleri red sırasında Red Nedenleri listesinden (
Prc_T_RejectReason, zorunlu) seçim ister; seçilen neden ve not ApprovalDescription'a ve iş akışı notuna yazılır.
- Satır tablosu
Prc_T_MaterialRequestItem adıyla açıldı (birim kolonu Adm_T_Uom.Id ile aynı tipte, nvarchar). İlk açılan Prc_T_MaterialRequestLine scripti (UomId uniqueidentifier) kullanılmıyor.
- Talebin durumu yalnız iş akışından gelir:
ApprovalStatus boş (taslak) › Departman Onayı › Satınalma Onayı › Onaylandı ya da Reddedildi. Ayrı Status kolonu yoktur; karşılama satır durumundan (Bekliyor / Tamamlandı / İptal) izlenir.
- Planlama aşaması kaldırıldı (Planlama Bekleyenler listesi, satırdaki Planlandı durumu ve Planlanacak Miktar).
3. Menü ve ekranlar
Satınalma (App.Prc) › Malzeme Talepleri (App.Prc.MaterialRequests):
| Ekran |
Kod |
Filtre / not |
| Taleplerim |
App.Prc.MyMaterialRequest |
talep eden = oturumdaki kullanıcı; ekle/sil açık, akış |
| Departman Onayı Bekleyenler |
App.Prc.MaterialRequestDeptApproval |
ApprovalStatus = Departman Onayı; yalnız kendine düşenler |
| Satınalma Onayı Bekleyenler |
App.Prc.MaterialRequestPurchaseApproval |
ApprovalStatus = Satınalma Onayı; yalnız kendine düşenler |
| Tüm Talepler |
App.Prc.MaterialRequest |
filtresiz, kalem kalem; ekle/sil kapalı, yalnız kalemin sorumlusu ve durumu düzenlenir, akış yok |
Talep Satırları (App.Prc.MaterialRequestLine) menüsüz alt formdur; Taleplerim ve iki onay listesinde sekmedir (Tüm Talepler kalemleri kolon olarak gösterir). Red Nedenleri (App.Prc.RejectReason) Satınalma › Tanımlamalar altındadır (bkz. Tanımlamalar).
4. Veri modeli
Tüm tablolar kiracı + tam audit + soft delete taşır.
Prc_T_MaterialRequest: RequestNo, Priority (0–3), RequesterUserId, DepartmentId, WarehouseId, LocationId, RequestDate, Description, ApprovalUserName, ApprovalStatus, ApprovalDate, ApprovalDescription (iş akışı), DeptApproverUserNames / PurchaseApproverUserNames (| ayrılmış kullanıcı adları).
Prc_T_MaterialRequestItem: MaterialRequestId (FK, cascade), ProductId, Quantity, UomId (nvarchar, Adm_T_Uom), FulfillmentMethod (Purchase / Transfer), DueDate, RequestReason, DeliveredQuantity, PurchaseResponsibleUserId, LineStatus (Waiting / Done / Cancelled).
Prc_T_RejectReason: Name, SortOrder, IsActive.
- Görünüm
Prc_V_MaterialRequestLine: talep başlığı LEFT JOIN silinmemiş kalemler; Id kalemin Id'si (kalemi olmayan talepte talebin Id'si), MaterialRequestId talep. Tüm Talepler'in kaynağıdır.
- Prosedür
Prc_P_MaterialRequestAfterSave(@Id).
5. İş kuralları ve hesaplar
Prc_P_MaterialRequestAfterSave talep kaydı/güncellemesi sonrasında çalışır ve onaycı kullanıcı listelerini (DeptApproverUserNames, PurchaseApproverUserNames) Onaycılar'dan yeniden yazar. Onaycılar sonradan değişirse talep yeniden kaydedilene kadar liste eski kalır. İki liste formda ve listede gizlidir; iş akışı onaycıyı bu alanlardan okur (@DeptApproverUserNames, @PurchaseApproverUserNames).
- Onaya gönderilmiş talebe satır eklenemez ve satır silinemez (alt form Insert/Delete Before komutu). Onay sürecindeki ya da onaylanmış talep silinemez; reddedilen talep silinebilir.
- Ürün listesi yalnız aktif ve satın alınabilir ürünleri gösterir; birim ürünün satınalma biriminden (yoksa biriminden) kopyalanır, salt okunurdur.
- Depo değişince konum temizlenir; konum listesi depoya göre süzülür. Talep eden değişince departmanı kullanıcı kartından gelir; yeni kayıtta departman oturumdaki kullanıcının departmanıdır.
- Tüm Talepler'de düzenleme
UpdateCommand ile yalnız Prc_T_MaterialRequestItem'ın PurchaseResponsibleUserId ve LineStatus kolonlarını yazar; başlık alanları salt okunurdur. Kartlar kalemi değil talebi sayar (tablodan okur).
- Onaycı listesi boşsa akış o adımda hata verir: Onaycılar'a ilgili departman için Satınalma satırı tanımlanmalı ve en az bir kullanıcıya (ya da rolüne) Satınalma Onayı Bekleyenler güncelleme yetkisi verilmelidir.
6. Yetki ve görünürlük
Yetki ağacı: App.Prc › App.Prc.MaterialRequests › her liste (+ Create/Update/Delete/Export/Import/Note); alt form App.Prc.MaterialRequestLine listenin altında. Talep edenlere Taleplerim (+Create, +Update), onaycılara ilgili onay listesi (+Update), satınalma ekibine Tüm Talepler verilir; satır alt formunun yetkisi de role verilmelidir. Onay listeleri yalnız kullanıcının onayına düşen kayıtları gösterir. Kiracı kapsamlı, şube filtresi yok.
7. Entegrasyonlar
Yönetim › Tanımlamalar › Onaycılar (onay yeri Satınalma); Yönetim › Roller (Satınalma Onayı Bekleyenler yetkisi); Envanter › Tanımlamalar › Ürünler, Depolar, Konumlar; İK departmanları; Yönetim › Tanımlamalar › Diziler (MaterialRequest). Akış e-posta bildirimi platformun iş akışı altyapısındadır. Teklif/sipariş modülüyle entegrasyon yok.
8. Akış örneği
- Onaycılar'da BT departmanı için Satınalma yerinde Ayşe tanımlıdır; Mehmet'in rolünde Satınalma Onayı Bekleyenler güncelleme yetkisi vardır.
- BT'den Ali Taleplerim'de yeni talep açar (MT-2026-00001), depo/konum seçer, Talep Satırları'na 10 adet ürün, termin ve neden girer; Onaya Gönder der.
- Ayşe Departman Onayı Bekleyenler'de talebi onaylar; talep Satınalma Onayı Bekleyenler'e geçer.
- Mehmet onaylar; talep Onaylandı olur, Ali'ye bilgi gider.
- Satınalma Tüm Talepler'de satıra sorumluyu atar ve satırı Tamamlandı yapar.
9. Sık sorulanlar
- Talebim onay listesinde görünmüyor? Onaycılar'da talebin departmanı için aktif Satınalma satırı olmalı; satınalma adımı için en az bir aktif kullanıcının (doğrudan ya da rolüyle) Satınalma Onayı Bekleyenler güncelleme yetkisi olmalıdır. Onaycılar ya da yetkiler talep açıldıktan sonra değiştiyse talebi bir kez kaydedin.
- Onaya gönderdikten sonra satır ekleyebilir miyim? Hayır; talep reddedilirse ya da akış başa dönerse yeniden düzenlenir.
- Kendi Depomda / Tüm Depolar miktarları nerede? Stok modülü geldiğinde eklenecek.
- Red nedeni nereden seçilir? Reddet düğmesinin açtığı karar penceresinde, Satınalma › Tanımlamalar › Red Nedenleri listesinden; neden ve not Onay Açıklaması kolonunda görünür.
10. Dosyalar ve geri alma
- Tablolar:
sql/object/Prc_T_MaterialRequest.sql, Prc_T_MaterialRequestItem.sql, Prc_T_RejectReason.sql (+ postgres eşleri); kullanılmayan Prc_T_MaterialRequestLine.sql.
- Görünüm:
sql/object/Prc_V_MaterialRequestLine.sql (+ postgres).
- Prosedür:
sql/object/Prc_P_MaterialRequestAfterSave.sql (+ postgres).
- Wizard'lar:
Prc_MaterialRequestLine.json, Prc_MyMaterialRequest.json, Prc_MaterialRequestDeptApproval.json, Prc_MaterialRequestPurchaseApproval.json, Prc_MaterialRequest.json, Prc_RejectReason.json; güncellenen Adm_Approver.json.
- Numaratör:
App.Definitions.Sequence › MaterialRequest.
- Geri alma: Wizard Manager'da talep bazlı silme (alt form en son değil, önce listeler); tablolar yalnız açık onayla düşürülür.
Siparişler (App.Prc.Orders)
1. Amaç ve kapsam
Satınalma ekibinin onaylanmış malzeme taleplerinden tedarikçilere teklif talebi (RFQ) açması, gelen teklifi işlemesi, teklifi satınalma siparişine çevirmesi ve tedarikçiyle çerçeve sözleşme (kapsamlı sipariş / ihale) yönetmesi. Kullanıcılar satınalma personeli ve alıcılardır. Mal kabul (makbuz), tedarikçi faturası, alınan/faturalanan miktar takibi ve analitik dağılım kapsam dışıdır.
2. Analiz ve kararlar
- Teklif talebi ve satınalma siparişi tek belgedir (
Prc_T_PurchaseOrder); numara aşamalar boyunca korunur. Durum: Draft (Teklif Talebi) › Sent (Gönderildi) › Purchase (Satınalma Siparişi) / Cancelled.
- Numaratörler:
PurchaseOrder1 (P00001), PurchaseAgreement1 (BO00001).
- Firma kolonu açılmadı (kiracı kapsamı). Bakım Talebi, Mali Durum, Analitik Dağılım, Alınan/Kalan/Faturalanan, Faturalama Durumu ve Fatura Yükle kullanıcı kararıyla kapsam dışı.
- Vergi kalemde tek oran (%); ürünün
PurchaseTaxRate'inden gelir.
- Platformda buton yordam çağıramadığı için durum işlemleri formdaki İşlem alanıyla (
PendingAction) yapılır; kayıtta çalışır ve alan temizlenir. "Talepten Aktar" da formdaki Malzeme Talebi alanı + kaydet ile çalışır.
- Gönderim: tedarikçinin kontak e-postasına platform bildirim kuyruğu (
Adm_T_Notification, kanal Mail) üzerinden; kalemler e-posta gövdesinde tablo olarak gider (kuyruk ek dosya taşımaz).
- Talep ilişkisi kalem düzeyinde (
MaterialRequestItemId); aktarım kopyalamadır, talep değişmez; iptal olmayan başka belgede yer alan kalem tekrar aktarılmaz.
- Sözleşme seçilen boş teklif, sözleşmenin kalan (sipariş edilmemiş) miktarlarıyla dolar.
- Widget'lar: OTD % tüm zamanlar üzerinden; "Sipariş Verilecek Günler" kartı üretilmedi (iki sağlayıcıda ortak tarih farkı yok). Demo veri girilmedi.
3. Menü ve ekranlar
Satınalma (App.Prc) › Siparişler (App.Prc.Orders):
| Ekran |
Kod |
Not |
| Sözleşmeler |
App.Prc.PurchaseAgreement |
sekme: Ürünler; satırda Yeni Teklif (Teklif Talepleri'ni açar) |
| Teklif Talepleri |
App.Prc.PurchaseRfq |
tüm durumlar; sekmeler Ürünler, Tedarikçi Teklifi, Diğer Bilgiler, Teklifler |
| Satınalma Siparişleri |
App.Prc.PurchaseOrder |
Status = Purchase; ekle/sil kapalı; sekmeler Ürünler, Diğer Bilgiler, Teklifler |
Menüsüz alt formlar: App.Prc.PurchaseAgreementLine, App.Prc.PurchaseOrderLine, App.Prc.PurchaseOrderQuote, App.Prc.PurchaseOrderOther, App.Prc.PurchaseOrderAlternative.
4. Veri modeli
Tüm tablolar kiracı + tam audit + soft delete.
Prc_T_PurchaseAgreement: AgreementNo, SupplierId, BuyerUserId, AgreementType (Blanket/Tender), CurrencyId, StartDate, EndDate, Reference, OperationTypeId, Terms, Status (Draft/Confirmed/Closed/Cancelled).
Prc_T_PurchaseAgreementLine: AgreementId (FK cascade), ProductId, Description, Quantity, UomId, UnitPrice.
Prc_T_PurchaseOrder: OrderNo, SupplierId, SupplierReference, AgreementId, MaterialRequestId (aktarım seçimi, kayıttan sonra boşalır), CurrencyId, OrderDeadline, ExpectedArrival, RequireConfirmation, OperationTypeId, ConfirmDate, ArrivalDate, SupplierResponse, QuoteDate, QuotedByUserId, QuoteValidUntil, BuyerUserId, SourceDocument, ProjectId, IncotermId, IncotermLocation, PaymentTermId, Terms, UntaxedAmount, TaxAmount, TotalAmount, Status, PendingAction, LastSentDate.
Prc_T_PurchaseOrderLine: PurchaseOrderId (FK cascade), ProductId, Description, Quantity, UomId, UnitPrice, TaxRate, Amount, MaterialRequestItemId.
- Görünümler:
Prc_V_PurchaseAgreementLine (OrderedQuantity), Prc_V_PurchaseOrderAlternative (Teklifler sekmesi), Prc_V_MaterialRequestImportable (aktarılabilir talepler).
- Yordamlar:
Prc_P_PurchaseOrderAfterSave, Prc_P_PurchaseOrderRecalc, Prc_P_PurchaseOrderImportRequest, Prc_P_PurchaseRfqFromAgreement, Prc_P_PurchaseOrderSetStatus, Prc_P_PurchaseOrderSend.
5. İş kuralları ve hesaplar
- Kayıt sonrası
Prc_P_PurchaseOrderAfterSave: boş ödeme/teslimat koşulu ve Incoterm konumu tedarikçinin Satınalma sekmesinden dolar (alıcı yalnız ilk kayıtta); sözleşme seçili ve kalem yoksa sözleşme kalemleri; Malzeme Talebi seçiliyse aktarım; tutarlar; İşlem.
- Tutar = Miktar × Birim Fiyat; KDV = Σ(Tutar × Oran/100); Toplam = Vergi Hariç + KDV. Kalem her eklenip/değişip/silindiğinde yeniden hesaplanır. Kaynak, kalemlerin talep numaralarıdır.
- Aktarım: talep Onaylandı; kalem Karşılama = Satınalma, Durum = Bekliyor; başka iptal olmayan belgede olmayan kalemler. Fiyat: sözleşme kalemi › tedarikçi fiyatı (
Inv_T_ProductSupplier) › 0. Aktarılacak kalem yoksa hata.
- İşlemler: Gönder (iptal dışında; kalem ve tedarikçi e-postası şart; Draft ise Sent olur, LastSentDate yazılır) · Siparişi Onayla (Draft/Sent → Purchase, ConfirmDate) · İptal · Taslak olarak ayarla (yalnız Cancelled → Draft).
- İptal edilmiş belge değiştirilemez (Taslak işlemi hariç), kalem eklenemez/silinemez. Gönderilmiş teklif ve sipariş silinemez.
- Tedarikçi Teklifi'nde yanıt Bekleniyor dışına alınınca boş teklif tarihi ve teklifi veren dolar.
- Sözleşmede bitiş tarihi başlangıçtan önce olamaz.
6. Yetki ve görünürlük
Yetki ağacı: App.Prc › App.Prc.Orders › her liste (+ Create/Update/Delete/Export/Import/Note). Alt formların yetkisi taşıyan listenin altındadır; ortak sekmeler (Ürünler, Diğer Bilgiler, Teklifler) Teklif Talepleri'nin altına bağlandı — Satınalma Siparişleri kullanıcılarına bu sekme yetkileri de verilmelidir. Kiracı kapsamlı, şube filtresi yok.
7. Entegrasyonlar
Yönetim › Tanımlamalar › Kontaklar (tedarikçi, e-posta, Satınalma sekmesi varsayılanları); Envanter (Ürünler, tedarikçi fiyatları, Operasyon Türleri); Satınalma › Tanımlamalar (Ödeme Koşulları, Teslimat Koşulları); Proje modülü (Proje); Malzeme Talepleri (aktarım); Bildirimler (Prc.RfqSent, Prc.PurchaseOrderSent; NotificationWorker kuyruğu gönderir); Diziler.
8. Akış örneği
- Ali'nin SRO00015 talebi onaylanır (2 satınalma kalemi).
- Satınalma Teklif Talepleri'nde yeni kayıt açar, tedarikçi "3K Kutu" seçer (para birimi ve koşullar dolar), Talepten Aktar'da SRO00015'i seçip kaydeder; iki kalem fiyatlarıyla gelir, Kaynak = SRO00015.
- İşlem = E-posta ile Gönder, kaydet: tedarikçiye e-posta kuyruğa alınır, durum Gönderildi.
- Tedarikçi Teklifi sekmesinde yanıt = Teklif Verildi; fiyatlar Ürünler sekmesinde güncellenir.
- İşlem = Siparişi Onayla: belge Satınalma Siparişleri'ne düşer; gerekirse İşlem = E-posta ile Gönder ile PO gönderilir. Mal gelince Varış girilir.
9. Sık sorulanlar
- Butonlar nerede? Durum işlemleri formdaki İşlem alanındadır; seçip kaydedin.
- Talep listede çıkmıyor? Talep onaylanmış olmalı ve aktarılabilir (Satınalma, Bekliyor, başka belgede olmayan) kalemi bulunmalı.
- E-posta gitmedi? Tedarikçinin kontak e-postasını ve Bildirimler ekranındaki satırı (IsSent) kontrol edin; NotificationWorker aktif olmalı.
- Sözleşme seçince kalem gelmedi? Yalnız kalemi olmayan belgeye ve kalan miktarı olan sözleşme kalemleri gelir.
10. Dosyalar ve geri alma
- Tablolar:
sql/object/Prc_T_PurchaseAgreement.sql, Prc_T_PurchaseAgreementLine.sql, Prc_T_PurchaseOrder.sql, Prc_T_PurchaseOrderLine.sql (+ postgres).
- Görünüm/yordam:
Prc_V_PurchaseAgreementLine, Prc_V_PurchaseOrderAlternative, Prc_V_MaterialRequestImportable, Prc_P_PurchaseOrder{AfterSave,Recalc,ImportRequest,SetStatus,Send}, Prc_P_PurchaseRfqFromAgreement (sql + postgres object).
- Wizard'lar:
Prc_PurchaseAgreementLine.json, Prc_PurchaseAgreement.json, Prc_PurchaseOrderLine.json, Prc_PurchaseOrderQuote.json, Prc_PurchaseOrderOther.json, Prc_PurchaseOrderAlternative.json, Prc_PurchaseRfq.json, Prc_PurchaseOrder.json.
- Veri: Diziler
PurchaseOrder1, PurchaseAgreement1; Bildirim Türleri Prc.RfqSent, Prc.PurchaseOrderSent.
- Geri alma: önce ana ekranlar (
Prc_PurchaseRfq, Prc_PurchaseOrder, Prc_PurchaseAgreement), sonra alt formlar delete_wizard ile silinir; tablolar yalnız açık onayla düşürülür.
Ek — Ekran envanteri (otomatik)
Wizard dosyalarından üretilir; deploy, silme, tasarımcı kaydı ve import'ta yenilenir. Elle düzenleme bir sonraki yenilemede kaybolur.
Tanımlamalar (App.Prc.Definitions)
Ödeme Koşulları — App.Prc.PaymentTerm
| Özellik |
Değer |
| Wizard |
wizard/Prc_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/Prc_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/Prc_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/Prc_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 |
✓ |
✓ |
|
Red Nedenleri — App.Prc.RejectReason
| Özellik |
Değer |
| Wizard |
wizard/Prc_RejectReason.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.Definitions › App.Prc.RejectReason (sıra 5) |
| Yetki |
App.Prc.RejectReason + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Red Nedenleri — satınalma taleplerinin reddedilme sebepleri (ihtiyaç yok, miktar uygun değil, yanlış ürün, bütçe uygun değil, diğer). |
| Geliştirme talebi |
Satınalma -> Malzeme Talepleri |
| Kaynak |
Prc_T_RejectReason · 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 |
| Form varsayılanları |
SortOrder=0, IsActive=true |
| Veri aynası |
data/App.Prc.RejectReason.json |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
Name |
Red Nedeni |
dxTextBox |
✓ |
✓ |
|
SortOrder |
Sıra |
dxNumberBox |
✓ |
✓ |
|
IsActive |
Aktif |
dxCheckBox |
✓ |
✓ |
|
Malzeme Talepleri (App.Prc.MaterialRequests)
Taleplerim — App.Prc.MyMaterialRequest
| Özellik |
Değer |
| Wizard |
wizard/Prc_MyMaterialRequest.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.MaterialRequests › App.Prc.MyMaterialRequest (sıra 1) |
| Yetki |
App.Prc.MyMaterialRequest + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Taleplerim — açtığınız malzeme talepleri, tüm durumlarıyla. |
| Geliştirme talebi |
Satınalma -> Malzeme Talepleri |
| Kaynak |
Prc_T_MaterialRequest · filtre "IsDeleted" = 'false' AND "RequesterUserId" = '@USERID' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✓ · düzenle ✓ · sil ✓ · popup |
| Kapsam |
Kiracı |
| Alt formlar |
App.Prc.MaterialRequestLine (Id → MaterialRequestId) |
| Widget'lar |
App.Prc.MaterialRequest.Widget.Mine, App.Prc.MaterialRequest.Widget.Pending, App.Prc.MaterialRequest.Widget.Approved, App.Prc.MaterialRequest.Widget.Rejected |
| Komutlar |
InsertAfter: Prc_P_MaterialRequestAfterSave · UpdateAfter: Prc_P_MaterialRequestAfterSave · DeleteBefore: SQL |
| Form varsayılanları |
RequestNo=MaterialRequest1, RequesterUserId=@USERID, DepartmentId=, RequestDate=@NOW, Priority=0 |
| Onay akışı |
Start 'Onaya Gönderildi' → Approval 'Departman Onayı' → Approval 'Satınalma Onayı' → End 'Onaylandı' → End 'Reddedildi' |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
RequestNo |
Talep No |
dxTextBox |
|
✓ |
|
Priority |
Öncelik (0-3) |
dxRating |
✓ |
✓ |
|
RequesterUserId |
Talep Eden |
dxSelectBox |
✓ |
✓ |
sorgu: AbpUsers · script |
DepartmentId |
Departman |
dxSelectBox |
✓ |
✓ |
sorgu: Hr_T_Department |
WarehouseId |
Depo |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Warehouse · script |
LocationId |
Konum |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Location (← WarehouseId) |
RequestDate |
Talep Tarihi |
dxDateBox |
✓ |
✓ |
|
Description |
Genel Açıklama |
dxTextBox |
|
✓ |
|
ApprovalStatus |
Onay Durumu |
dxTextBox |
|
|
|
ApprovalUserName |
Onaylayan Kullanıcı Adı |
dxTextBox |
|
|
|
ApprovalDate |
Onay Tarihi |
dxDateBox |
|
|
|
ApprovalDescription |
Onay Açıklaması |
dxTextBox |
|
|
|
PurchaseApproverUserNames |
Satınalma Onaycıları |
dxTextBox |
|
|
|
DeptApproverUserNames |
Departman Onaycıları |
dxTextBox |
|
|
|
Departman Onayı Bekleyenler — App.Prc.MaterialRequestDeptApproval
| Özellik |
Değer |
| Wizard |
wizard/Prc_MaterialRequestDeptApproval.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.MaterialRequests › App.Prc.MaterialRequestDeptApproval (sıra 2) |
| Yetki |
App.Prc.MaterialRequestDeptApproval + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Departman Onayı Bekleyenler — departman onaycısının kararını bekleyen malzeme talepleri. |
| Geliştirme talebi |
Satınalma -> Malzeme Talepleri |
| Kaynak |
Prc_T_MaterialRequest · filtre "IsDeleted" = 'false' AND "ApprovalStatus" = N'Departman Onayı' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✗ · düzenle ✓ · sil ✗ · popup |
| Kapsam |
Kiracı |
| Alt formlar |
App.Prc.MaterialRequestLine (Id → MaterialRequestId) |
| Widget'lar |
App.Prc.MaterialRequest.Status.DeptApproval, App.Prc.MaterialRequest.Status.PurchaseApproval, App.Prc.MaterialRequest.Status.Rejected |
| Komutlar |
UpdateAfter: Prc_P_MaterialRequestAfterSave |
| Form varsayılanları |
Priority=0 |
| Onay akışı |
Start 'Onaya Gönderildi' → Approval 'Departman Onayı' → Approval 'Satınalma Onayı' → End 'Onaylandı' → End 'Reddedildi' |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
RequestNo |
Talep No |
dxTextBox |
|
✓ |
|
Priority |
Öncelik (0-3) |
dxRating |
✓ |
✓ |
|
RequesterUserId |
Talep Eden |
dxSelectBox |
✓ |
✓ |
sorgu: AbpUsers |
DepartmentId |
Departman |
dxSelectBox |
✓ |
✓ |
sorgu: Hr_T_Department |
WarehouseId |
Depo |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Warehouse |
LocationId |
Konum |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Location |
RequestDate |
Talep Tarihi |
dxDateBox |
✓ |
✓ |
|
Description |
Genel Açıklama |
dxTextArea |
|
✓ |
|
ApprovalStatus |
Onay Durumu |
dxTextBox |
|
|
|
DeptApproverUserNames |
Departman Onaycıları |
dxTextBox |
|
|
|
PurchaseApproverUserNames |
Satınalma Onaycıları |
dxTextBox |
|
|
|
ApprovalUserName |
Onaylayan Kullanıcı Adı |
dxTextBox |
|
|
|
ApprovalDate |
Onay Tarihi |
dxDateBox |
|
|
|
ApprovalDescription |
Onay Açıklaması |
dxTextBox |
|
|
|
Satınalma Onayı Bekleyenler — App.Prc.MaterialRequestPurchaseApproval
| Özellik |
Değer |
| Wizard |
wizard/Prc_MaterialRequestPurchaseApproval.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.MaterialRequests › App.Prc.MaterialRequestPurchaseApproval (sıra 3) |
| Yetki |
App.Prc.MaterialRequestPurchaseApproval + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Satınalma Onayı Bekleyenler — departmanca onaylanmış ve satınalmanın kararını bekleyen malzeme talepleri. |
| Geliştirme talebi |
Satınalma -> Malzeme Talepleri |
| Kaynak |
Prc_T_MaterialRequest · filtre "IsDeleted" = 'false' AND "ApprovalStatus" = N'Satınalma Onayı' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✗ · düzenle ✓ · sil ✗ · popup |
| Kapsam |
Kiracı |
| Alt formlar |
App.Prc.MaterialRequestLine (Id → MaterialRequestId) |
| Widget'lar |
App.Prc.MaterialRequest.Status.PurchaseApproval, App.Prc.MaterialRequest.Status.Approved, App.Prc.MaterialRequest.Status.Rejected |
| Komutlar |
UpdateAfter: Prc_P_MaterialRequestAfterSave |
| Form varsayılanları |
Priority=0 |
| Onay akışı |
Start 'Onaya Gönderildi' → Approval 'Departman Onayı' → Approval 'Satınalma Onayı' → End 'Onaylandı' → End 'Reddedildi' |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
RequestNo |
Talep No |
dxTextBox |
|
✓ |
|
Priority |
Öncelik (0-3) |
dxRating |
✓ |
✓ |
|
RequesterUserId |
Talep Eden |
dxSelectBox |
✓ |
✓ |
sorgu: AbpUsers |
DepartmentId |
Departman |
dxSelectBox |
✓ |
✓ |
sorgu: Hr_T_Department |
WarehouseId |
Depo |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Warehouse |
LocationId |
Konum |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Location |
RequestDate |
Talep Tarihi |
dxDateBox |
✓ |
✓ |
|
Description |
Genel Açıklama |
dxTextArea |
|
✓ |
|
ApprovalStatus |
Onay Durumu |
dxTextBox |
|
|
|
DeptApproverUserNames |
Departman Onaycıları |
dxTextBox |
|
|
|
PurchaseApproverUserNames |
Satınalma Onaycıları |
dxTextBox |
|
|
|
ApprovalUserName |
Onaylayan Kullanıcı Adı |
dxTextBox |
|
|
|
ApprovalDate |
Onay Tarihi |
dxDateBox |
|
|
|
ApprovalDescription |
Onay Açıklaması |
dxTextBox |
|
|
|
Tüm Talepler — App.Prc.MaterialRequest
| Özellik |
Değer |
| Wizard |
wizard/Prc_MaterialRequest.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.MaterialRequests › App.Prc.MaterialRequest (sıra 5) |
| Yetki |
App.Prc.MaterialRequest + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Tüm Talepler — kurumun bütün malzeme talepleri, tüm durumlarıyla, kalem kalem; satınalma yönetiminin listesi. |
| Geliştirme talebi |
Satınalma -> Malzeme Talepleri |
| Kaynak |
Prc_V_MaterialRequestLine · 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.Prc.MaterialRequest.Status.DeptApproval, App.Prc.MaterialRequest.Status.PurchaseApproval, App.Prc.MaterialRequest.Status.Approved, App.Prc.MaterialRequest.Status.Rejected |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
RequestNo |
Talep No |
dxTextBox |
|
|
|
Priority |
Öncelik (0-3) |
dxRating |
✓ |
|
|
RequesterUserId |
Talep Eden |
dxSelectBox |
✓ |
|
sorgu: AbpUsers |
DepartmentId |
Departman |
dxSelectBox |
✓ |
|
sorgu: Hr_T_Department |
WarehouseId |
Depo |
dxSelectBox |
✓ |
|
sorgu: Inv_T_Warehouse |
LocationId |
Konum |
dxSelectBox |
✓ |
|
sorgu: Inv_T_Location (← WarehouseId) |
RequestDate |
Talep Tarihi |
dxDateBox |
✓ |
|
|
Description |
Genel Açıklama |
dxTextBox |
|
|
|
ApprovalStatus |
Onay Durumu |
dxTextBox |
|
|
|
ApprovalUserName |
Onaylayan Kullanıcı Adı |
dxTextBox |
|
|
|
ApprovalDate |
Onay Tarihi |
dxDateBox |
|
|
|
ApprovalDescription |
Onay Açıklaması |
dxTextBox |
|
|
|
MaterialRequestId |
Malzeme Talebi |
dxTextBox |
|
|
|
ProductId |
Ürün |
dxSelectBox |
|
|
sorgu: Inv_T_Product |
Quantity |
Miktar |
dxNumberBox |
|
|
|
UomId |
Birim |
dxSelectBox |
|
|
sorgu: Adm_T_Uom |
FulfillmentMethod |
Karşılama Şekli |
dxSelectBox |
|
|
liste: Purchase, Transfer |
DueDate |
Termin Tarihi |
dxDateBox |
|
|
|
RequestReason |
Talep Nedeni |
dxTextArea |
|
|
|
DeliveredQuantity |
Teslim |
dxNumberBox |
|
|
|
PurchaseResponsibleUserId |
Satınalma Sorumlusu |
dxSelectBox |
|
✓ |
sorgu: AbpUsers |
LineStatus |
Satır Durumu |
dxSelectBox |
✓ |
✓ |
liste: Waiting, Done, Cancelled |
Talep Satırları — App.Prc.MaterialRequestLine
| Özellik |
Değer |
| Wizard |
wizard/Prc_MaterialRequestLine.json |
| Yol |
Liste (Wizard) |
| Menü |
Menüsüz (alt form) |
| Yetki |
App.Prc.MaterialRequestLine + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Talep Satırları — malzeme talebinde istenen ürünler. |
| Geliştirme talebi |
Satınalma -> Malzeme Talepleri |
| Kaynak |
Prc_T_MaterialRequestItem · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✓ · düzenle ✓ · sil ✓ · popup |
| Kapsam |
Kiracı |
| Komutlar |
InsertBefore: SQL · DeleteBefore: SQL |
| Form varsayılanları |
FulfillmentMethod=Purchase, DeliveredQuantity=0, LineStatus=Waiting, Quantity=1, PurchaseResponsibleUserId=@USERID |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
MaterialRequestId |
Malzeme Talebi |
dxTextBox |
|
|
|
ProductId |
Ürün |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Product · script |
Quantity |
Miktar |
dxNumberBox |
✓ |
✓ |
|
UomId |
Birim |
dxSelectBox |
✓ |
✓ |
sorgu: Adm_T_Uom |
FulfillmentMethod |
Karşılama Şekli |
dxSelectBox |
✓ |
✓ |
liste: Purchase, Transfer |
DueDate |
Termin Tarihi |
dxDateBox |
✓ |
✓ |
|
RequestReason |
Talep Nedeni |
dxTextArea |
✓ |
✓ |
|
DeliveredQuantity |
Teslim |
dxNumberBox |
|
|
|
PurchaseResponsibleUserId |
Satınalma Sorumlusu |
dxSelectBox |
|
✓ |
sorgu: AbpUsers |
LineStatus |
Satır Durumu |
dxSelectBox |
✓ |
✓ |
liste: Waiting, Done, Cancelled |
Siparişler (App.Prc.Orders)
Sözleşmeler — App.Prc.PurchaseAgreement
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseAgreement.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.Orders › App.Prc.PurchaseAgreement (sıra 1) |
| Yetki |
App.Prc.PurchaseAgreement + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Sözleşmeler — tedarikçilerle yapılan kapsamlı sipariş ve ihale sözleşmeleri; anlaşılan miktar ve birim fiyatlarıyla. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseAgreement · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✓ · düzenle ✓ · sil ✓ · popup |
| Kapsam |
Kiracı |
| Alt formlar |
App.Prc.PurchaseAgreementLine (Id → AgreementId) |
| Widget'lar |
App.Prc.AgreementStatus.Draft, App.Prc.AgreementStatus.Confirmed, App.Prc.AgreementStatus.Closed, App.Prc.AgreementStatus.Cancelled |
| Komutlar |
UpdateBefore: SQL |
| Form varsayılanları |
AgreementNo=PurchaseAgreement1, BuyerUserId=@USERID, CurrencyId=TRY, StartDate=@NOW, Status=Draft |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
AgreementNo |
Sözleşme |
dxTextBox |
✓ |
✓ |
|
SupplierId |
Tedarikçi |
dxSelectBox |
✓ |
✓ |
sorgu: Adm_T_Contact |
BuyerUserId |
Alıcı |
dxSelectBox |
✓ |
✓ |
sorgu: AbpUsers |
AgreementType |
Sözleşme Türü |
dxSelectBox |
✓ |
✓ |
liste: Blanket, Tender |
CurrencyId |
Kur |
dxSelectBox |
✓ |
✓ |
sorgu: Sas_H_Currency |
StartDate |
Başlama Tarihi |
dxDateBox |
|
✓ |
|
EndDate |
Bitiş Tarihi |
dxDateBox |
|
✓ |
|
Reference |
Referans |
dxTextBox |
|
✓ |
|
OperationTypeId |
Operasyon Türü |
dxSelectBox |
|
✓ |
sorgu: Inv_T_OperationType |
Status |
Durumu |
dxSelectBox |
✓ |
✓ |
liste: Draft, Confirmed, Closed, Cancelled |
Terms |
Şartlar ve Koşullar |
dxHtmlEditor |
|
✓ |
|
Teklif Talepleri — App.Prc.PurchaseRfq
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseRfq.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.Orders › App.Prc.PurchaseRfq (sıra 2) |
| Yetki |
App.Prc.PurchaseRfq + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Teklif Talepleri — her durumdaki satınalma belgeleri: Teklif Talebi, Teklif Talebi Gönderildi, Satınalma Siparişi ve İptal Edildi. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseOrder · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✓ · düzenle ✓ · sil ✓ · popup |
| Kapsam |
Kiracı |
| Alt formlar |
App.Prc.PurchaseOrderLine (Id → PurchaseOrderId), App.Prc.PurchaseOrderQuote (Id → Id), App.Prc.PurchaseOrderOther (Id → Id), App.Prc.PurchaseOrderAlternative (Id → BaseOrderId) |
| Widget'lar |
App.Prc.OrderStatus.Draft, App.Prc.OrderStatus.Sent, App.Prc.PurchaseOrder.Widget.LateRfq, App.Prc.PurchaseOrder.Widget.NotAcknowledged, App.Prc.PurchaseOrder.Widget.LateReceipt, App.Prc.PurchaseOrder.Widget.Otd |
| Komutlar |
InsertAfter: Prc_P_PurchaseOrderAfterSave · UpdateBefore: SQL · UpdateAfter: Prc_P_PurchaseOrderAfterSave · DeleteBefore: SQL |
| Form varsayılanları |
OrderNo=PurchaseOrder1, BuyerUserId=@USERID, CurrencyId=TRY, RequireConfirmation=false, Status=Draft |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
OrderNo |
Referans |
dxTextBox |
✓ |
✓ |
|
Status |
Durumu |
dxSelectBox |
✓ |
✓ |
liste: Draft, Sent, Purchase, Cancelled |
SupplierId |
Tedarikçi |
dxSelectBox |
✓ |
✓ |
sorgu: Adm_T_Contact · script |
OrderDeadline |
Sipariş Zaman Sınırı |
dxDateBox |
|
✓ |
|
SupplierReference |
Tedarikçi Referansı |
dxTextBox |
|
✓ |
|
ExpectedArrival |
Beklenen Geliş |
dxDateBox |
|
✓ |
|
AgreementId |
Sözleşme |
dxSelectBox |
|
✓ |
sorgu: Prc_T_PurchaseAgreement (← SupplierId) |
RequireConfirmation |
Onay İsteyin |
dxCheckBox |
|
✓ |
|
CurrencyId |
Para Birimi |
dxSelectBox |
✓ |
✓ |
sorgu: Sas_H_Currency |
OperationTypeId |
Teslim Alacak |
dxSelectBox |
|
✓ |
sorgu: Inv_T_OperationType |
MaterialRequestId |
Talepten Aktar |
dxSelectBox |
|
✓ |
sorgu: Prc_V_MaterialRequestImportable |
PendingAction |
İşlem |
dxSelectBox |
|
✓ |
liste: Send, Confirm, Cancel, Draft |
SupplierResponse |
Tedarikçi Yanıtı |
dxSelectBox |
|
|
liste: Waiting, Quoted, NotQuoted |
BuyerUserId |
Alıcı |
dxSelectBox |
|
|
sorgu: AbpUsers |
SourceDocument |
Kaynak |
dxTextBox |
|
|
|
UntaxedAmount |
Vergi Hariç Tutar |
dxNumberBox |
|
✓ |
|
TaxAmount |
KDV |
dxNumberBox |
|
✓ |
|
TotalAmount |
Toplam |
dxNumberBox |
|
✓ |
|
LastSentDate |
Son Gönderim |
dxDateBox |
|
|
|
Terms |
Şart ve Koşullar |
dxTextArea |
|
✓ |
|
Satınalma Siparişleri — App.Prc.PurchaseOrder
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseOrder.json |
| Yol |
Liste (Wizard) |
| Menü |
App.Prc.Orders › App.Prc.PurchaseOrder (sıra 3) |
| Yetki |
App.Prc.PurchaseOrder + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Satınalma Siparişleri — siparişe çevrilmiş teklif talepleri. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseOrder · filtre "IsDeleted" = 'false' AND "Status" = 'Purchase' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✗ · düzenle ✓ · sil ✗ · popup |
| Kapsam |
Kiracı |
| Alt formlar |
App.Prc.PurchaseOrderLine (Id → PurchaseOrderId), App.Prc.PurchaseOrderOther (Id → Id), App.Prc.PurchaseOrderAlternative (Id → BaseOrderId) |
| Widget'lar |
App.Prc.PurchaseOrder.Widget.LateReceipt, App.Prc.PurchaseOrder.Widget.AwaitingArrival, App.Widget.TotalRevenue |
| Komutlar |
UpdateAfter: Prc_P_PurchaseOrderAfterSave |
| Form varsayılanları |
CurrencyId=TRY, Status=Draft, UntaxedAmount=0, TaxAmount=0, TotalAmount=0 |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
OrderNo |
Referans |
dxTextBox |
✓ |
✓ |
|
SupplierId |
Tedarikçi |
dxSelectBox |
✓ |
✓ |
sorgu: Adm_T_Contact |
ConfirmDate |
Onaylama Tarihi |
dxDateBox |
|
✓ |
|
ExpectedArrival |
Beklenen Geliş |
dxDateBox |
|
✓ |
|
SupplierReference |
Tedarikçi Referansı |
dxTextBox |
|
✓ |
|
ArrivalDate |
Varış |
dxDateBox |
|
✓ |
|
AgreementId |
Sözleşme |
dxSelectBox |
|
✓ |
sorgu: Prc_T_PurchaseAgreement |
OperationTypeId |
Teslim Alacak |
dxSelectBox |
|
✓ |
sorgu: Inv_T_OperationType |
CurrencyId |
Para Birimi |
dxTextBox |
✓ |
✓ |
|
MaterialRequestId |
Talepten Aktar |
dxSelectBox |
|
✓ |
sorgu: Prc_V_MaterialRequestImportable |
PendingAction |
İşlem |
dxSelectBox |
|
✓ |
liste: Send, Cancel |
Status |
Durumu |
dxSelectBox |
|
|
liste: Draft, Sent, Purchase, Cancelled |
BuyerUserId |
Alıcı |
dxSelectBox |
|
|
sorgu: AbpUsers |
SourceDocument |
Kaynak |
dxTextBox |
|
|
|
UntaxedAmount |
Vergi Hariç Tutar |
dxNumberBox |
|
✓ |
|
TaxAmount |
KDV |
dxNumberBox |
|
✓ |
|
TotalAmount |
Toplam |
dxNumberBox |
|
✓ |
|
LastSentDate |
Son Gönderim |
dxDateBox |
|
|
|
Terms |
Şart ve Koşullar |
dxTextArea |
|
✓ |
|
Sözleşme Kalemleri — App.Prc.PurchaseAgreementLine
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseAgreementLine.json |
| Yol |
Liste (Wizard) |
| Menü |
Menüsüz (alt form) |
| Yetki |
App.Prc.PurchaseAgreementLine + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Sözleşme Kalemleri — satınalma sözleşmesinin ürünleri, miktarları ve anlaşılan birim fiyatları. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseAgreementLine · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✓ · düzenle ✓ · sil ✓ · popup |
| Kapsam |
Kiracı |
| Form varsayılanları |
Quantity=1 |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
AgreementId |
Sözleşme |
dxTextBox |
|
|
|
ProductId |
Ürün |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Product · script |
Quantity |
Miktar |
dxNumberBox |
✓ |
✓ |
|
UomId |
Birim |
dxSelectBox |
✓ |
✓ |
sorgu: Adm_T_Uom |
UnitPrice |
Birim Fiyat |
dxNumberBox |
✓ |
✓ |
|
Description |
Açıklama |
dxTextArea |
|
✓ |
|
Sipariş Kalemleri — App.Prc.PurchaseOrderLine
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseOrderLine.json |
| Yol |
Liste (Wizard) |
| Menü |
Menüsüz (alt form) |
| Yetki |
App.Prc.PurchaseOrderLine + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Sipariş Kalemleri — teklif talebinin ya da satınalma siparişinin ürünleri. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseOrderLine · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✓ · düzenle ✓ · sil ✓ · popup |
| Kapsam |
Kiracı |
| Komutlar |
InsertBefore: SQL · InsertAfter: Prc_P_PurchaseOrderRecalc · UpdateBefore: SQL · UpdateAfter: Prc_P_PurchaseOrderRecalc · DeleteBefore: SQL · DeleteAfter: Prc_P_PurchaseOrderRecalc |
| Form varsayılanları |
Quantity=1 |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
PurchaseOrderId |
Satınalma Siparişi |
dxTextBox |
|
|
|
ProductId |
Ürün |
dxSelectBox |
✓ |
✓ |
sorgu: Inv_T_Product · script |
Description |
Açıklama |
dxTextBox |
|
✓ |
|
Quantity |
Miktar |
dxNumberBox |
✓ |
✓ |
|
UomId |
Birim |
dxSelectBox |
✓ |
✓ |
sorgu: Adm_T_Uom |
UnitPrice |
Birim Fiyat |
dxNumberBox |
✓ |
✓ |
|
TaxRate |
Vergiler (%) |
dxNumberBox |
✓ |
✓ |
|
Amount |
Tutar |
dxNumberBox |
|
✓ |
script |
MaterialRequestItemId |
Talep |
dxSelectBox |
|
✓ |
sorgu: Prc_T_MaterialRequestItem |
Tedarikçi Teklifi — App.Prc.PurchaseOrderQuote
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseOrderQuote.json |
| Yol |
Liste (Wizard) |
| Menü |
Menüsüz (alt form) |
| Yetki |
App.Prc.PurchaseOrderQuote + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Tedarikçi Teklifi — tedarikçinin teklif talebine verdiği yanıt. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseOrder · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✗ · düzenle ✓ · sil ✗ · popup |
| Kapsam |
Kiracı |
| Komutlar |
UpdateAfter: SQL |
| Form varsayılanları |
SupplierResponse=Waiting |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
SupplierResponse |
Tedarikçi Yanıtı |
dxSelectBox |
✓ |
✓ |
liste: Waiting, Quoted, NotQuoted |
QuoteValidUntil |
Teklif Geçerliliği |
dxDateBox |
|
✓ |
|
QuoteDate |
Teklif Tarihi |
dxDateBox |
|
✓ |
|
QuotedByUserId |
Teklifi Veren |
dxSelectBox |
|
✓ |
sorgu: AbpUsers |
Diğer Bilgiler — App.Prc.PurchaseOrderOther
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseOrderOther.json |
| Yol |
Liste (Wizard) |
| Menü |
Menüsüz (alt form) |
| Yetki |
App.Prc.PurchaseOrderOther + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Diğer Bilgiler — teklif talebinin ya da satınalma siparişinin alıcı, kaynak, proje ve ticari koşulları. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_T_PurchaseOrder · filtre "IsDeleted" = 'false' |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✗ · düzenle ✓ · sil ✗ · popup |
| Kapsam |
Kiracı |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
BuyerUserId |
Alıcı |
dxSelectBox |
✓ |
✓ |
sorgu: AbpUsers |
PaymentTermId |
Ödeme Koşulları |
dxSelectBox |
|
✓ |
sorgu: Prc_T_PaymentTerm |
SourceDocument |
Kaynak |
dxTextBox |
|
✓ |
|
ProjectId |
Proje |
dxSelectBox |
|
✓ |
sorgu: Prj_T_Project |
IncotermId |
Teslimat Koşulu |
dxSelectBox |
|
✓ |
sorgu: Prc_T_Incoterm |
IncotermLocation |
Incoterm Konumu |
dxTextBox |
|
✓ |
|
Teklifler — App.Prc.PurchaseOrderAlternative
| Özellik |
Değer |
| Wizard |
wizard/Prc_PurchaseOrderAlternative.json |
| Yol |
Liste (Wizard) |
| Menü |
Menüsüz (alt form) |
| Yetki |
App.Prc.PurchaseOrderAlternative + .Create, .Update, .Delete, .Export, .Import, .Note |
| Açıklama |
Teklifler — açık belgeyle aynı malzeme talebinin kalemlerini taşıyan diğer teklif talepleri ve siparişler. |
| Geliştirme talebi |
Satınalma -> Siparişler |
| Kaynak |
Prc_V_PurchaseOrderAlternative |
| Görünümler |
Grid, Card, Pivot, Chart (açılış grid) |
| Düzenleme |
ekle ✗ · düzenle ✗ · sil ✗ · popup |
| Kapsam |
Kiracı |
| Alan |
Başlık |
Editör |
Zorunlu |
Formda |
Kaynak |
BaseOrderId |
Ana Belge |
dxTextBox |
|
|
|
OrderNo |
Referans |
dxTextBox |
|
|
|
SupplierId |
Tedarikçi |
dxSelectBox |
|
|
sorgu: Adm_T_Contact |
SupplierResponse |
Tedarikçi Yanıtı |
dxSelectBox |
|
|
liste: Waiting, Quoted, NotQuoted |
OrderDeadline |
Sipariş Zaman Sınırı |
dxDateBox |
|
|
|
ExpectedArrival |
Beklenen Geliş |
dxDateBox |
|
|
|
TotalAmount |
Toplam |
dxNumberBox |
|
|
|
CurrencyId |
Para Birimi |
dxTextBox |
|
|
|
Status |
Durumu |
dxSelectBox |
|
|
liste: Draft, Sent, Purchase, Cancelled |