Tip: TABLE · Şema: Stok · Modül: MOD-STOK · Temizlik sınıfı: ACTIVE (kategori A, güven 0) · Kapsam: ERPGOLD_CORE / ALL
Kurulum karşılaştırması
| Kurulum | Var mı | Satır |
|---|---|---|
| INST-ERPGOLDV2 (döviz, 2023-12) | ● | 0 |
| INST-KUYUMCU (kuyumcu/rafineri, 2025-01) | ● | 10870 |
İş anlamı
Takoz (barter/blok maden) kartı — büyük gramajlı, seri numarası izlenen maden blokları.
Hangi ekranlar yazıyor / okuyor
- Yazan: FrmTakozGiris, FrmTakozSuKontrol, iFTakozGiris
- Okuyan (form doldurma): FrmTakozGiris, FrmTakozSuKontrol, iFTakozGiris
İlişkiler (JOIN kanıtı ≥ 2 sorgu — FK değil)
AyarEviId→ [Sistem.AyarEvi].Id6×SubeId→Sistem.Subeler.Id2×HesapId→Cari.Hesaplar.Id2×- ←
Stok.StokHaraketleri.StokId6×
BASE künyesi ve kullanım haritası (v1.5 · 13.09.2026)
| BASE Durumu | BASE'e dahil — BASE Status: CANDIDATE_CANONICAL |
| BASE Sınıfı | BASE-CORE (BASE MASTER) · Wiki önerisi: BASE-CORE · Action: INCLUDE_IN_BASE · Güven: HIGH |
| Runtime Certification | PENDING — BASE ile açılış/işlem testi yapılmadı; otomatik PASS yazılmadı |
| Kodda Kullanılıyor mu? | EVET — doğrudan (Seviye-0) |
| Kod Referans Sayısı | BASE taraması: 7 SQL_LITERAL (= 7) · Kullanım Haritası kanıtı: 42 kayıt (APP_CODE) |
| Kullanan Ekranlar | FrmTakozSuKontrol, FrmTakozGiris, iFTakozGiris |
| Kullanan Class/Method | Cari.Provizyon (Function InsertTransaction (satır 384–458), Function UpdateTransaction (satır 459–531)), FrmBlokTakozGirisi (Function TakozSave (satır 64–185)), FrmSeriIslem (Sub RunReport (satır 220–268)), FrmSeriTakozCikis (Sub Kaydet (satır 157–247)), FrmTakozCikisi (Sub OnStockChanged (satır 102–128), Sub FormDataBind (satır 210–235)), FrmTakozGiris (Sub FormDataBind (satır 120–163), Sub FormSave (satır 234–382), Sub TxtBarkod_Validated (s), ifTakozCikis (Sub OnStockChanged (satır 50–76), Sub FormDataBind (satır 163–191)), iFTakozGiris (Sub FormDataBind (satır 73–121), Sub FormSave (satır 192–340), Sub TxtBarkod_Validated (sa) … (+3) |
| Incoming Dependency (bunu kullanan nesneler) | Bakiye.GetBakiye, Bilanco.GetIBilanco, Bilanco.GetIKar, Cari.AcceptTransaction, Cari.Reset, Reports.IslemKontrolRaporu, Sistem.NabizTick, Stok.GetTakozSirketStoklari, Stok.GetTakozStok, Stok.GetTakozStoklari … (+7) |
| Outgoing Dependency (bunun kullandığı nesneler) | FN.GenerateTakozCode |
| Trigger İlişkisi | yok |
| Ticket Problem Aileleri | PF-004, PF-034, PF-046 |
| Bilinen Hatalar | ERR-OBS-046, ERR-POT-134, ERR-SIL-033, ERR-SIL-054 (Hata Bilgi Bankası; Gözlemlendi durumu kayıtta) |
| Bilinen SQL Riskleri | SQLR-053 |
| Health Check Kuralı | — |
| Müşteri Özel mi? | HAYIR |
| Opsiyonel Modül mü? | HAYIR |
| Legacy mi? | HAYIR |
| Son Doğrulama Tarihi | 13.09.2026 — statik analiz (katalog 2026-09-10 + kaynak kod taraması). Çalışma zamanı doğrulaması: PENDING |
Kullanım haritası
| Kullanım Haritası kategorisi | A — ERPGOLD CORE · A-APP_CODE · güven 100 |
| Derinlik / kök | 0 · bu nesne (Seviye-0) |
| DependencyPath | ERPGOLD → Cari.Provizyon → Stok.Takoz |
Bkz. ERPGOLD BASE · Uzlaştırma · Database Usage Map · Kullanım Haritası Direct · Hata Bilgi Bankası. BASE Status: CANDIDATE_CANONICAL · Runtime Certification: PENDING · Hiçbir DB değişikliği yapılmadı; SAFETY > CLEANUP.
Temizlik kanıtı
| Kontrol | Sonuç |
|---|---|
| app | YES |
| report | NO |
| config | NO |
| dynamic | NO |
| db_in | YES |
| db_out | YES |
| trigger | NO |
| fk | NO |
| computed | NO |
| crossdb | NO |
| runtime | NO |
| external | NO |
Gerekçe: APP
KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)
Modül: MOD-STOK · Satır (örnek DB): 0 · Kolon: 40 · İndeks: 1 · Tetikleyici: yok · DB'de oluşturma/değişiklik: 2015-12-23 / 2023-11-30
Özet
Külçe (takoz) kartları. Her takoz bir Id ile stoklanır; milyem, has, çeşni, tartı (scala) ve XRF milyem alanlarıyla kimden geldiği (HesapId) izlenir. Takoz stok hareketi StokTipi=3.
Ayrıntı
Raporsuz takozun (IsRapor=0) has'ı bakiye hesabında XRF milyemiyle, XRF 0 ise 0,600 varsayımıyla hesaplanır. TAKOZ+GİRİŞ işlemi kaydedilince Takoz.RaporYaz prosedürü işçilik/maliyet/milyem alanlarını işleme geri yazar.
Kolonlar
| # | Kolon | Tip | Null | Özellik | Varsayılan | Anlam |
|---|---|---|---|---|---|---|
| 1 | Id | int | identity | Birincil anahtar. Tabloya özgü otomatik artan kayıt numarası. | ||
| 2 | RefNo | nvarchar(72) | ✔ | Kayıt için üretilen GUID. Karşı kayıt/transfer eşleştirmesi bunun üzerinden yapılır. | ||
| 3 | HesapId | int | ✔ | Cari hesap (müşteri/tedarikçi/banka). → Cari.Hesaplar.Id (2 kanıt) |
||
| 4 | SubeId | int | ✔ | Şube. Her şubenin hesapları, stokları ve bilançosu ayrıdır. → Sistem.Subeler.Id (2 kanıt) |
||
| 5 | TakozTipi | int | ✔ | Sayı alanı. → Sistem.TakozTipleri.Id (1 kanıt) |
||
| 6 | Kodu | nvarchar(max) | ✔ | hesaplanan: ([FN].GenerateTakozCode([Id])) | Kısa kod — kullanıcının ekranda gördüğü ürün/kart kodu. | |
| 7 | AyarEviId | int | ✔ | AyarEvi kaydına işaret eden numara. → Sistem.AyarEvi.Id (6 kanıt) |
||
| 8 | RaporNo | nvarchar(100) | ✔ | İlgili rapor/belge numarası. | ||
| 9 | IsRapor | bit | ✔ | Evet/hayır bayrağı: Rapor. | ||
| 10 | IsExtra | bit | ✔ | Evet/hayır bayrağı: Extra. | ||
| 11 | Miktar | decimal(18,2) | ✔ | Ürünün kendi birimindeki miktarı: dövizde nominal tutar, madende gram. | ||
| 12 | CesniMiktar | decimal(18,2) | ✔ | Miktar alanı. | ||
| 13 | AuMilyem | decimal(18,5) | ✔ | Altın saflık çarpanı. Adetli üründe bir adedin has gram karşılığı (ör. yarım altın 3,21). | ||
| 14 | AuHas | decimal(18,2) | ✔ | hesaplanan: (CONVERT(decimal(18,2),[Miktar]*[AuMilyem],(0))) | hesaplanan altın has | |
| 15 | AuKur | decimal(18,5) | ✔ | İşlem anındaki kur değeri. | ||
| 16 | AgMilyem | decimal(18,5) | ✔ | Gümüş saflık çarpanı. | ||
| 17 | AgHas | decimal(18,2) | ✔ | hesaplanan: (CONVERT(decimal(18,2),[Miktar]*[AgMilyem],(2))) | Sayısal değer. | |
| 18 | AgKur | decimal(18,5) | ✔ | İşlem anındaki kur değeri. | ||
| 19 | PltMilyem | decimal(18,5) | ✔ | Platin saflık çarpanı. | ||
| 20 | PltHas | decimal(18,2) | ✔ | hesaplanan: (CONVERT(decimal(18,2),[Miktar]*[PltMilyem],(0))) | Sayısal değer. | |
| 21 | PltKur | decimal(18,5) | ✔ | Platin kuru. | ||
| 22 | PldMilyem | decimal(18,5) | ✔ | Paladyum saflık çarpanı. | ||
| 23 | PldHas | decimal(18,2) | ✔ | hesaplanan: (CONVERT(decimal(18,2),[Miktar]*[PldMilyem],(0))) | Sayısal değer. | |
| 24 | PldKur | decimal(18,5) | ✔ | Paladyum kuru. | ||
| 25 | Maliyet | decimal(18,2) | ✔ | hesaplanan: (CONVERT(decimal(18,2),((isnull(([Miktar][AuMilyem])[AuKur],(0))+isnull(([Miktar][AgMilyem])[AgKur],(0)))+isnull(([Miktar][PltMilyem])[PltKur],(0)))+isnull(([Miktar][PldMilyem])[PldKur],(0)),(0))) | İşlemin maliyet karşılığı (ana birim fiyatıyla hesaplanmış). | |
| 26 | UserId | int | ✔ | İşlemi yapan kullanıcı. | ||
| 27 | InsertDate | datetime | ✔ | (getdate()) | Kaydın oluşturulma anı. | |
| 28 | IsDeleted | bit | ✔ | ((0)) | Yumuşak silme işareti. Silinen kayıt fiziksel olarak durur, sorgular IsDeleted='False' filtreler. |
|
| 29 | OwnerId | int | ✔ | ((0)) | Sahip kayıt — hiyerarşik yapılarda üst kaydın Id'si. | |
| 30 | SuMiktar | decimal(18,2) | ✔ | ((0)) | Miktar alanı. | |
| 31 | ScalaNo | int | ✔ | ((0)) | Numara alanı. | |
| 32 | ScalaTarih | datetime | ✔ | Tarih alanı. | ||
| 33 | ScalaUserId | int | ✔ | ((0)) | ScalaUser kaydına işaret eden numara. |
|
| 34 | ScalaMiktar | decimal(18,2) | ✔ | hesaplanan: (CONVERT(decimal(18,2),case when isnull([TkMiktar],(0))<>(0) AND isnull([SuMiktar],(0))<>(0) then ([TkMiktar]/[SuMiktar])*(1000) else (0) end,0)) | tartı miktarı | |
| 35 | TkMiktar | decimal(18,2) | ✔ | ((0)) | Miktar alanı. | |
| 36 | CesniKodu | nvarchar(max) | ✔ | hesaplanan: (case when ((5)-len([Id]))>(0) then 'CS'+CONVERT([varchar],replicate('0',(5)-len([Id]))+CONVERT([varchar],[Id],(0)),(0)) else 'CS'+CONVERT(nvarchar(max),[Id],(0)) end) | Kod alanı. | |
| 37 | CesniHas | decimal(37,7) | ✔ | hesaplanan: ([CesniMiktar]*[AuMilyem]) | Sayısal değer. | |
| 38 | CesniGum | decimal(37,7) | ✔ | hesaplanan: ([CesniMiktar]*[AgMilyem]) | Sayısal değer. | |
| 39 | XRFAuMilyem | decimal(18,5) | ✔ | XRF ölçüm altın milyem (raporsuz takozda kullanılır) | ||
| 40 | XRFAgMilyem | decimal(18,5) | ✔ | XRF gümüş milyem |
İndeksler
| İndeks | Tip | PK | Tekil | Kolonlar | Dahil |
|---|---|---|---|---|---|
| PK_Takoz_1 | CLUSTERED | ✔ | ✔ | Id |
BİLGİ — Bu tabloda tanımlı yabancı anahtar yok; bütünlük uygulama katmanında (Dao sınıfları) ve tetikleyicilerde sağlanır.
Bu tabloyu kullanan SQL nesneleri
| Nesne | Tip | İlişki |
|---|---|---|
| Bakiye.GetBakiye | FUNCTION | okur |
| Bilanco.GetIBilanco | FUNCTION | okur |
| Bilanco.GetIKar | FUNCTION | okur |
| Cari.AcceptTransaction | TRIGGER | yazar |
| Cari.Reset | PROCEDURE | yazar |
| dbo.sp_DevirIslemiYap | PROCEDURE | yazar |
| Reports.IslemKontrolRaporu | FUNCTION | okur |
| Sistem.NabizTick | PROCEDURE | okur |
| Stok.GetTakozSirketStoklari | FUNCTION | okur |
| Stok.GetTakozStok | FUNCTION | okur |
| Stok.GetTakozStoklari | FUNCTION | okur |
| Stok.GetTakozSubeStoklari | FUNCTION | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.Takoz | TABLE | okur |
| Stok.TakozListesi | FUNCTION | okur |
| Stok.TakozOzet | FUNCTION | okur |
| Takoz.Add | PROCEDURE | yazar |
| Takoz.RaporYaz | PROCEDURE | okur |
| Takoz.TakozKontrol | FUNCTION | okur |
İlgili iş kuralları
- TAKOZ+GİRİŞ kaydında EXEC Takoz.RaporYaz çalışır; Miktar/işçilik/maliyet/milyem işleme geri yazılır (Cari.Islem.vb:989; Takoz.RaporYaz.md)
- Raporsuz (IsRapor=0) takoz bakiyesi XRF milyemiyle, XRF=0 ise 0,600 ile hesaplanır (Cari.AcceptTransaction.md satır 512-514; Bakiye.GetBakiye.md)
- Takoz çıkışı iptalinde Stok.GetTakozAdet<>0 ise engellenir; takoz stokta yoksa çıkış engellenir (Cari.AcceptTransaction.md satır 285-307)
- Takoz stok hareketi StokTipi=3 (Cari.AcceptTransaction.md satır 336-339)
Kaynaklar
- SRC-DB-TABLES / SRC-DB-COLUMNS / SRC-DB-INDEXES —
sys.tables,sys.columns,sys.indexes(salt okunur katalog sorgusu) - SRC-DRV-AZ — az/08-teknik.md
- SRC-DB-MODULES — KnowledgeBase/04_Database/StoredProcedures/Takoz.RaporYaz.md
- SRC-DB-MODULES — KnowledgeBase/04_Database/Triggers/Cari.AcceptTransaction.md
- SRC-CODE-DAO — dao/Dao/Islem/Cari.Islem.vb :989
- SRC-DB-COLUMNS — Stok.Takoz
Bilinmeyenler
- Hangi sürümde eklendiği:
createdDB tarihi bir kurulumun tarihidir, ürün sürümü değil (GAP-VERSION-02).
