AIFA AKADEMI · Kurumsal Wiki
4.330 makale
Ana sayfa Kurumsal Wiki › Hata Bilgi Bankası › EKB-ROOT-CAUSE

Root Cause Haritası

ERROR_KBERPGOLD_COREACTIVEAIFASOFT_INTERNALDERIVED
Kanonik kaynak: markdown · bu sayfa üretilmiş görünümdür

466 hata için belirti → teknik olay → yakın neden → kök neden zinciri.

Künye (front-matter) · EKB-ROOT-CAUSE · reality [SUPPORT_OBSERVED, SOURCE_IMPLEMENTED, GENERATED_PROPOSAL]
idEKB-ROOT-CAUSE
titleRoot Cause Haritası
entity_typeERROR_KB
moduleMOD-KALITE
audience[SUPPORT, DEVELOPER, QA]
confidentialityAIFASOFT_INTERNAL
product_scopeERPGOLD_CORE
customer_scopeALL
reality[SUPPORT_OBSERVED, SOURCE_IMPLEMENTED, GENERATED_PROPOSAL]
lifecycleACTIVE
confidenceMEDIUM
version_fromVERSION_UNKNOWN
version_to-
created_at2026-09-13
last_verified2026-09-13
source_hashes[]
sources[DOCUMENT:ERPGOLD_ERROR_MASTER.xlsx, DOCUMENT:ERPGOLD_HATA_KOK_NEDEN_BILGI_BANKASI.md, SRC-TKT-ERP, SOURCE_CODE:ERPPRO, DB_CATALOG:INST-ERPGOLDV2]
aliases[Root Cause Haritası]
tags[error-kb]
wiki_versionv1.5
source_packageERPGOLD_HATA_BILGI_BANKASI_v1 / Wiki_23_Hata_Bilgi_Bankasi

Root cause haritası (466 kayıt). Her hata için belirti → teknik olay → yakın neden → kök neden zinciri tek tabloda. Kök neden "[Ekip tarafından doldurulacak]" ise analiz henüz yapılmamıştır.

Harita

IDSınıfSev.BaşlıkBelirtiTeknik olayYakın nedenKök nedenEtkilenen veriPFGüven
ERR-OBS-001GÖZLEMLENMİŞS3Aylık BTrans (mali müşavir XML) alma — rutin talep'AA.YYYY BTrans alma' / 'BTrans alındı'SQL: SP Muhasebe.SPBTRANSDovizCari.Islemler, Cari.IslemDetaylari, Cari.Hesaplar; Muhasebe.IslemlerBTransrutin talep — arıza değilPF-00180
ERR-OBS-002GÖZLEMLENMİŞS2Lisans girişi / yıllık lisans yenileme (rutin)'lisans verildi' / 'program lisans istiyor'SQL: Sistem.Clients.SerialKey + config.cfglisans süresi dolmuş / yeni bilgisayar — rutinSistem.Users / UserGroup / UserDetailsPF-00280
ERR-OBS-003GÖZLEMLENMİŞS2Fiş yazıcısı yazdırmıyor / fiş çıkmıyor / boş fiş / Windows kaynaklı yazıcı hatası'yazıcı fiş çıkarmıyor' / 'yazıcı problemi' / 'fiş makinesi'SQL: VW Cari.FisIslemDetay (TOP 1000); Sistem.Clients.FisPrinter/DirekPrint/OtoFisBasyazıcı port/sürücü/ayar; boş fişte görünüm satır sınırıKurulum/bağlantı ayarları (veri etkilenmez)PF-00365
ERR-OBS-004GÖZLEMLENMİŞS4Rapor tasarımı / yeni rapor / sütun ekleme / bakiye ekstresi düzenleme (talep)'rapor tasarımı' / 'istenilen rapor' / 'bakiye ekstresi düzenleme'SQL: AifaDev.Reports / AifaDev.ReportLayouts; FN Reports.BakiyeListesitalep (geliştirme)PF-00465
ERR-OBS-005GÖZLEMLENMİŞS1Bilanço tutmuyor / eksi-zarar yazıyor / yanlış gösteriyor (genel bilanço problemi)'bilanço problemi' / 'bilanço eksi yazıyor' / 'bilanço tutmuyor'SQL: Bilanco.Bilancolar; FN Bilanco.GetKurFarki; FN Stok.GetMadenMaliyeti; FN Sistem.GetKurListesikur sapmalı/eksi stoklu işlemler, açık pozisyon kur farkı, maliyet fonksiyonuMaden maliyeti güncel kuru baz alıyor — fonksiyon sürümü (H-129, FN-STOK.GETMADENMALIYETI, TD-23); Çıkılmamış / devir öncesi takozlar (H-130, PB-034); Raporsuz takoz %60 milyem varsayımı üç raporda üçPF-00555
ERR-OBS-006GÖZLEMLENMİŞS2ERP sunucuya bağlanamıyor / bağlantı hatası / Configuration Settings ekranı'ERP bağlantısı' / 'bağlantı hatası' / 'Configuration Settings geliyor'SQL: sys.databases; SQL Server servis/Browser/TCP; config.cfgbağlantı yapılandırması / ağ / servisKurulum/bağlantı ayarları (veri etkilenmez)PF-00665
ERR-OBS-007GÖZLEMLENMİŞS2Fatura kesilemiyor / fatura basma / fatura problemi (genel)'fatura problemi' / 'fatura kesemiyor' / 'fatura basma hatası'SQL: VW Cari.FaturaBilgileri; AifaDev.FaturaDesign; Sistem.Clients.FaPrinter?Belirtilen SQL nesnesi / ekran verisiPF-00750
ERR-OBS-008GÖZLEMLENMİŞS3ERP kurulumu (yeni kurulum, sıfır kurulum, kurulum sonrası destek)'ERP kurulumu'SQL: SQL Server; config.cfg; Sistem.Clientsrutin kurulumPF-00865
ERR-OBS-009GÖZLEMLENMİŞS2ETTN atama / boş ETTN / ETTN güncellemesi'ETTN no ataması' / 'boş ETTN problemi'SQL: Cari.IslemDetaylari (ETTN alanı) — doğrulanmadı? (ETTN'nin neden boş kaldığı wiki'de belgeli değil)Belirtilen SQL nesnesi / ekran verisiPF-00975
ERR-OBS-010GÖZLEMLENMİŞS2Programa giriş yapılamıyor / program açılmıyor (giriş hatası)'programa giriş hatası' / 'giriş sorunu' / 'ERP açılmıyor'SQL: Sistem.Users / UserDetails; Sistem.GetUsers; Sistem.Login (denetim)kullanıcı ataması / bağlantı / lisansSistem.Users / UserGroup / UserDetailsPF-01060
ERR-OBS-011GÖZLEMLENMİŞS2Ana bilgisayar / sunucu taşıma, format sonrası veya yeni bilgisayara kurulum'ERP taşıma' / 'yeni bilgisayara kurulum' / 'format sonrası'SQL: SQL Server kurulumu; RESTORE; config.cfgdonanım değişimi (rutin) / standart dışı kurulumKurulum/bağlantı ayarları (veri etkilenmez)PF-01170
ERR-OBS-012GÖZLEMLENMİŞS1Yanlış yapılan işlemin düzeltilmesi / kayıt olmuyor / mutabakat / fiş no'işlem düzeltme' / 'yanlış yapılan işlem' / 'mutabakat'SQL: Cari.Islemler; Cari.History; Sistem.Settings (DuzeltmeGun, DuzeltmeOnayi, MutabakatLock)kullanıcı giriş hatası + düzeltme engelleri (kural)F2 hiçbir şey yapmıyor / 'Sube,Kasa veya Hesap Seçili Değil' / 'Miktar Girmelisiniz' (H-036, H-037, H-038, PB-045); Fiş numarası iki güne yayılmış / çakışma (H-102, PB-065, TD-02); Combo indeksi doğruPF-01255
ERR-OBS-013GÖZLEMLENMİŞS3Kullanıcı tanımlama / düzenleme / isim değişikliği / kullanıcı açma'kullanıcı tanımlama' / 'kullanıcı isim değişikliği'SQL: Sistem.Users; UserDetails (şube-kasa-grup)rutin tanımlamaPF-01365
ERR-OBS-014GÖZLEMLENMİŞS2Belgelendirilmiş işlem / ResmiKasa (legacy teknik ad) desteği — belirtisiz'resmi işlem' / 'resmi kasa girişi'SQL: Cari.Islemler (IslemTipi 11/12 resmi), Sistem.Subeler.IsResmi, Sistem.Kasalar.ResmiKasa?Belirtilen SQL nesnesi / ekran verisiPF-01455
ERR-OBS-015GÖZLEMLENMİŞS4Eğitim / soru-cevap / genel destek'soruları cevaplandı' / 'eğitim' / 'işlem destek'SQL: —eğitim eksikliğiPF-01560
ERR-OBS-016GÖZLEMLENMİŞS3Yazıcı kurulumu / yeni fiş yazıcısı tanımlama (rutin)'yazıcı kurulumu yapıldı'SQL: Sistem.Clients.FisPrinter / DirekPrint / OtoFisBasrutin kurulumPF-01675
ERR-OBS-017GÖZLEMLENMİŞS3RDP (uzak masaüstü) kurulumu (rutin)'RDP kurulumu'SQL: Sistem.RDPrutin kurulumPF-01770
ERR-OBS-018GÖZLEMLENMİŞS2e-Belge entegratör güncellemesi / entegratör reddi (Uyumsoft, ICE, Mysoft, QR/dijital fatura)'v1 güncellemesi yapılacak uyumsoft' / 'QR fatura güncelleme' / 'entegratör hatası'SQL: Sistem.Subeler.Entegrator; Cari.IslemDetaylari.Durum (v1.0.7.2)entegratör/DLL sürüm uyumsuzluğu — güncelleme rutiniCari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-01875
ERR-OBS-019GÖZLEMLENMİŞS2EDS fiyat akışı durdu / ERP'ye kur gelmiyor / EDS–ERP bağlantısı'EDS ERP bağlantısı' / 'fiyat akışı sorunu' / 'kurlar güncellenmiyor'SQL: Sistem.Kurlar (EDS yazar); FN Sistem.GetKurListesiEDS örneği/sağlayıcı/bağlantı yapılandırmasıKurulum/bağlantı ayarları (veri etkilenmez)PF-01970
ERR-OBS-020GÖZLEMLENMİŞS3Kullanıcı yetkilendirme / yetki grubu / ekran menüde yok'yetkilendirme' / 'kullanıcı yetkileri' / 'kullanıcı grup ayarları'SQL: Sistem.UserGroup; UserDetailsyetki tanımı (yapılandırma)PF-02070
ERR-OBS-021GÖZLEMLENMİŞS3Maden stok tanımlama / sıralama / düzenleme'maden stok tanımlama' / 'maden stok sıralaması'SQL: Stok.Maden (FiyatTipi, MilyemDurumu, GirisIsciligiBirimId/CikisIsciligiBirimId); stok listesi fonksiyonu (PROC-14)tanım talebi / sıralama fonksiyonu eksik ORDER BYPF-02165
ERR-OBS-022GÖZLEMLENMİŞS2Yazıcı bağlantısı kopuk / paylaşımlı-ağ yazıcısı bağlanmıyor'yazıcı bağlantısı' / 'server yazıcı sorunu'SQL: Sistem.Clients.FisPrinterişletim sistemi/ağ yazıcı paylaşımı ve port ayarıKurulum/bağlantı ayarları (veri etkilenmez)PF-02270
ERR-OBS-023GÖZLEMLENMİŞS3Birim (para birimi) tanımlama / listede görünmüyor / çarpan / çift birim'birim tanımlama' / 'istenilen birimler'SQL: Sistem.Birimler (IsStatic, Carpan, IsMetal, IsDeleted)tanım alanları / önbellek yenilemePF-02370
ERR-OBS-024GÖZLEMLENMİŞS3Etiket tasarımı / etiket yazıcısı çıkmıyor / RFID'etiket tasarımı' / 'etiket çıkmıyor' / 'RFID'SQL: Sistem.Etiket; Sistem.Clients.RFIDPrinterIP/RFIDPrinterPortetiket yazıcısı/RFID tanımı; 30 gr sabit eşiğiPF-02475
ERR-OBS-025GÖZLEMLENMİŞS4Kullanıcı ayarları / kişiselleştirme / işlem listesi görünümü / Excel aktarma'kullanıcı ayarları' / 'kullanıcı kişiselleştirme' / 'işlem listesi düzenleme'SQL: Sistem.Clients; Sistem.Layouttalep (kişiselleştirme)PF-02565
ERR-OBS-026GÖZLEMLENMİŞS2Yılbaşı fatura/e-belge seri-sıra numarası güncellemesi'2023 fatura numarası güncellemesi' / 'fatura serisi'SQL: SP Sistem.GetFaturaNo; Sistem.Clients.FaSeri/FsSeriGetFaturaNo yıl koşulu eksik → her yıl elle güncellemeBelirtilen SQL nesnesi / ekran verisiPF-02680
ERR-OBS-027GÖZLEMLENMİŞS1Fatura/resmi işlem düzeltme, iptal, yanlış müşteriye kesilen veya geçmişe fatura'resmi kasa düzeltme' / 'fatura düzenleme' / 'geçmişe dönük fatura'SQL: Cari.Islemler / Cari.IslemDetaylari (belge no, ETTN)iletilmiş belge değiştirilemez kuralı; yanlış hesap/tarih seçimiBelgelendirme Farkı bildirimi — belgeli stok/alım-satımlar tutmuyor (H-142); Geçmişe belge: tarih kayıt anındaki kur fotoğrafıyla kalır (BR-KUR-001)PF-02760
ERR-OBS-028GÖZLEMLENMİŞS2Dış IP / sabit IP / port yönlendirme / güvenlik duvarı izni'dış IP izin' / 'statik IP' / 'IP değişikliği'SQL: SQL Server port 1433 / Browserağ yapılandırması (ERP dışı)Kurulum/bağlantı ayarları (veri etkilenmez)PF-02875
ERR-OBS-029GÖZLEMLENMİŞS3Ek kullanıcı (istemci) kurulumu (rutin)'ek kullanıcı kurulumu'SQL: config.cfg; Sistem.Users / UserDetails; Sistem.Clientsrutin kurulumPF-02965
ERR-OBS-030GÖZLEMLENMİŞS1Cari bakiye / ekstre tutmuyor (bakiye yanlış, ters, birden değişti)'bakiye tutmuyor' / 'cari bakiye sorunu' / 'bakiye ekstresi yanlış'SQL: Cari.Islemler (IslemTuru/IslemTipi/BakiyeId); Cari.Historyyön/tip hatası, düzeltme geçmişi, tetik veya kurVirman tek bacak (H-106); Tetik kapalı (H-006); Geçmiş tarihli işlem kursuz (H-107, H-110)PF-03055
ERR-OBS-031GÖZLEMLENMİŞS3Program sürümü / exe / DLL güncellemesi (ERP Booster dahil)'versiyon güncellemesi' / 'ERPGOLD ürün sürümleri'SQL: Sistem.ERPSCHEMA; Sistem.Login.PrgVersion; Sistem.Settings.UpdateFoldersürüm dağıtımı rutin / şema-exe uyumsuzluğuPF-03165
ERR-OBS-032GÖZLEMLENMİŞS2SQL Server bağlantısı / sa şifresi / SQL kurulum hataları'SQL şifresi yenileme' / 'SQL bağlantısı'SQL: sys.databases; SQL Server servisi/Browser; config.cfgSQL servis/kimlik/ağ yapılandırmasıSistem.Users / UserGroup / UserDetailsPF-03270
ERR-OBS-033GÖZLEMLENMİŞS4Demo / sunum / tanıtım (satış öncesi)'ERP demo' / 'demo verilecektir'SQL: demo veritabanı (TD-32: demo kopyasında tetikleyiciler kapalı)satış/eğitim faaliyetiPF-03375
ERR-OBS-034GÖZLEMLENMİŞS1Stok tutmuyor / stok düzeltme / eksi stok / stok girişi'stok düzeltme' / 'stok tutmuyor' / 'stok girişi'SQL: Cari.Islemler (StokId, KasaId, IslemTipi)kasa seçimi / transfer kabulü / işlem tipi / tetik durumuStokta olmayan mal çıkılmış — negatif stok (H-123); Açılış (devir) stoğu DEVİR hesabı alacaklı (H-115, PB-035); Kurulum farkı: cari işlemin stok üretmesi döviz %1,4 / kuyumcu %60,3 (CTR-038)PF-03455
ERR-OBS-035GÖZLEMLENMİŞS2Program yavaşlığı / donma / index talebi'program yavaşlığı' / 'donma' / 'index'SQL: Cari.Islemler (26 indeks, HesapId öncülü yok)indeks eksikliği + tetikleyici maliyeti + altyapıCari.Islemler / BakiyeIslem (kilit/timeout sırasında yarım yazım)PF-03565
ERR-OBS-036GÖZLEMLENMİŞS2Yıl sonu devir işlemi ve devir sonrası fark'devir yapıldı' / 'devir sonrası bakiye farklı'SQL: SP Sistem.Devir (tetikleyiciler kapalı); ERPGLOBAL.dbo.Companydevir prosedürü adımı atlanması (tetik/takoz/kesim tarihi)Belirtilen SQL nesnesi / ekran verisiPF-03675
ERR-OBS-037GÖZLEMLENMİŞS1İşlem silme / iptal / silme onayı / silinen işlemi geri getirme'işlem silme' / 'silinmiş işlemin geri getirilmesi' / 'silme onayı'SQL: Cari.Islemler.IsDeleted; Sistem.Settings.SilGun/SilmeOnayi/MutabakatLockkullanım (iptal akışı) / yetki-onay engelleriSilme onayında işlem duruyor (H-098, FAQ-051); 'İşlem İptal Etme Yetkiniz Yok' (H-011); N gün / mutabakat / PIN engelleri (H-096, H-095, H-097)PF-03765
ERR-OBS-038GÖZLEMLENMİŞS3Hacim / kâr analiz / kâr-zarar raporu düzenleme ve hataları'hacim raporu' / 'kâr analiz raporu'SQL: AifaDev.Reports (rapor sorguları); Report/Reports/ReportsV2 şemaları (TD-47)talep / metrik tanımı farkıPF-03865
ERR-OBS-039GÖZLEMLENMİŞS3Nakit / genel stok tanımlama ve stok kartı düzenleme'stok tanımlama' / 'nakit stok tanımlama'SQL: Stok.Nakit; Stok.Genelrutin tanımlama / önbellek yenilemePF-03955
ERR-OBS-040GÖZLEMLENMİŞS1Pozisyon yanlış / aynı birim iki kez / pozisyon güncellenmiyor'pozisyonda aynı birim iki kez' / 'pozisyon tutmuyor'SQL: FN Pozisyon.GetPozisyonV1/V2/V3, GetOldPozisyon, MüşteriŞemasıD.GetPozisyon; Sistem.Birimlerçift birim tanımı / defter üretilmeyen işlem tipi / fonksiyon sürümüİşlem PEŞİN/tip 11 → bakiye hareketi yok (BR-TIP-002/004); Tetikleyici kapalı (H-006, PB-029); GetPozisyonV1/V2/V3/MüşteriŞemasıD sürüm farkı (GAP)PF-04070
ERR-OBS-041GÖZLEMLENMİŞS3Kasa / şube tanımlama ve ayarları'kasa tanımlama' / 'şube tanımlama'SQL: Sistem.Kasalar (ResmiKasa); Sistem.Subeler (IsResmi, BilancoBirimId, Entegrator)rutin tanımlama / bayrak ayarlarıPF-04160
ERR-OBS-042GÖZLEMLENMİŞS3Vadeli işlem kodu / vadeli birim / parite tanımlama, çarpan ve sıra'vadeli birim tanımlama' / 'vadeli çarpanı' / 'parite tanımlama'SQL: Sistem.Vadeli (Carpan, SiraNo); Sistem.Paritelertanım alanı (çarpan/TL karşılığı) eksik veya yanlışPF-04270
ERR-OBS-043GÖZLEMLENMİŞS2BTrans kontrol raporu / şema doğrulama hatası (vergi-TC hane, hatalı işlem, 100 USD kuralı)'BTrans hatası' / 'BTrans rapor güncelleme' / 'BTrans 100 USD'SQL: FN Muhasebe.EDovizKontrolRaporuBTrans; SP Muhasebe.SPBTRANSDoviz; Cari.Hesaplar.VergiNo/TCKNcari kart kimlik/vergi alanı hatalı veya belgelendirilmiş işlem alanı eksikYılbaşı/limit güncellemesi yapılmamış aylarda kontrol raporu hata üretir (H-165, H-166 — GAP: BTrans bağı doğrulanmadı); 'BTrans 100 USD' başlıkları: 100 USD eşiği kuralı wiki'de belgeli değil (GAP)PF-04375
ERR-OBS-044GÖZLEMLENMİŞS3Genel tanımlama / ayar / düzenleme (belirtisiz)'tanımlama' / 'istenilen ayarlar'SQL: Sistem.Settings / ??PF-04440
ERR-OBS-045GÖZLEMLENMİŞS2Kur giriş ekranı / kur listesi boş / kur yanlış geliyor'kur giriş ekranı' / 'kur yanlışlığı'SQL: Sistem.Kurlar; FN Sistem.GetKurListesigünün kur listesi boş / alış kuru varsayımıBelirtilen SQL nesnesi / ekran verisiPF-04555
ERR-OBS-046GÖZLEMLENMİŞS2Takoz / çeşni / ayar evi işlemleri ve tanımları'takoz fişi' / 'takoz işlemi' / 'ayar evi tanımlama' / 'çeşni stokları'SQL: Cari.Islemler; Stok.Takoz; Sistem.AyarEvitakoz numarası/kasa/milyem/işçilik giriş hatası (kullanım)Belirtilen SQL nesnesi / ekran verisiPF-04670
ERR-OBS-047GÖZLEMLENMİŞS4Fiş tasarımı / fiş dizaynı / fişte yazı tipi bozuk'fiş tasarımı' / 'fiş dizaynı' / 'fişte yazılar bozuk'SQL: AifaDev.ReportLayouts / Sistem.Clientstalep (tasarım) / font eksikliğiPF-04770
ERR-OBS-048GÖZLEMLENMİŞS1Vadeli / parite / arbitraj / çevir işleminde tutar-miktar yanlış veya tek bacak kaldı'vadeli işlemde miktar yanlış' / 'arbitraj işlemi yanlış'SQL: Cari.Islemler; Sistem.Vadeli.Carpan; Cari.Hesaplar.OnsCarpan; Sistem.Settings.OnsCarpanikinci bacak kaydı başarısız / çarpan-ons ayarıVADELİ'de ARBİTRAJ/FATURA tipi çift satır yoluna girer (H-061); Nakit PARİTE/EMANET karışıklığı (H-058, BR-TIP-011); PARİTE (X) kaydı düzeltilemez (H-080)PF-04860
ERR-OBS-049GÖZLEMLENMİŞS2Panoya fiyat gitmiyor / pano ayarları / pano formatı'panoya fiyat gitmiyor' / 'pano ayarları'SQL: Sistem.GetPanoText; Sistem.KurlarEDS akışı veya pano bağlantı/format yapılandırmasıKurulum/bağlantı ayarları (veri etkilenmez)PF-04975
ERR-OBS-050GÖZLEMLENMİŞS3Bilanço alma/silme/tarih/mantık soruları ve geniş bilanço talebi'bilanço silme' / 'bilanço soruları cevaplandı' / 'bilanço deviri'SQL: Bilanco.Bilancolar (silme yalnız SQL — PROC-54)kullanım/eğitim; silme işlevi programda yokPF-05060
ERR-OBS-051GÖZLEMLENMİŞS2e-Belge işlem limiti güncellemesi (5.000 $ / 85.000 TL / 185.000 TL) ve kimlik zorunluluğu'5.000/85.000 güncellemesi' / 'limit güncellemesi'SQL: Sistem.Subeler.EBelgeUsdLimit / EBelgeTlLimit / EBelgeTcknControlmevzuat değişikliği → parametre güncellemesi (rutin)Kurulum/bağlantı ayarları (veri etkilenmez)PF-05175
ERR-OBS-052GÖZLEMLENMİŞS4Müşteri istek / talep / geliştirme (arıza değil)'müşteri istekleri yerine getirildi' / 'istenilen işlem'SQL: —talepPF-05255
ERR-OBS-053GÖZLEMLENMİŞS2RDP (uzak masaüstü) bağlantı / giriş / parola sorunu'RDP bağlantı hatası' / 'RDP giriş sorunu'SQL: Sistem.RDPRDP parola süresi / ağ erişimiSistem.Users / UserGroup / UserDetailsPF-05370
ERR-OBS-054GÖZLEMLENMİŞS2Yedek alma / restore / sync'yedek alma' / 'backup alınamıyor'SQL: BACKUP DATABASE / RESTORErutin talep / dosya izinleriKurulum/bağlantı ayarları (veri etkilenmez)PF-05475
ERR-OBS-055GÖZLEMLENMİŞS3Model / pırlanta / taş / emtia / görsel / üretim modülü'model tanımlama' / 'görsel gelmiyor' / 'üretim modülü'SQL: Cari.Islemler; Stok.Model; Stok.Pirlanta; Stok.Tas; Stok.Emtiaekran kuralları (eğitim) / tanımPF-05555
ERR-OBS-056GÖZLEMLENMİŞS2Hurda / milyem / işçilik / has-gram fiyat davranışları'hurda tanımlama' / 'milyem gözükmüyor' / 'işçilik'SQL: Cari.Islemler; Stok.Maden; Cari.Fiyatlarekran iş kuralı beklentiden farklı (eğitim) / tanımBelirtilen SQL nesnesi / ekran verisiPF-05655
ERR-OBS-057GÖZLEMLENMİŞS2İstatistik kodu / KDV / BSMV / vergi no hatası'istatistik kodu çıkmıyor' / 'KDV güncellemesi' / 'BSMV ayarı'SQL: FN FN.GetIstatistikKodu; VW Cari.FaturaBilgileri; Cari.Hesaplar.HukukiKodhesap kartında hukuki kod / kimlik alanı eksik ya da eşleşmiyorVKN 10 / TCKN 11 hane kuralı (BR-FATURA-001, H-146); BSMV hesabı Cari.FaturaBilgileri görünümünden (FAQ-093)PF-05765
ERR-OBS-058GÖZLEMLENMİŞS1Geçmiş tarihe işlem / işlem tarihi düzeltme / N gün kuralı'geçmişe dönük işlem' / 'işlem tarihi' / 'tarihler yanlış geliyor'SQL: Cari.Islemler.Tarih / Vade (TD-40); Sistem.Kurlar (o günün kuru)geçmiş tarihe kur listesi yok / düzeltme günü kuralı'İşlem Tarihinden İtibaren N Gün Geçmiştir' düzeltme engeli (H-096, Settings.DuzeltmeGun); Seçtiğim tarih kaydedilmedi (H-081); TxtTarih Vade kolonuna yazıyor (TD-40); Düzeltmede kur fotoğrafı yenilenPF-05860
ERR-OBS-059GÖZLEMLENMİŞS2Ek kullanıcı / şube bilgisayarı programa bağlanamıyor'ek kullanıcı programa giremiyor' / 'ek kullanıcı bağlantı sorunu'SQL: SQL Browser/TCP 1433; config.cfg (Server Name)sunucu adresi/IP değişimi, güvenlik duvarıKurulum/bağlantı ayarları (veri etkilenmez)PF-05970
ERR-OBS-060GÖZLEMLENMİŞS3Cari hesap / kart tanımlama, hesap türü, adres-unvan değişikliği'hesap tanımlama' / 'cari kart' / 'adres değişikliği'SQL: Cari.Hesaplar; Cari.Kartlar; Cari.ExLimitrutin tanımlama / hesap durumuPF-06055
ERR-OBS-061GÖZLEMLENMİŞS3Barkod ayarı / barkod okuyucu / barkod düzenlemesi'barkod ayarı' / 'barkod düzenlemesi'SQL: ??PF-06165
ERR-OBS-062GÖZLEMLENMİŞS2Kullanıcı şifresi / PIN / yönetici şifresi (unutma, değiştirme, kabul edilmiyor)'kullanıcı şifresi' / 'şifre yenileme' / 'PIN kodu'SQL: Sistem.Users.Password; UserDetailskullanıcı yönetimi (rutin) / atama eksikSistem.Users / UserGroup / UserDetailsPF-06265
ERR-OBS-063GÖZLEMLENMİŞS1Kasa bakiyesi / kasa stoğu tutmuyor'kasa tutmuyor' / 'kasa düzeltme' / 'kasa stoğu problemi'SQL: Cari.Islemler (IslemTipi, KasaId)işlem tipi/kasa seçimi hatasıTransfer karşı kasada kabul edilmemiş (H-114); Cari bakiye kasaya bölünmez, stok kasa bazlıdır (TBL-CARI.ISLEMLER KasaId); Perakendede kasa değiştirilemiyor (H-090)PF-06355
ERR-OBS-064GÖZLEMLENMİŞS3Bilgisayar / ağ / kamera / disk donanım desteği (ERP dışı)'donanım' / 'bilgisayar' / 'kamera' / 'wifi'SQL: —müşteri donanımı/ağı (ERP dışı)PF-06455
ERR-OBS-065GÖZLEMLENMİŞS3Şifreli hesap / master hesap / kart şifresi'şifreli hesap' / 'master hesap tanımlama'SQL: Cari.Kartlar (şifre alanı); Cari.Hesaplartanım (yapılandırma)PF-06575
ERR-OBS-066GÖZLEMLENMİŞS2Provizyon (şubeler arası onay bekleyen işlem)'provizyon' / 'provizyon iptal'SQL: Cari.Islemler (provizyon durumu); Sistem.Settings.Provizyoniki adımlı onay kuralı bilinmiyor (eğitim)Belirtilen SQL nesnesi / ekran verisiPF-06675
ERR-OBS-067GÖZLEMLENMİŞS1Hesap işlemlerini başka hesaba aktarma / cari-program sıfırlama / hesap temizleme'cari sıfırlama' / 'ERP sıfırlandı' / 'hesap birleştirme'SQL: Cari.Islemler.HesapId (toplu güncelleme); Repair.BalanceRepair (yasak)yanlış hesap seçimi / yeniden başlangıç talebiProgram/cari 'sıfırlama' talebi: toptan onarım aracı Repair.BalanceRepair destek tarafından çalıştırılmaz (TD-30, FAQ-079)PF-06755
ERR-OBS-068GÖZLEMLENMİŞS2Kasa/şube arası transfer: karşı kasada görünmüyor / stok hareketinde yanlış tarih'transfer işlemi' / 'transfer karşı kasada görünmüyor'SQL: Stok transfer kayıtları; FN Stok.GetStokHareketlerikabul adımı atlanmış / fonksiyon tarih kaynağıBelirtilen SQL nesnesi / ekran verisiPF-06865
ERR-OBS-069GÖZLEMLENMİŞS2Arşiv (önceki yıl) veritabanına erişim / "İŞLEME KAPATILMIŞTIR"'arşiv' / 'geçen yılın işlemleri kayboldu'SQL: ERPGLOBAL.dbo.Company.DBName; arşiv DBkullanıcı arşiv DB seçmiş / arşive erişim kısıtıBelirtilen SQL nesnesi / ekran verisiPF-06965
ERR-OBS-070GÖZLEMLENMİŞS2Rapor hata veriyor / yanlış-boş geliyor (divide by zero, invalid column, süzgeç)'rapor hatası' / 'hareket detayı boş geliyor' / 'invalid column name'SQL: AifaDev.Reports sorgusu; FN FN.Bol; Report/Reports/ReportsV2 şemaları (TD-47)rapor sorgusu hatası / şema uyumsuzluğu / süzgeç etiketiRapor çıktısı (veri etkilenmez)PF-07060
ERR-OBS-071GÖZLEMLENMİŞS2Bakiye ekstresi / bilanço / rapor zaman aşımı (timeout)'bakiye ekstresi timeout' / 'bilanço zaman aşımı'SQL: FN Reports.BakiyeListesi; Bilanco fonksiyonları; Cari.Islemler indeksleri; Sistem.Kurlarsorgu/fonksiyon performansı ve indeks eksikliğiCari.Islemler / BakiyeIslem (kilit/timeout sırasında yarım yazım)PF-07175
ERR-OBS-072GÖZLEMLENMİŞS3Hizmet / masraf / komisyon işlemi ve tanımı'hizmet tanımlama' / 'hizmet işlemi' / 'masraf çıkışı'SQL: Cari.Islemler; Stok.Hizmetekran davranışı (eğitim) / tanımPF-07260
ERR-OBS-073GÖZLEMLENMİŞS3Üçüncü parti entegrasyon (NetEkstre, banka, MT5/senkronizasyon)'netekstre entegrasyonu' / 'MT5 to ERP senkronizasyonu'SQL: ??PF-07360
ERR-OBS-074GÖZLEMLENMİŞS2Lisans aşıldı / her açılışta yeniden lisans istiyor'lisans aşıldı hatası' / 'tekrar lisans istiyor'SQL: Sistem.Clients (SerialKey, bilgisayar adı)bilgisayar adı çakışması / config.cfg yeniden yazılmasıSistem.Users / UserGroup / UserDetailsPF-07470
ERR-OBS-075GÖZLEMLENMİŞS3ERP Mobil / web kurulumu ve bağlantısı'ERP mobil kurulumu' / 'mobil giriş yapılamıyor'SQL: sunucu kaydı IP (PROC-129); Sistem.Users (varsayım)sunucu IP/port yapılandırmasıPF-07565
ERR-OBS-076GÖZLEMLENMİŞS1Maden maliyeti tuhaf / çok yüksek / bir günde sıçradı'maden maliyet sorunu' / 'maliyet bozuk'SQL: FN Stok.GetMadenMaliyeti (TOP 50, güncel kur)maliyet fonksiyonu tasarımı (TD-23) + hatalı girişCari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-07670
ERR-OBS-077GÖZLEMLENMİŞS1Virman hatalı / bir hesapta var diğerinde yok'virman probleminde karşı bacağı bulamıyor' / 'virman problemi'SQL: Cari.Islemler (iki satır)ikinci bacak kaydı başarısız; transaction yok (TD-01)Virmanda BORÇ seçince başlık 'VIRMAN GIRIS' (H-064); Hedef hesap bulunamıyor (H-065); VaryantId karşı işlem Id'si tutuyor — ad yanıltıcı (TD-39)PF-07775
ERR-OBS-078GÖZLEMLENMİŞS2MASAK yasaklı sorgusu / şüpheli işlem raporu / OptimalScan'şüpheli işlemler raporu' / 'MASAK güncellemesi' / 'yasaklı sorgulama entegrasyonu'SQL: ? (OptimalScan entegrasyonu, MASAK rapor sorguları)mevzuat/entegrasyon yapılandırmasıRapor çıktısı (veri etkilenmez)PF-07870
ERR-OBS-079GÖZLEMLENMİŞS3Terazi miktarı ekrana gelmiyor / terazi ayarları'terazi ayarları' / 'terazi miktarını yansıtmıyor'SQL: Sistem.Clients (ComPort/BaudRate — CFG-CLIENT-COMPORT GAP)kablo/port/baud yapılandırmasıPF-07975
ERR-OBS-080GÖZLEMLENMİŞS2Perakende / peşin işlem ekranı / gişe'peşin işlem ekranı' / 'perakende satış ekranı'SQL: Cari.Islemler (IslemKodu perakende)ekran kuralları/eşikler (eğitim)Belirtilen SQL nesnesi / ekran verisiPF-08060
ERR-OBS-081GÖZLEMLENMİŞS3Diğer / sınıflanamayan (belirtisiz başlık)?SQL: ??PF-08110
ERR-OBS-082GÖZLEMLENMİŞS2H-001 — Program açılışında bağlantı ayarları ekranı geliyor / sunucuya bağlanamıyorProgram açılınca giriş ekranı yerine bağlantı ayarları (Configuration Settings) penceresi çıkıyor ya da "bağlanılamadı"Örnek adı bilinmiyorsa sunucuda `Select @@SERVERNAME` çalıştırılır; sonuçta "\" işaretinden sonraki bölüm örnek adıdır.Sunucu adı yanlış girilmiş, SQL örnek (instance) adı yazılmamış, ya da klavyede CAPS LOCK açıkken şifre girilmiş.Sistem.Users / UserGroup / UserDetailsPF-00685
ERR-OBS-083GÖZLEMLENMİŞS2H-002 — Ek kullanıcı bilgisayarından programa girilemiyorAna bilgisayarda program çalışıyor; ikinci (ek kullanıcı) bilgisayarda açılışta bağlantı hatası alınıyor.Ek kullanıcı bilgisayarındaki bağlantı ayarında sunucu adı/adresi yanlış ya da ana bilgisayarın adresi değişmiş.Kurulum/bağlantı ayarları (veri etkilenmez)PF-05970
ERR-OBS-084GÖZLEMLENMİŞS2H-003 — Program bazen bağlanıyor, bazen bağlanamıyor; ek kullanıcılar kopuyorAynı bilgisayardan bazen giriş yapılıyor, bazen bağlantı hatası çıkıyor; özellikle ek kullanıcılarda.Windows güvenlik duvarı veya virüs koruması SQL bağlantısını engelliyor.Sistem.Users / UserGroup / UserDetailsPF-00685
ERR-OBS-085GÖZLEMLENMİŞS2H-004 — Sunucunun adresi değiştiği için bağlantı kopuyorEk kullanıcılar bir gün çalışıp ertesi gün bağlanamıyor; ana bilgisayar yeniden başlatılınca sorun başlıyor.Sunucu bilgisayara ağdan otomatik (değişken) adres veriliyor.Kurulum/bağlantı ayarları (veri etkilenmez)PF-00670
ERR-OBS-086GÖZLEMLENMİŞS2H-005 — "A cursor with the name ... already exists" hatasıİşlem kaydederken ekrana İngilizce "cursor ... already exists" içeren bir hata geliyor; sonraki kayıtlar da hata veriyorBir önceki kayıt sırasında sunucu tarafında yarım kalan bir işlem bağlantıyı kilitlemiş.Cari.Islemler / BakiyeIslem (kilit/timeout sırasında yarım yazım)PF-00670
ERR-OBS-087GÖZLEMLENMİŞS2H-006 — İşlem kaydediliyor ama bakiye ve stok hiç oluşmuyorİşlem listesinde satır görünüyor, fakat müşteri bakiyesi ve stok listesi hiç etkilenmiyor. Hata mesajı yok.```sql
Select name, is_disabled From sys.triggers Where parent_id = OBJECT_ID('Cari.Islemler')
```
`AcceptTransaction` için `is_disabled = 1` ise `Alter Table Cari.Islemler ENABLE TRIGGER ALL` çalıştı
İşlem kaydını bakiye ve stok defterine yazan otomatik kural sunucuda kapatılmış (genellikle devir veya bakım sırasında kapatılıp açılması unutulmuş).Kurulum/bağlantı ayarları (veri etkilenmez)PF-03485
ERR-OBS-088GÖZLEMLENMİŞS2H-007 — "BU VERI TABANI ISLEME KAPATILMISTIR." mesajıHerhangi bir işlem kaydedilmek istendiğinde büyük harflerle "BU VERI TABANI ISLEME KAPATILMISTIR." uyarısı çıkıyor.Program, devir sonrasında arşive alınan **önceki yılın** veritabanına bağlı. Arşiv veritabanı bilinçli olarak işleme kapatılmıştır; yalnız bakılabilir.Belirtilen SQL nesnesi / ekran verisiPF-00670
ERR-OBS-089GÖZLEMLENMİŞS2H-008 — Devir sonrası "geçen yılın işlemleri kayboldu"Yıl sonu devrinden sonra hesabın eski işlemleri listede görünmüyor; bakiye tek satır "DEVİR" olarak geliyor.Bu bir hata değildir. Devirde önceki yılın işlemleri ayrı (arşiv) veritabanına alınır; güncel veritabanında yalnız devir bakiyesi ve devir stoğu kalır.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-06985
ERR-OBS-090GÖZLEMLENMİŞS2H-009 — Kullanıcı adı / şifre kabul edilmiyorGiriş ekranında doğru bilindiği hâlde kullanıcı adı veya şifre reddediliyor.CAPS LOCK açık; kullanıcı henüz tanımlanmamış; ya da kullanıcı silinmiş.Sistem.Users / UserGroup / UserDetailsPF-01070
ERR-OBS-091GÖZLEMLENMİŞS2H-010 — Yeni kullanıcı girdi ama şube/kasa seçemiyor, hiçbir ekran açılmıyorKullanıcı giriş yapıyor; şube-kasa listesi boş geliyor ya da programda hiçbir menü çalışmıyor.Kullanıcı tanımlanırken şube, kasa ve yetki grubu ataması yapılmamış.Sistem.Users / UserGroup / UserDetailsPF-01070
ERR-OBS-092GÖZLEMLENMİŞS2H-011 — "İşlem Düzeltme Yetkiniz Yok." / "İşlem İptal Etme Yetkiniz Yok."İşlem listesinde **DÜZELT** veya **İPTAL** butonuna basılınca bu mesaj çıkıyor; ya da butonlar hiç görünmüyor.Kullanıcının bağlı olduğu yetki grubunda işlem düzeltme / iptal yetkisi kapalı.Sistem.Users / UserGroup / UserDetailsPF-02070
ERR-OBS-093GÖZLEMLENMİŞS2H-012 — Bazı işlem ekranları (TAKOZ, EMTİA, ÇEŞNİ, vb.) menüde görünmüyor veya düzeltmeye açılmıyorAna menüdeki bazı butonlar yok; ya da işlem listesinden bir takoz/emtia satırına **DÜZELT** deyince hiçbir şey olmuyor.Yetki grubunda ilgili modül (takoz işlemleri, emtia işlemleri vb.) kapalı. Program yetkisiz modülün düzeltme ekranını açmaz ve mesaj vermez.Sistem.Users / UserGroup / UserDetailsPF-02085
ERR-OBS-094GÖZLEMLENMİŞS2H-013 — Lisans girişi nasıl yapılırProgram lisans istiyor.İlk kurulum, bilgisayar değişikliği ya da lisans süresinin dolması.Sistem.Users / UserGroup / UserDetailsPF-00270
ERR-OBS-095GÖZLEMLENMİŞS2H-014 — Program her açılışta yeniden lisans istiyorLisans girildiği hâlde ertesi gün (ya da başka bir bilgisayardan giriş yapılınca) yeniden lisans isteniyor.Bağlı istemciler `Sistem.Clients` tablosunda `BİLGİSAYARADI\KULLANICIADI` biçiminde görünür. Farklı adreslerden gelen aynı ad, lisans çakışmasının kanıtıdır.İki olası neden: (a) ağdaki iki bilgisayarın **bilgisayar adı ve Windows kullanıcı adı aynı**; program bunları tek istemci sanıp birbirinin lisansını düşürüyor.Sistem.Users / UserGroup / UserDetailsPF-07485
ERR-OBS-096GÖZLEMLENMİŞS2H-015 — "Lütfen Form Şifresini Giriniz"Bir rapor veya özel ekran açılırken şifre isteniyor.O rapor/ekran tanımlanırken şifre konmuş (yönetim raporları için bilinçli bir kısıt).Sistem.Users / UserGroup / UserDetailsPF-06570
ERR-OBS-097GÖZLEMLENMİŞS2H-016 — "Lütfen İşlem Yapabilmek İçin Kart Şifresini Giriniz."Karşı hesap seçilirken veya şifreli bir hesap açılırken kart şifresi soruluyor.Hesap, **Master (şifreli) hesap** grubuna bağlanmış.Sistem.Users / UserGroup / UserDetailsPF-06570
ERR-OBS-098GÖZLEMLENMİŞS2H-017 — Master hesap şifresi tanımlandı ama hesap şifresiz açılıyor**Hesap Yönetimi > Master** ile şifreli hesap tanımlandı, hesap kartında bağlandı; yine de şifre sorulmuyor.Tanımdan sonra Sistem Yenile yapılmamış.Sistem.Users / UserGroup / UserDetailsPF-06570
ERR-OBS-099GÖZLEMLENMİŞS2H-018 — "Lütfen Yönetici Şifrenizi Giriniz" (Fiş No ile iptal)İşlem listesinde **İPTAL (FişNo)** kullanılınca yönetici şifresi soruluyor.Fiş numarasıyla toplu iptal, aynı fişteki tüm satırları o kasada iptal ettiği için yönetici şifresine bağlanmıştır.Sistem.Users / UserGroup / UserDetailsPF-06285
ERR-OBS-100GÖZLEMLENMİŞS2H-019 — Aifa Developer Studio / Rapor tasarımı sekmesi görünmüyorRapor eklemek veya düzenlemek için gereken sekme menüde yok.Bu sekme yalnız ADMIN kullanıcısında görünür.Rapor çıktısı (veri etkilenmez)PF-00470
ERR-OBS-101GÖZLEMLENMİŞS3H-020 — Yeni tanımlanan birim / hesap / vadeli kod listelerde çıkmıyor**BİRİM LİSTESİ**, **HESAPLAR** veya **VADELİ İŞLEM KODLARI**'nda yeni kayıt yapıldı; işlem ekranındaki seçim listelerinProgram tanım listelerini açılışta belleğe alır; yeni tanım için yenileme gerekir.PF-02170
ERR-OBS-102GÖZLEMLENMİŞS3H-021 — Hesap kartında bakiyesi olmayan birim görünmüyor (veya görünmesi isteniyor)Müşterinin USD bakiyesi 0 olduğu için cari kartın ALACAK/BORÇ bölümünde USD satırı yok; personel "birim silindi" sanıyorBirim tanımında **Sabit** kutucuğu işaretli değil. Sabit olmayan birimler yalnız bakiyesi varken listelenir.PF-02385
ERR-OBS-103GÖZLEMLENMİŞS3H-022 — Yeni birimin kuru yanlış çarpanla geliyorYeni tanımlanan birimde fiyat alanı beklenenin katı/kesri geliyor.Birim tanımındaki **Çarpan** alanı 1 dışında bir değer.PF-02370
ERR-OBS-104GÖZLEMLENMİŞS3H-023 — Aynı birim listede iki kez varBirim listesinde aynı kod iki satır; pozisyon ve hacim raporunda aynı birim iki kez görünüyor.Birim iki kez tanımlanmış (genellikle silinen birimin yeniden açılması).PF-02385
ERR-OBS-105GÖZLEMLENMİŞS3H-024 — Belge akışı bayrağı (IsResmi/ResmiKasa) kapalı — Seri İşlemler şeridi ve stok listesi görünmüyorKullanıcının ticket dilindeki belirti: kontrol görünümüne (ekran etiketi "resmi", legacy) geçince stok listeleri boş; beŞube kartında `IsResmi` ya da kasa kartında `ResmiKasa` bayrağı kapalı (ekran etiketleri "RESMİ ŞUBE" / "RESMİ KASA" — legacy adlandırma; bayraklar yetkili müesPF-01470
ERR-OBS-106GÖZLEMLENMİŞS3H-025 — Yeni şubede bilanço boş veya yanlış birimde geliyorYeni açılan şubede bilanço raporu boş ya da toplamlar beklenen birimde değil.Şube tanımında **Bilanço** ve **Birim** alanları seçilmeden kaydedilmiş.PF-00570
ERR-OBS-107GÖZLEMLENMİŞS3H-026 — Maden stok adı değiştirilemiyor**MADEN STOK TANIMLAMA**'da bir ürünün adını değiştirip kaydetmeye çalışınca program kabul etmiyor.Üründe stok hareketi var; program hareketli stoğun adının değiştirilmesine izin vermez.PF-02170
ERR-OBS-108GÖZLEMLENMİŞS3H-027 — Maden stok milyemi değiştirilemiyor / ekranda milyem kutusu kilitliMADEN ekranında **MİLYEM** alanına yazılamıyor; ya da stok tanımında milyem güncellenmiyor.Stok kartında milyemin "değişmez" olduğu ayarlanmış.PF-02170
ERR-OBS-109GÖZLEMLENMİŞS3H-028 — Peşin maden satışında fiyat has'a göre geliyor, gram üzerinden olması isteniyorPEŞİN maden satışında **FİYAT** alanı ürünün has karşılığına göre hesaplanıyor; müşteri gram fiyatı istiyor.Stok kartında fiyat tipi has olarak tanımlı.PF-05670
ERR-OBS-110GÖZLEMLENMİŞS3H-029 — HURDA ekranı açılıyor ama F2 hiçbir şey yapmıyorHURDA ekranında alanlar dolduruluyor, **F2 - KAYIT** basılıyor, ne kayıt oluyor ne mesaj çıkıyor.HURDA ekranı stok kodunu sabit "995" olarak arar. Bu kodda bir hurda stoğu tanımlı değilse ekran sessizce hiçbir şey yapmaz.PF-05670
ERR-OBS-111GÖZLEMLENMİŞS3H-030 — Vadeli işlemde çarpan yanlışVADELİ ekranında miktar × fiyat çarpımı beklenenden farklı (ör. 1000 kat) çıkıyor.Vadeli işlem kodunun **Çarpan** alanı yanlış.PF-04270
ERR-OBS-112GÖZLEMLENMİŞS3H-031 — Vadeli birimlerin sırası değiştirilmek isteniyorVADELİ ekranında kodlar istenen sırada değil.`Select * from Sistem.Vadeli` ile mevcut sıra görülür; yer değiştirecek iki kaydın sıra alanı `Update` ile karşılıklı değiştirilir. Her iki kayıt için ayrı `Update` gerekir.Sıra numarası tanımda değiştirilemiyor.PF-04285
ERR-OBS-113GÖZLEMLENMİŞS3H-032 — Parite fiyatı tersten geliyorVADELİ ekranında örneğin HASEUR bağlantısı yapılırken fiyat 47.790 olması gerekirken bambaşka bir değer geliyor.**PARİTE TANIMLAMA**'da aynı çift için ters yönlü (ör. EUR/HAS) bir parite de tanımlı; program yanlış yönü seçiyor.PF-04270
ERR-OBS-114GÖZLEMLENMİŞS3H-033 — Model stoklarında görsel gelmiyorModel tanımında görsel adı yazıldığı hâlde resim görünmüyor.Resim dizini tanımlı değil ya da dosya beklenen klasörde değil.PF-05570
ERR-OBS-115GÖZLEMLENMİŞS3H-034 — Hesaba göre takoz çıkış işçiliği sabitlenmek isteniyorBelirli bir müşteride her takoz çıkışında işçilik elle yazılıyor.Hesap kartında takoz işçiliği tanımlı değil.70
ERR-OBS-116GÖZLEMLENMİŞS3H-035 — İstatistik kodu gelmiyor / "Lütfen Istatistik Kodunu Giriniz."E-belge veya fatura keserken istatistik kodu boş; program "Lütfen Istatistik Kodunu Giriniz." diyor.`FN.TEST_ISTATISTIK_KODU @IslemId` çalıştırılır: birinci liste hesabın türü ve hukuki kodunu, ikinci liste o tür için `Cari.Istatistik` tanımlarını, üçüncüsü hesaplanan kodu gösterir. Kod boş geliyorsHesabın **hesap türü** ve **hukuki kodu** için istatistik kodu tanımlanmamış.PF-05785
ERR-OBS-117GÖZLEMLENMİŞS2H-036 — F2'ye basılıyor, hiçbir şey olmuyor, mesaj da yokEkran dolduruldu, **F2 - KAYIT** basıldı; ne kayıt oluştu ne uyarı çıktı.Ekranların çoğu, zorunlu bir seçim eksikse **sessizce** çıkar: stok kodu seçilmemiş, hesap seçilmemiş, HURDA'da 995 kodlu stok yok (H-29), TAKOZ Ç'de takoz seçiBelirtilen SQL nesnesi / ekran verisiPF-01270
ERR-OBS-118GÖZLEMLENMİŞS2H-037 — "Sube,Kasa veya Hesap Seçili Değil. İşlem Yapamazsınız."Kayıt anında bu mesaj çıkıyor.Cari İşlemler'de hesap seçilip **TAMAM** denmeden işlem ekranı açılmış; ya da kullanıcının şube/kasa ataması yok (H-10). PARİTE (X) ekranında bir işlem düzeltilKurulum/bağlantı ayarları (veri etkilenmez)PF-01270
ERR-OBS-119GÖZLEMLENMİŞS2H-038 — "İşlem Yapabilmek için Miktar Girmelisiniz."Kayıtta bu mesaj çıkıyor.**MİKTAR** alanı 0. HİZMET ekranında miktar alanı olmadığı için bu mesaj **TUTAR** boş demektir. Adetli stokta adet girilmiş ama miktar hesaplanmamışsa da çıkarCari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-01270
ERR-OBS-120GÖZLEMLENMİŞS2H-039 — "Lütfen Tutar Giriniz." — özellikle PEŞİN işlemdePEŞİN/BEDELLİ/MİKTAR tipli işlemde veya NAKİT ekranında bu mesaj çıkıyor; oysa miktar girilmiş.**TUTAR** 0 hesaplanmış. En sık sebep: **kur listesi girilmemiş** (fiyat 0 geliyor → tutar 0). İkinci sebep: **BİRİM** seçilmemiş ya da birimin nakit karşılığıKurulum/bağlantı ayarları (veri etkilenmez)PF-04570
ERR-OBS-121GÖZLEMLENMİŞS2H-040 — "Geçmiş Tarihe İşlem Giriyorsunuz. Devam Etmek İstiyormusunuz ?"Kayıt anında bu soru çıkıyor.Hesap seçim panelindeki **TARİH** bugünden eski. Bilinçli geçmiş tarihli kayıt yapılıyorsa normaldir; değilse önceki işlemden kalan tarih unutulmuştur.Belirtilen SQL nesnesi / ekran verisiPF-05870
ERR-OBS-122GÖZLEMLENMİŞS2H-041 — "Satım Fiyatınız X Fiyattan %Y farklı. Bu İşlemi Dikkatli Gerçekleştiriniz. Devam Etmek istiyor musunuz?"NAKİT, VADELİ, PARİTE veya PERAKENDE (döviz) işleminde bu uyarı çıkıyor.Girilen fiyat, pano fiyatından **Settings > İzinler > İşlem Kur Farkı Yüzdeliği (%)** ile belirlenen orandan fazla sapıyor. Ya fiyat yanlış yazılmış ya da kur lCari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-04570
ERR-OBS-123GÖZLEMLENMİŞS2H-042 — "Hesap Limiti Aşılıyor. İşlemi Kayıt Edemezsiniz..! Kalan Müşteri Limiti N HAS"MADEN/HURDA/NAKİT çıkışında (PEŞİN dışı) bu mesaj çıkıyor.Şubede limit kontrolü açık ve müşterinin hesap kartındaki has cinsinden limiti dolmuş.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-06070
ERR-OBS-124GÖZLEMLENMİŞS2H-043 — Hesap seçildi ama işlem butonları görünmüyor; "Seçili Hesap Pasif (...)" / "Master Hesap Pasif (...)"Hesap seçilip **TAMAM** denince alt menüdeki işlem butonları, **DÜZELT** ve **İPTAL** yok; bilgi panelinde pasif yazısıHesap kartı ya da bağlı olduğu master hesap **pasif** durumda. Parantez içinde pasife alınma açıklaması yazar.Kurulum/bağlantı ayarları (veri etkilenmez)PF-06070
ERR-OBS-125GÖZLEMLENMİŞS2H-044 — Belirli bir müşteride kayıt hiç çalışmıyor, diğer müşterilerde çalışıyorAynı ekrandan başka hesaba kayıt oluyor; bu hesapta F2 basılınca kayıt oluşmuyor ya da "işlem geri alındı" türünde bir h`Select * from Cari.GetGerekliEvraklar(@HesapId)` boş dönmüyorsa kayıt otomatik kural tarafından geri alınıyordur. Evrak veritabanı (`DOCUMENTS`) sunucuda yoksa **hiçbir hesaba** kayıt yapılamaz: `SelHesabın **zorunlu evrakı (kimlik / uyum belgesi) eksik**. Evrak zorunluluğu açık olan sistemlerde eksik evraklı hesaba hiçbir işlem yazılamaz. Şube pasifse de aBelirtilen SQL nesnesi / ekran verisiPF-01285
ERR-OBS-126GÖZLEMLENMİŞS2H-045 — Fiyat alanı satışta da alış kurunu getiriyorÇIKIŞ/SATIŞ seçildiği hâlde **FİYAT** alanına kur listesinin ALIŞ değeri geliyor.Programın davranışıdır: kur listesinden fiyat alanına gelen değer, yön ne olursa olsun **ALIŞ** kurudur.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-04570
ERR-OBS-127GÖZLEMLENMİŞS2H-046 — Kur değişti ama ekrandaki fiyat eskiPano/kur listesi güncellendi; açık duran işlem ekranında **FİYAT** hâlâ eski.Program kur listesini 15 saniyede bir yeniler, fakat açık ekrandaki fiyat alanı kendiliğinden değişmez.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-04570
ERR-OBS-128GÖZLEMLENMİŞS2H-047 — "Karşı Hesaba Transfer Edilemedi. Lütfen İşlemi Manuel Olarak Gerçekleştiriniz." / "Karşı Hesaba İşlem Yapılamadı."**KARŞI HESAP** = EVET ile kayıt yapılırken bu mesaj çıkıyor.Ana kayıt yazıldı, karşı hesaba yazılacak ikinci satır başarısız oldu (karşı hesap pasif, evrakı eksik, şifreli, limiti dolu vb.). **Ana satır silinmez**; tek tSistem.Users / UserGroup / UserDetailsPF-07785
ERR-OBS-129GÖZLEMLENMİŞS2H-048 — "Lütfen Adet Giriniz."MADEN'de kayıt anında bu mesaj.Seçilen stok **adetli** (künye, bilezik gibi sabit gramlı ürün) tanımlı; **ADET** 0.Belirtilen SQL nesnesi / ekran verisi70
ERR-OBS-130GÖZLEMLENMİŞS2H-049 — Milyem yazıyorum, siliniyor; işçilik fiyatı kendiliğinden değişiyor**MİLYEM** alanına stok milyeminden yüksek bir değer yazılınca değer eski hâline dönüyor ve **FİYAT** (işçilik) artıyor.Peşin olmayan işlemde program, stok milyeminin üstündeki farkı işçiliğe çevirir; milyemi karttaki değere geri alır. Bilinçli bir davranıştır.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-05670
ERR-OBS-131GÖZLEMLENMİŞS2H-050 — Aynı üründe bu müşteriye başka işçilik/birim geliyorÇIKIŞ'ta **FİYAT** ve **BİRİM** alanları her müşteride farklı doluyor; ekranda bunu gösteren bir işaret yok.Müşteriye özel fiyat tanımı var; program çıkışta önce müşteriye özel fiyatı, yoksa stok fiyatını getirir.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-05670
ERR-OBS-132GÖZLEMLENMİŞS2H-051 — Maden giriş/çıkışında işçilik TL olarak alınmak/verilmek isteniyorİşçilik has yerine TL ile hesaplanmak isteniyor.Varsayılan işçilik birimi has.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-05670
ERR-OBS-133GÖZLEMLENMİŞS2H-052 — Has fiyat tipli üründe TUTAR ÷ MİKTAR fiyatı vermiyorİşlem listesinde tutar, miktar ile fiyatın çarpımına eşit değil; "fiyat yanlış kaydedilmiş" sanılıyor.Stok kartının fiyat tipi **Has** ise tutar has miktarı üzerinden hesaplanır (has × fiyat), fakat işlem satırına miktar **gram** olarak yazılır. Aynı durum TAŞ eKurulum/bağlantı ayarları (veri etkilenmez)PF-05685
ERR-OBS-134GÖZLEMLENMİŞS2H-053 — F.TİPİ seçimim geri dönüyorHURDA'da **F.TİPİ** Has/Miktar seçiliyor; işlem türü, tipi veya stok değiştirilince eski varsayılana dönüyor.Bu üç alandan biri değişince fiyat tipi genel ayara sıfırlanır.Kurulum/bağlantı ayarları (veri etkilenmez)PF-03470
ERR-OBS-135GÖZLEMLENMİŞS2H-054 — HURDA'da MAHSUP seçince fiyat girilebiliyor ama tutar 0 kaydediliyorMAHSUP tipli hurda kaydında fiyat/tutar yazıldı, kayıtta **TUTAR** 0.HURDA ekranında MAHSUP tutar hesabına dahil değildir (MADEN ekranında dahildir). Program MAHSUP'ta tutar kontrolü de yapmaz.Kurulum/bağlantı ayarları (veri etkilenmez)PF-05670
ERR-OBS-136GÖZLEMLENMİŞS2H-055 — Fiyat kutusu 1'e kilitli, kur giremiyorumNAKİT'te **FİYAT** alanı 1 yazıyor ve değiştirilemiyor.Seçilen **BİRİM**, stok kodunun ana birimiyle aynı (USD stoğuna USD birimi gibi). Aynı birimde kur olmaz.Cari.Islemler / BakiyeIslem (kilit/timeout sırasında yarım yazım)70
ERR-OBS-137GÖZLEMLENMİŞS2H-056 — "«BİRİM» AnaBirimine Ait Nakit Stokgu Bulunamadı!"NAKİT'te PARİTE tipli işlemde bu mesaj çıkıyor (yazım hatası programda böyledir).Seçilen karşılık biriminin nakit stok kartı yok.Kurulum/bağlantı ayarları (veri etkilenmez)PF-03970
ERR-OBS-138GÖZLEMLENMİŞS2H-057 — Parite/çapraz işlemde müşteri dövizini verdi, karşılığı hesapta görünmüyorNAKİT (PARİTE tipi) veya PARİTE (X) ekranından yapılan işlemde yalnız bir birim hareket etmiş; ikinci bacak yok.Bu ekranlar iki ayrı satır yazar. İkinci satır kaydedilemezse (tutar 0, kur sapması uyarısına Hayır, karşı stok yok) **birinci satır silinmez**.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04885
ERR-OBS-139GÖZLEMLENMİŞS2H-058 — NAKİT'te EMANET seçtim, iki satırlı parite kaydı oluştuİşlem tipi EMANET seçildi; listede iki nakit satırı belirdi.Bu ekranda seçim listesinin üçüncü sırası bazı kurulumlarda PARİTE olarak yorumlanır.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04885
ERR-OBS-140GÖZLEMLENMİŞS2H-059 — Yazdığım miktar siliniyor / kendiliğinden değişiyorÇEVİR'de **MİKTAR** girildikten sonra işlem türü (ALACAK/BORÇ) veya **KODU** değiştirilince miktar bakiyeyle doluyor yaProgram, tür veya kod değişince miktar alanını hesabın o birimdeki bakiyesiyle doldurur; bakiye yönü seçilen türle uyuşmuyorsa alanı temizler.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-03070
ERR-OBS-141GÖZLEMLENMİŞS2H-060 — "TL Birimi Bulunamadı" / "«KOD»TL Karşılığı Vadeli Kodu Bulunamadı"VADELİ'de ARBİTRAJ veya FATURA tipli işlemde bu mesajlardan biri çıkıyor.Karşılık satırı için gereken TL birimi ya da seçilen kodun TL karşılığı vadeli kod tanımlı değil.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04285
ERR-OBS-142GÖZLEMLENMİŞS2H-061 — VADELİ'de FATURA seçtim, iki satır oluştuFatura kesmek için tip FATURA seçildi; listede TL karşılıklı ikinci bir vadeli satır belirdi.Bu ekranda NORMAL dışındaki tipler (ARBİTRAJ ve FATURA) çift satırlı parite yoluna girer.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04885
ERR-OBS-143GÖZLEMLENMİŞS2H-062 — Aynı kod ve miktar, farklı müşteride farklı tutarOns bazlı vadeli işlemde aynı girişler iki hesapta farklı tutar veriyor.Ons çarpanı önce **hesap kartından**, orada 0 ise genel ayardan alınır. Ekranda hangisinin kullanıldığı görünmez.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04870
ERR-OBS-144GÖZLEMLENMİŞS2H-063 — "Virman İşlemlerinde Düzeltme Yapamazsınız. İptal Edip Tekrar Giriniz." / hatalı virmanVirman satırına **DÜZELT** deyince bu mesaj çıkıyor; ya da (eski sürümde) düzeltme yapıldı ama karşı hesap değişmedi.Virman iki hesaba birer satır yazar. Güncel sürüm düzeltmeyi engeller; eski sürümlerde tek taraf düzeltilebildiği için karşı hesap eşi bozuk kalır.Kurulum/bağlantı ayarları (veri etkilenmez)PF-07785
ERR-OBS-145GÖZLEMLENMİŞS2H-064 — Virmanda BORÇ seçtim, başlık yeşil ve "VIRMAN GIRIS" yazıyorEkran başlığı ve rengi seçimle uyuşmuyor; raporda satır GİRİŞ/ÇIKIŞ olarak görünüyor.VİRMAN, BORÇ (hesap borç/alacak) ve PARİTE (X) ekranları seçimi GİRİŞ/ÇIKIŞ olarak kaydeder; bakiye yönü doğrudur, yalnız başlık ve rapor etiketi farklıdır.Rapor çıktısı (veri etkilenmez)PF-07785
ERR-OBS-146GÖZLEMLENMİŞS2H-065 — Virman için hedef hesabı bulamıyorum**KARŞI HESAP** listesinde aranan hesap yok.Liste yalnız **giriş yapılan şubenin** hesaplarını gösterir; başka şubedeki hesaba virman yapılamaz. Yeni açılan hesap için Ctrl+F5 gerekir.Sistem.Users / UserGroup / UserDetailsPF-07770
ERR-OBS-147GÖZLEMLENMİŞS2H-066 — "Has İşçiliği Girilmemiş. Devam Etmek İstiyormusunuz ?" / "Gumus İşçiliği Girilmemiş..."TAKOZ G'de kayıt anında bu soru.**AU İŞÇİLİK** / **AG İŞÇİLİK** fiyatı 0 ya da işçilik birimi boş. Takoz tipi seçilmemişse program varsayılan olarak has kabul eder ve gümüş takozunda da has işKurulum/bağlantı ayarları (veri etkilenmez)PF-04670
ERR-OBS-148GÖZLEMLENMİŞS2H-067 — "Milyem Toplamı 1000'i Geçemez."Raporlu takozda milyem kutusundan çıkınca bu mesaj; kutu boşalıyor.**HAS MİLYEM + GUM MİLYEM + PT + PD** toplamı 1000'i aşıyor.Rapor çıktısı (veri etkilenmez)PF-04670
ERR-OBS-149GÖZLEMLENMİŞS2H-068 — "Has Takozu Giriyorsunuz. Has Milyemi Diğer Milyemlerden Düşük Olamaz..." (GUMUS / PLATİN / PALLADIUM sürümleri de var)Raporlu takozda kayıt anında bu soru.Seçilen takoz tipinin ana metal milyemi, diğer metallerin toplamından küçük.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04670
ERR-OBS-150GÖZLEMLENMİŞS2H-069 — "Transfer İşlemlerinde Giriş İşlemi Yapamazsınız"Şube hesabı seçiliyken TAKOZ G açılınca bu mesaj ve ekran kapanıyor.Şubeler arası takoz hareketi TAKOZ G'den değil, transfer akışından yapılır.Belirtilen SQL nesnesi / ekran verisiPF-01070
ERR-OBS-151GÖZLEMLENMİŞS2H-070 — "«no» Numaralı Takoz Bulunamadı." / "«no» Nolu Takoz Bulunamadı Veya Elinizde Yok."Barkod okutulunca veya seri takoz çıkışında takoz numarası yazılınca bu mesaj.Takoz numarası yanlış, takoz başka şubede/kasada, ya da daha önce çıkışı yapılmış.Belirtilen SQL nesnesi / ekran verisiPF-04670
ERR-OBS-152GÖZLEMLENMİŞS2H-071 — Ekranda 100,50 gr yazıyordu, işlemde 100,00 görünüyor (çeşni)TAKOZ G'de **MİKTAR / ÇEŞNİ** alanında çeşni 0,50 girildi; işlem listesinde miktar 100,00.Ekrandaki has/işçilik hesapları çeşni **dahil** yapılır; işlem satırına miktar çeşni **hariç** yazılır, çeşni ayrı sütunda tutulur.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-04685
ERR-OBS-153GÖZLEMLENMİŞS2H-072 — TAKOZ C'de milyem kutuları boş; "takozun kimden geldiğini göremiyorum"Çıkış ekranında takoz seçilince milyem kutuları boş; hesap adı, işlem no ve ayar evi alanları hiç dolmuyor.Raporsuz takozda işlem satırına milyem yazılmaz; ekran 0 değerleri boş gösterir. Hesap adı/işlem no/ayar evi alanları bu sürümde doldurulmamaktadır (kapatılmışKurulum/bağlantı ayarları (veri etkilenmez)PF-04685
ERR-OBS-154GÖZLEMLENMİŞS2H-073 — Küçük takozun etiketi çıkmıyor30 gramın altındaki takozda kayıt sonrası etiket basılmıyor.Etiket yalnız 30 gramın üstündeki takozlarda basılır; ayarlanabilir değildir.Kurulum/bağlantı ayarları (veri etkilenmez)PF-02470
ERR-OBS-155GÖZLEMLENMİŞS2H-074 — Seri kayıt modunda barkod okutunca anında kaydediyorTAKOZ G'de **Seri Kayıt** işaretliyken yanlış barkod okundu, onay sorulmadan kaydedildi.Seri kayıtta barkod okunur okunmaz kayıt yapılır; bu ekranda "Kaydetmek istiyor musunuz?" sorusu da kapalıdır. Extra takozlarda Pt/Pd durumu ikinci takozdan itiBelirtilen SQL nesnesi / ekran verisiPF-06170
ERR-OBS-156GÖZLEMLENMİŞS2H-075 — ÇEŞNİ ekranı 0 / 0 / 0 ile açılıyorÇEŞNİ ekranında miktar ve milyem sıfır; "elimde çeşni yok" görünüyor.Ya gerçekten çeşni stoğu yok ya da çeşni stoğu sunucudan okunamadı (ekran hata göstermez).Kurulum/bağlantı ayarları (veri etkilenmez)70
ERR-OBS-157GÖZLEMLENMİŞS2H-076 — Bir önceki hizmet/grup/kategori yeni kayda taşındı; HAS kuru boş geldiArdışık hizmet kayıtlarında hizmet kartı, grup ve kategori değişmeden kaldı; ikinci kayıtta **KUR(HAS)** boş.HİZMET ekranı kayıt sonrası yalnız tutar, kur, açıklama ve özel kodu temizler; hizmet/grup/kategori kalır. Kur alanı temizlenir ama yeniden doldurulmaz.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-07270
ERR-OBS-158GÖZLEMLENMİŞS2H-077 — İade veya belge takip tipli (11) hizmet kaydını düzeltmeye açınca işlem tipi yanlış geliyorİADE ya da IslemTipi 11 (legacy adı RESMİ/FATURA; belge takip tipi) hizmet satırına **DÜZELT** deyince tip alanı boş/yanEkran bu iki tipi düzeltme açılışında doğru yükleyemez.Kurulum/bağlantı ayarları (veri etkilenmez)PF-07285
ERR-OBS-159GÖZLEMLENMİŞS2H-078 — 0 TL borç kaydı oluştu; ekranda ALACAK seçtim başlıkta "HESAP GIRIS" yazıyorBORÇ ekranında tutar boş bırakılıp F2 basılınca sessizce 0 tutarlı satır oluştu; başlık seçimle uyuşmuyor.BORÇ ekranında miktar ve tutar kontrolü yoktur; başlık GİRİŞ/ÇIKIŞ diliyle yazılır (H-64).Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-06085
ERR-OBS-160GÖZLEMLENMİŞS2H-079 — Ekrandaki TUTAR ile fişteki tutar farklıPARİTE (X) ekranında görünen tutar ile kaydedilen/fişe basılan tutar farklı; özellikle karşılık TL değilken.Ekran tutarı ikinci fiyata bölerek gösterir; kayda yalnız miktar × birinci fiyat yazılır. Karşılık TL ise ikisi eşittir.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.Kurlar70
ERR-OBS-161GÖZLEMLENMİŞS2H-080 — PARİTE (X) kaydı düzeltilemiyorParite satırına **DÜZELT** deyince "Sube,Kasa veya Hesap Seçili Değil..." mesajı çıkıyor.Bu ekran düzeltme desteklemez.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-04885
ERR-OBS-162GÖZLEMLENMİŞS2H-081 — Seçtiğim tarih kaydedilmediSeri işlem ekranındaki **TARİH** alanı değiştirildi; kayıt ana ekrandaki tarihle oluştu.Bu ekranda tarih alanı görünür ama kayıtta hesap seçim panelindeki tarih kullanılır.Belirtilen SQL nesnesi / ekran verisiPF-05870
ERR-OBS-163GÖZLEMLENMİŞS2H-082 — "LÜTFEN BİR STOK SEÇİNİZ." / ürünü listede bulamıyorumSeri işlemde alanlar gizli, başlıkta bu yazı; ya da ürün listesinde aranan kod yok.Stok seçilmemiş. Liste yüklenirken bozuk bir stok kartı varsa liste **sessizce eksik** gelir. Hizmet ürünleri kodla değil "G"+açıklama ile listelenir; aynı açıkBelirtilen SQL nesnesi / ekran verisiPF-03970
ERR-OBS-164GÖZLEMLENMİŞS2H-083 — "İşlemin Karşılığı Bulunamadı. Lütfen İşlemin Karşılığını Giriniz."Seri işlemde fiş kapatılırken bu mesaj.Kullanıcı grubunda "peşin kontrol" açık; fişin toplamı sıfırlanmamış (mal verildi, para alınmadı ya da tersi).Sistem.Users / UserGroup / UserDetails85
ERR-OBS-165GÖZLEMLENMİŞS2H-084 — "Bu Stok Su Anda Kullanılmıyor. Düzeltme İşlemi Yapamazsınız."Seri işlemde eski bir satır düzeltilmek istenince bu mesaj.Satırın stok kartı pasife alınmış.Belirtilen SQL nesnesi / ekran verisiPF-03985
ERR-OBS-166GÖZLEMLENMİŞS2H-085 — "İsimsiz Hesaplara 7000 TL Üzeri İşlem yapamazsınız."Perakendede kayıt anında bu mesaj; işlem iptal.Hesapta vergi dairesi ve vergi/kimlik numarası **ikisi de boş** ve tutar 7000 TL'yi aşıyor. Sınır programa gömülüdür.Kurulum/bağlantı ayarları (veri etkilenmez)PF-08070
ERR-OBS-167GÖZLEMLENMİŞS2H-086 — "Parakende Satış İşlemlerinde 3000 USD üzeri işlem Yapıyorsunuz. Devam Etmek istiyormusunuz?"Maden veya döviz modunda bu soru.Döviz karşılığı 3000 USD'yi aşıyor (programa gömülü uyarı eşiği).Belirtilen SQL nesnesi / ekran verisiPF-08070
ERR-OBS-168GÖZLEMLENMİŞS2H-087 — İşlem numarasını çağırdım, alım kaydı "SATIŞ" olarak açıldıDüzeltmek için **İŞLEM NO** girildi; ekran her işlemi SATIŞ yönünde açıyor.Perakende ekranı çağrılan kaydın yönünü doğru yüklemez; ayrıca düzeltmede fiş numarası yeniden üretilir ve RS Aktar kapanır.Belirtilen SQL nesnesi / ekran verisiPF-08070
ERR-OBS-169GÖZLEMLENMİŞS2H-088 — Eksik tahsilatla kayıt oldu; önceki müşterinin açıklaması yeni fişe geçti**TAHSİLAT** eksik girildiği hâlde kayıt tam tutarla oluştu; **AÇIKLAMA**, **TUTAR**, **FİYAT** önceki işlemden kaldı.Eksik tahsilat uyarısı yalnız görseldir, kaydı engellemez. Ekran kayıt sonrası yalnız adet, miktar, tahsilat ve para üstünü temizler.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-08070
ERR-OBS-170GÖZLEMLENMİŞS2H-089 — "Seçmiş Olduğunuz İşlem Yok yada Parakende Ekranından Yapılmamış."**İŞLEM NO** ile kayıt çağrılınca bu mesaj.Numara yanlış, işlem iptal edilmiş ya da başka ekrandan (MADEN/NAKİT) yapılmış.Kurulum/bağlantı ayarları (veri etkilenmez)PF-08070
ERR-OBS-171GÖZLEMLENMİŞS2H-090 — Perakendede kasa değiştiremiyorum**KASA** alanı kilitli.Ekran bir işlem ekranının içinden açıldıysa kasa kilitlidir; bağımsız açıldıysa kullanıcının kasa kilidi ayarı belirler.Cari.Islemler / BakiyeIslem (kilit/timeout sırasında yarım yazım)PF-06370
ERR-OBS-172GÖZLEMLENMİŞS2H-091 — "Bu Model Elinizde Mevcut. Giriş Yapamazsınız." / "Bu Model Elinizde Yok. Çıkış Yapamazsınız."MODEL ekranında giriş veya çıkışta bu mesaj.Ekranın adet sorgusu `Select 1 + IsNull(SUM(SAdet),0) ...` biçimindedir; hiç hareket yokken sonuç 1 döner ve ilk giriş reddedilir. Sorgu ilgili model için elle çalıştırılıp sonuç kontrol edilir.Model tek adetli takip edilir: eldeki model tekrar giremez, elde olmayan çıkamaz. Yeni tanımlanan modelde "elinizde mevcut" mesajı alınıyorsa adet sayımı sorunuSistem.Users / UserGroup / UserDetailsPF-05585
ERR-OBS-173GÖZLEMLENMİŞS2H-092 — TAŞ / PIRLANTA / MODEL ekranında F2 çalışmıyorKlavyeden F2/F5/F3 basılınca tepki yok.Bu üç ekranda klavye kısayolları tanımlı değildir.Belirtilen SQL nesnesi / ekran verisiPF-05570
ERR-OBS-174GÖZLEMLENMİŞS2H-093 — PIRLANTA'da PEŞİN seçince ekran hata veriyorİşlem tipi PEŞİN seçildiği anda program hatası.Pırlanta kartının maliyet birimine karşılık gelen nakit stok kartı tanımlı değil.Kurulum/bağlantı ayarları (veri etkilenmez)PF-05570
ERR-OBS-175GÖZLEMLENMİŞS2H-094 — GENEL ekranında kaydettikten sonra MİKTAR alanı önceki ürünün stoğuyla dolduKayıt sonrası ekran temizlenmedi; miktar alanında bir sayı belirdi.GENEL ekranı stok kodunu temizlemez; ÇIKIŞ'ta miktar alanı seçili stoğun eldeki miktarıyla yeniden dolar.Belirtilen SQL nesnesi / ekran verisiPF-05570
ERR-OBS-176GÖZLEMLENMİŞS2H-095 — "«N» Numaralı İşlemde Mutabakat Yapılmış. Önceki İşlemleri Değiştiremezsiniz."Eski bir işlem düzeltilmek/iptal edilmek istenince bu mesaj.Hesapla mutabakat yapılmış; mutabakat numarasından önceki işlemlere dokunulamaz (ayar "işlem yapılamaz" ise) ya da PIN gerekir.Kurulum/bağlantı ayarları (veri etkilenmez)PF-01270
ERR-OBS-177GÖZLEMLENMİŞS2H-096 — "İşlem Tarihinden İtibaren N Gün Geçmiştir. İşlemi Düzeltmezsiniz." / "...İşlemi Yöneticiniz İptal Edebilir."Belirli günden eski işlemde düzeltme/iptal engelleniyor.**Settings > İzinler**'de düzeltme/silme günü ve "eski tarihe yapılamaz" seçeneği açık.Kurulum/bağlantı ayarları (veri etkilenmez)PF-01270
ERR-OBS-178GÖZLEMLENMİŞS2H-097 — Düzeltme/iptalde PIN soruluyor**DÜZELT** veya **İPTAL** basılınca PIN penceresi.**Settings > İzinler**'de "Silme Onayı = Pin Kodu Gerekir" ve/veya "Düzeltme Onayı = Pin Kodu Gerekir" işaretli.Kurulum/bağlantı ayarları (veri etkilenmez)PF-01270
ERR-OBS-179GÖZLEMLENMİŞS2H-098 — Silme onayında işlem duruyor, silinmiyorSilme onayı listesinde onaylanan işlem listeden düşmüyor ya da işlem iptal olmuyor.```sql
UPDATE Sistem.SilOnay SET IsDeleted = 1 WHERE TransactionId = «işlem no»
```
Onay kaydı tamamlanmamış.Kurulum/bağlantı ayarları (veri etkilenmez)PF-03785
ERR-OBS-180GÖZLEMLENMİŞS2H-099 — E-belgesi gönderilmiş işlem düzeltilemiyor / "GİB'e İletilmiş Faturaları İptal Edemezsiniz."e-Döviz / e-Kıymetli Maden belgesi gönderilmiş (ETTN dolu) işlemde düzeltme ve iptal reddediliyor.Belgeye ETTN numarası atanmış; program gönderilmiş belgeyi değiştirmez.Cari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-00970
ERR-OBS-181GÖZLEMLENMİŞS2H-100 — Yanlış yapılan işlem nasıl düzeltilir (standart akış)İşlem yanlış girildi.Belirtilen SQL nesnesi / ekran verisiPF-01285
ERR-OBS-182GÖZLEMLENMİŞS2H-101 — Bir hesabın işlemleri başka hesaba aktarılmak isteniyorYanlış hesaba girilmiş bir grup işlem doğru hesaba taşınacak.Belirtilen SQL nesnesi / ekran verisiPF-06770
ERR-OBS-183GÖZLEMLENMİŞS2H-102 — Fiş numarası iki farklı güne yayılmış / iki kişi aynı fiş numarasını almışAynı fiş numarasında farklı tarihli veya farklı müşterili satırlar var; **İPTAL (FişNo)** beklenenden fazla satır siliyo```sql
Select FisNo, Count(Distinct Cast(Tarih as date)) as Gun From Cari.Islemler
Where IsDeleted = 0 And FisNo > 0 Group By FisNo Having Count(Distinct Cast(Tarih as date)) > 1
```
---
Fiş numarası "en büyük + 1" ile üretilir, kilit yoktur; iki kullanıcı aynı anda kaydedince aynı numara verilebilir.Cari.Islemler / BakiyeIslem (kilit/timeout sırasında yarım yazım)PF-01285
ERR-OBS-184GÖZLEMLENMİŞS3H-103 — "Bakiye ters çıkıyor: müşteri alacaklı olması gerekirken borçlu görünüyor"Müşteri mal getirdi, bakiyesi borç yazıyor (ya da tersi).**İŞLEM** alanında yön ters seçilmiş. Kural: **GİRİŞ** = mal/para işletmeye giriyor → müşteri **alacaklanır** (yeşil); **ÇIKIŞ** = müşteriye veriliyor → müşteriCari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-185GÖZLEMLENMİŞS1H-104 — "Müşteri parayı ödedi ama bakiyesi değişmedi" / "Bakiyesi değişti ama kasaya para girmedi"Bakiye ile kasa birbirini tutmuyor.İşlem tipi karışmış. **NORMAL**: bakiye ✓, stok ✓, kasa ✗. **PEŞİN**: bakiye ✗, stok ✓, kasa ✓. **MAHSUP**: bakiye ✗, stok ✓ (devir/sayım için). PEŞİN yapılmasıCari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-186GÖZLEMLENMİŞS1H-105 — Bakiye "birden" değişti; kimse işlem yapmadıDün doğru olan bakiye bugün farklı.Bir satır düzeltilmiş, iptal edilmiş ya da iptali geri alınmış. İptal edilen satır listeden kaybolur ama silinmez.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-187GÖZLEMLENMİŞS1H-106 — Virman yapıldı, bir hesapta var diğerinde yokA hesabında virman satırı var; B hesabında karşılığı yok. İki bakiye toplamı tutmuyor.Virman iki satır yazar; ikincisi başarısız olduysa (B pasif, evrakı eksik, şifreli) "Karşı Hesaba İşlem Yapılamadı." mesajı çıkmış ve ilk satır kalmıştır. Ya daCari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-188GÖZLEMLENMİŞS2H-107 — Geçmiş tarihli işlem yanlış kurla/has karşılığıyla girilmişGeçmişe girilen işlemin has karşılığı veya TL tutarı o günün kuruyla uyuşmuyor.`Select * From Sistem.Kurlar Where Tarih = '«tarih»'` boş dönüyorsa o gün kur yoktur.O tarihte kur girilmemişse program **en son girilen kuru** kullanır; ekranda uyarı vermez. Ayrıca kur listesinden gelen fiyat her zaman ALIŞ kurudur (H-45).Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-189GÖZLEMLENMİŞS2H-108 — Devir sonrası müşteri bakiyesi geçen yılın son bakiyesinden farklıYıl sonu devrinden sonra hesabın "DEVİR" satırı arşivdeki son bakiyeyle uyuşmuyor.Devir bakiyeleri `Cari.BakiyeIslem` tablosunda `IslemId = -1` ile durur; `Cari.Islemler`'de karşılığı yoktur (tasarım gereği). Tutarsızlıkta `Stok.StokHaraketleri` ve `Cari.BakiyeIslem` tablolarında `Devir sırasında tarihi boş kalmış bakiye/stok kayıtları ya da devir günü ile arşiv kesim tarihi arasına giren işlemler.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-190GÖZLEMLENMİŞS3H-109 — "İşlem listeden kayboldu"Dün girilen işlem bugün listede yok; bakiye de o kadar değişmiş.İşlem **İPTAL** edilmiş. İptal edilen işlem listeden düşer, veritabanında silinmiş işaretiyle durur.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-191GÖZLEMLENMİŞS1H-110 — Bakiyenin has/TL karşılığı yanlış, birim bakiyeleri doğruUSD/EUR bakiyeleri doğru ama "toplam has" veya TL karşılığı saçma.Kur listesi 0 ya da eksik. Karşılıklar **güncel kurla** hesaplanır.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03070
ERR-OBS-192GÖZLEMLENMİŞS2H-111 — Fiş üzerinde "eski bakiye" yazmıyor (devir sonrası)Devirden sonra basılan fişlerde önceki bakiye satırı boş.`Bakiye.GetBakiyeFisNo` fonksiyonu, bakiye toplamına `B.IslemId = -1` (devir) satırlarını dahil edecek şekilde güncellenir (devir süreç dokümanındaki sürüm).Fiş bakiye hesabı devir satırını dikkate almıyor.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03685
ERR-OBS-193GÖZLEMLENMİŞS1H-112 — Raporda bakiye eksik çıkıyor, hesap kartında doğruÖzel raporda müşterinin bakiyesi kartta görünenden az.Rapor kasa bazlı süzülmüş; bakiye kasa bazlı tutulmaz. Ya da rapor devir satırlarını (işlem listesinde olmayan açılış bakiyeleri) toplamıyor.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03085
ERR-OBS-194GÖZLEMLENMİŞS1H-113 — "Stok listesi boş ya da eksik: yanlış kasa seçili"Maden/nakit stok listesinde ürün yok ya da az; başka kasada görünüyor.Stok kasa bazlıdır. Liste, seçili kasayı gösterir; işlem başka kasadan yapılmışsa o kasada durur.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03470
ERR-OBS-195GÖZLEMLENMİŞS3H-114 — Transfer yapıldı ama karşı kasada stok görünmüyorGönderen kasada stok düştü; alan kasada artmadı.Transfer iki adımlıdır: gönderen **Transferler > Giden** kutusundan gönderir; alan taraf **Gelen** kutusundan **kabul** etmeden stok karşı kasaya girmez.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03470
ERR-OBS-196GÖZLEMLENMİŞS2H-115 — Açılış (devir) stoğu girildi, DEVİR hesabı alacaklı kaldıStoklar DEVİR hesabından GİRİŞ ile girildi; DEVİR hesabında büyük bir alacak bakiyesi oluştu.NORMAL tipte giriş yapılmış; NORMAL giriş bakiye yazar.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03470
ERR-OBS-197GÖZLEMLENMİŞS1H-116 — İptal edilen işlem stoktan düşmedi / stoğa geri geldiSatış iptal edildi, stok geri gelmedi (ya da tersi).İptalin stok etkisi otomatik kural ile yazılır; kural kapalıysa (H-06) etki oluşmaz. Ya da iptal değil, düzeltme yapılmış ve düzeltmede miktar/kasa değiştirilmiCari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-03470
ERR-OBS-198GÖZLEMLENMİŞS3H-117 — Takoz stokta görünmüyor / "Elimizde" süzgeci boşTakoz girişi yapıldı; takoz stok listesinde takoz yok.Takoz listesinde **stok durumu** süzgeci (Elimizde / Çıkılmış / Raporlu-Raporsuz) yanlış seçilmiş ya da takoz seri çıkışla çıkılmış.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-04670
ERR-OBS-199GÖZLEMLENMİŞS3H-118 — Maden stok listesinde ürünlerin sırası bozukStok listesi tanım sırasına göre gelmiyor; her açılışta farklı sırada.`Stok.GetMadenStoklari` fonksiyonu Modify ile açılır; ilk `Select`'ten sonra `top 100000`, kod bloğunun sonuna `order by M.Id` eklenip çalıştırılır. SQL Management Studio işlem bitince kapatılır.Stok listesini üreten fonksiyon sıralama yapmıyor.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-02185
ERR-OBS-200GÖZLEMLENMİŞS2H-119 — Stok hareketlerinde transfer kayıtları yanlış tarihte / yanlış geliyorMaden veya nakit stok hareketleri raporunda transfer satırları geçmiş ya da ileri bir tarihte, hesap adı boş görünüyor.`Stok.GetStokHareketleri` fonksiyonu, tarih için `IsNull(I.InsertDate, H.Tarih)` kullanan ve `Bolum = 2` satırlarını 'TRANSFER' olarak etiketleyen sürümle (süreç dokümanındaki metin) değiştirilir.Stok hareketleri fonksiyonu transfer satırlarının tarihini işlem tablosundan alıyor; transferde işlem satırı olmadığı için tarih kayıyor.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-06885
ERR-OBS-201GÖZLEMLENMİŞS3H-120 — Maliyet raporu "tuhaf" geliyorÜrün maliyeti son alışlara göre beklenenden farklı; çok hareketli üründe hiç mantıklı değil."Ortalama milyem" aslında **son giren ilk çıkar** mantığıyla hesaplanır, gerçek ortalama değildir. Maliyet hesabı **son 50 hareketle** sınırlıdır; çok hareketliCari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-07670
ERR-OBS-202GÖZLEMLENMİŞS2H-121 — Bir ürünün maliyeti çok yüksek/çok düşük; sıfırlanmak isteniyorCtrl+M ile açılan maden stok listesinde bir ürünün maliyeti gerçekçi değil.Geçmişte yanlış fiyatla giriş yapılmış; maliyet zinciri bozulmuş.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-07670
ERR-OBS-203GÖZLEMLENMİŞS2H-122 — Maliyet bir günde sıçradı (ör. 0,50'den 2,50'ye)Maden stok listesinde geçmiş tarihe gidilince maliyet belirli bir günde ani değişiyor.O gün yanlış fiyat/milyem/birimle bir işlem girilmiş.Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-07685
ERR-OBS-204GÖZLEMLENMİŞS1H-123 — Stokta olmayan mal çıkılmış (negatif stok)Stok listesinde eksi miktar; bilanço eksi yazıyor.Giriş kaydı yapılmadan çıkış yapılmış (ya da giriş yanlış kasaya/koda yapılmış).Cari.BakiyeIslem / Stok.StokHaraketleri / Cari.History (türetilmiş kayıtlar)PF-00585
ERR-OBS-205GÖZLEMLENMİŞS3H-124 — Bakiye ekstresinde TOPLAM sütunu 0 geliyorBirim sütunları dolu; **Toplam** sütunu her satırda 0.Toplam, güncel kurla has karşılığına çevrilerek hesaplanır. Kur listesi 0 ya da boşsa toplam 0 çıkar. Kurlar EDS'den geliyorsa EDS durmuştur.PF-00585
ERR-OBS-206GÖZLEMLENMİŞS3H-125 — Cari bakiye listesinde aynı birim birden fazla satırda / has karşılığı yanlışBakiye listesinde bir hesabın birimleri dağınık, karşılıklar tutarsız.Kur listesi eksik.PF-03070
ERR-OBS-207GÖZLEMLENMİŞS3H-126 — Rapor alırken "Divide by zero" hatasıBir rapor açılırken İngilizce "divide by zero" hatası.Rapor sorgusundaki her `x / y` ifadesi `Fn.Bol(x, y)` ile değiştirilir (örnek: `Fn.Bol(Tutar, Miktar)`). Bu fonksiyon sıfıra bölmede 0 döndürür.Raporun hesabında bir bölme var ve bölen 0 (miktar 0, kur 0, tutar 0).PF-07085
ERR-OBS-208GÖZLEMLENMİŞS3H-127 — Bakiye ekstresi zaman aşımı veriyorRaporlar > Bakiye Ekstresi uzun süre bekleyip zaman aşımı hatası veriyor.`Reports.BakiyeListesi` fonksiyonu, süreç dokümanındaki (PIVOT tabanlı, `Sistem.GetKurListesi` ile birleşen) sürümle `ALTER` edilir. Ayrıca H-163'teki indeks rehberi uygulanır.Rapor fonksiyonu büyük veri setinde yavaş.PF-07185
ERR-OBS-209GÖZLEMLENMİŞS3H-128 — Bilanço eksi (zarar) yazıyorBilanço sonucu beklenmedik şekilde eksi.İki tipik neden: (a) pano kurunun çok altında satış (ör. dolar satış kuru 9 iken 6'dan VS kaydı) — program zarar yazar; (b) stoktan olmayan mal çıkılmış (H-123)PF-00585
ERR-OBS-210GÖZLEMLENMİŞS3H-129 — Kur değiştirilince bilanço değişiyorAynı gün, aynı işlemler; kur güncellenince bilanço sonucu farklı.Pozisyon 0 ve işçilikler has iken: (1) maden stok listesinde **Maliyeti Göster** ile stok not edilir; (2) tüm stok işçilikleriyle birlikte boş bir hesaba (DEVİR/PESIN/SERMAYE) çıkılır; (3) `Stok.GetMaYa **pozisyon** var (birim bakiyeleri sıfır değil) ya da has dışı birimle (USD, TL) işçilikli ürün alınmış.PF-00585
ERR-OBS-211GÖZLEMLENMİŞS3H-130 — Bilanço tutmuyor; takozlardan kaynaklanıyor olabilirTakoz stoğu olan işletmede bilanço farkı var.Bilanço raporunda takoz stoğu `Stok.GetSirketStoklari` yerine `Stok.GetTakozSubeStoklari` ile alınır ve `Where t.SubeId = @SubeId` eklenir. Devir öncesi: takoz çıkışı, takoz girişinin yapıldığı tariheGirişi yapılıp çıkışı yapılmamış takozlar bilançoda görünmüyor olabilir; devir tarihinden önce alınıp sonra çıkılan takozlar devirde eksi adet bırakır.PF-00585
ERR-OBS-212GÖZLEMLENMİŞS3H-131 — Pozisyon / hacim raporunda aynı birimden iki satırPozisyon raporunda USD iki kez görünüyor.`Sistem.Birimler` tablosunda "Edit Top 200 Rows" ile aynı kodlu satırlar bulunur; sıralamada geride olanın kodu değiştirilir. Rapor yeniden açılır.Birim listesinde aynı kod iki kez tanımlı (H-23).PF-02385
ERR-OBS-213GÖZLEMLENMİŞS3H-132 — Belgelendirilmiş işlem raporlarında "istatistik" hatası / istatistik kodu boşFatura kontrol raporu veya özel rapor istatistik alanında hata veriyor.`Cari.Istatistik` tablosu ve `FN.GetIstatistikKodu` fonksiyonu süreç dokümanındaki sürüme getirilir; `Cari.FaturaBilgileri` görünümü ve `Reports.ResmiIslemRaporu` (legacy teknik ad; belgelendirilmiş iİstatistik kodu tanımı eksik (H-35) ya da rapor eski istatistik fonksiyonunu kullanıyor.PF-05785
ERR-OBS-214GÖZLEMLENMİŞS3H-133 — Yanlışlıkla alınan bilanço listeden silinmek isteniyorBilanço listesinde yanlış tarihli/yanlış alınmış bir kayıt var.`Select * from Bilanco.Bilancolar` ile kayıt doğrulanır; `Delete from Bilanco.Bilancolar where Tarih = '«yyyy-aa-gg»'` çalıştırılır; programda bilanço listesi yeniden açılır.Bilanço kaydı programdan silinemez.PF-05085
ERR-OBS-215GÖZLEMLENMİŞS3H-134 — Rapora sütun eklendi ama programda görünmüyorRapor sorgusu düzenlendi; programda yeni sütun yok.Sütunun rapor tanımına (alan listesi) eklenmesi ve görünümün kaydedilmesi gerekir; ayrıca program yeniden açılmalıdır.PF-00470
ERR-OBS-216GÖZLEMLENMİŞS3H-135 — Raporda ALACAK/BORÇ veya ALIŞ/SATIŞ diye süzünce sonuç boşBORÇ, VİRMAN, PARİTE (X) ve PERAKENDE ekranlarından girilen satırlar ALACAK/BORÇ ya da ALIŞ/SATIŞ süzgeciyle gelmiyor.Bu ekranlar seçimi GİRİŞ/ÇIKIŞ olarak kaydeder (H-64). Yalnız SERİ İŞLEM ekranı ALACAK/BORÇ ve ALIŞ/SATIŞ diye kaydeder. Aynı iş iki ekrandan farklı etiketle düPF-07085
ERR-OBS-217GÖZLEMLENMİŞS3H-136 — İşlem listesinden sütun kaldırmak / eklemekİşlem listesinde gereksiz sütun (ör. Varyant) var ya da bir sütun kaybolmuş.Liste görünümü kullanıcıya göre kaydedilir.PF-02570
ERR-OBS-218GÖZLEMLENMİŞS3H-137 — İşlem listesi Excel'e / belgeye aktarılmak isteniyorMüşteri ekstre dosyası istiyor.PF-02570
ERR-OBS-219GÖZLEMLENMİŞS3H-138 — Maden stok listesinde alt toplam görünmüyorStok listesinde HAS/GUM toplamı yok.[Ekip tarafından doldurulacak]PF-02170
ERR-OBS-220GÖZLEMLENMİŞS3H-139 — Geniş bilanço raporu istenmiş / raporda yokMüşteri "geniş bilanço" istiyor, menüde yok.Rapor kurulumla gelmemiş.PF-05070
ERR-OBS-221GÖZLEMLENMİŞS2H-140 — Yazıcıdan çıkan fatura numarası yanlışBasılan faturanın numarası yazıcıdaki kağıtla uyuşmuyor.Fatura serisi/sıra numarası kaymış.Kurulum/bağlantı ayarları (veri etkilenmez)PF-00770
ERR-OBS-222GÖZLEMLENMİŞS2H-141 — Fatura yanlış müşteriye kesildiAynı fatura başka müşteriye kesilmeli.[Ekip tarafından doldurulacak]Belirtilen SQL nesnesi / ekran verisiPF-02770
ERR-OBS-223GÖZLEMLENMİŞS2H-142 — Belgelendirme Farkı bildirimi — "belgeli stok/alım-satımlar tutmuyor"İşletmenin mali müşaviri / muhasebe departmanı belirli ay için, kendi kayıtları ile ERPGOLD'un belgelendirilmiş işlem gö[Ekip tarafından doldurulacak]Belirtilen SQL nesnesi / ekran verisiPF-02770
ERR-OBS-224GÖZLEMLENMİŞS2H-143 — Faturada isim ve TC kimlik gelmiyor"İsim Beyan Edilmemiştir" hesabından yapılan işlemde faturada ad/soyad ve kimlik boş.`Cari.FaturaBilgileri` görünümünde `H.HesapAdi` yerine `IsNull(D.FaturaUnvan, H.HesapAdi) as HesapAdi`; vergi numarası satırı `IsNull(D.FaturaVergiNo, Case When H.VergiNo<>'' Then H.VergiNo When TCNo<Fatura bilgileri hesap kartından alınıyor; işlem anında girilen ad/kimlik faturaya yansımıyor.Belirtilen SQL nesnesi / ekran verisiPF-00785
ERR-OBS-225GÖZLEMLENMİŞS2H-144 — "Aynı Para Cinsi ile Fatura kesemezsiniz."E-belge penceresi açılır açılmaz bu uyarı; kaydet/yazdır butonları yok.İşlemde stok kodu ile karşılık birimi aynı (USD'ye USD).Belirtilen SQL nesnesi / ekran verisiPF-01470
ERR-OBS-226GÖZLEMLENMİŞS2H-145 — "Türklirası Alış ve Satış İşleminin Faturasını Kesemezsiniz.Lütfen İşleminizi Kontrol Ediniz."E-döviz belgesi keserken bu mesaj.Belgeye konu döviz kodu TL/TRY.Cari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-01470
ERR-OBS-227GÖZLEMLENMİŞS2H-146 — "Vergi Numarası 10 Karaketer Olmalıdır..." / "TCKimlik Numarası 11 Karaketer Olmalıdır..."Fatura basımında bu mesaj.Vergi dairesi seçiliyken vergi no 10 hane değil; vergi dairesi boşken kimlik no 11 hane değil.Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-04370
ERR-OBS-228GÖZLEMLENMİŞS2H-147 — "Entegrator faturayı Kabul Etmedi. ..."E-belge gönderiminde entegratör hata döndürüyor; "Hata Detayını Görmek İstiyormusunuz?" soruluyor.Belge içeriği (kimlik, adres, istatistik kodu, tutar limiti) entegratör kurallarına uymuyor.Cari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-00970
ERR-OBS-229GÖZLEMLENMİŞS2H-148 — "GİB'e İletilmiş Faturaları İptal Edemezsiniz."E-Fatura Listesi ekranında (legacy menü adı; e-Döviz belge listesi) iptal denince bu mesaj.Belge kuruma iletilmiş.Cari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-00970
ERR-OBS-230GÖZLEMLENMİŞS2H-149 — "Fatura Bulunamadı. Lütfen Faturalar Modülünden Kontrol Ediniz."İşlem listesinde fatura satırı iptal edilmek istenince bu mesaj.Satırın bağlı olduğu fatura kaydı yok (daha önce faturalar modülünden silinmiş).Kurulum/bağlantı ayarları (veri etkilenmez)PF-00785
ERR-OBS-231GÖZLEMLENMİŞS2H-150 — "Bu Firma Masak Yasaklısıdır. İşlem Yapamazsınız"E-belge penceresinde yasaklı sorgulaması sonrası bu mesaj; pencere kapanıyor.Müşteri, yasaklı listesi sorgusunda eşleşti.Belirtilen SQL nesnesi / ekran verisiPF-07870
ERR-OBS-232GÖZLEMLENMİŞS2H-151 — E-döviz belgesinde kimlik zorunluluğu / limitler beklenenden farklıBelirli tutar üstünde kimlik istenmiyor ya da isteniyor; "İsim Beyan Edilmemiştir" ile belge kesilemiyor.`Sistem.Subeler` tablosunda `EBelgeTcknControl`, `EBelgeUsdLimit`, `EBelgeTlLimit` alanları düzenlenir. Kimlik bilgisiyle limit kesimi yapılıyorsa limitler 4999 USD / 84999 TL; "İsim Beyan EdilmemiştiŞube tanımındaki e-belge kimlik kontrolü ve USD/TL limitleri müşterinin çalışma şekline göre ayarlanmamış.Cari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-05185
ERR-OBS-233GÖZLEMLENMİŞS2H-152 — Yeni yılda fatura sıra numarası devam ediyor / sıfırlanmıyorYılbaşından sonra e-döviz belgesi numarası önceki yıldan devam ediyor.`Sistem.GetFaturaNo` prosedürü, `YEAR(I.Tarih) = YEAR(getdate())` koşulunu içeren sürümle `ALTER` edilir.[Ekip tarafından doldurulacak]Cari.IslemDetaylari (e-belge durumu), entegratör kayıtlarıPF-02685
ERR-OBS-234GÖZLEMLENMİŞS2H-153 — Termal fiş boş çıkıyorİşlem fişi yazdırılınca kağıt boş.`Cari.FisIslemDetay` görünümü açılır; `Select Top 1000 X.*, H.HesapAdi, K.UserName` ifadesindeki 1000 çok daha büyük bir sayıyla (ör. 1.000.000) değiştirilip çalıştırılır.Fiş verisini getiren görünüm ilk 1000 işlemle sınırlı; sonraki işlemlerin fiş verisi gelmiyor.Belirtilen SQL nesnesi / ekran verisiPF-00385
ERR-OBS-235GÖZLEMLENMİŞS2H-154 — Fiş tasarımı değiştirilmek isteniyor / fiş çıkmıyorİşlem sonunda fiş çıkmıyor ya da farklı fiş tasarımı isteniyor.[Ekip tarafından doldurulacak]Rapor çıktısı (veri etkilenmez)PF-00370
ERR-OBS-236GÖZLEMLENMİŞS2H-155 — Fişte yazılar bozuk / yanlış yazı tipiİşlem fişinde karakterler kayık, yazı tipi farklı.Fiş yazı tipi bilgisayara yüklenmemiş.Kurulum/bağlantı ayarları (veri etkilenmez)PF-04770
ERR-OBS-237GÖZLEMLENMİŞS3H-156 — Yazıcı hiç yazdırmıyorProgram yazdır diyor, çıktı yok.[Ekip tarafından doldurulacak]PF-00370
ERR-OBS-238GÖZLEMLENMİŞS3H-157 — Etiket yazıcısı tanımlı değil / etiket çıkmıyorTakoz veya model etiketi basılmıyor.Etiket yazıcısı bağlı değil (simgesi soluk) ya da programda seçilmemiş.PF-02470
ERR-OBS-239GÖZLEMLENMİŞS3H-158 — RFID cihazı çalışmıyorRFID okuma yok.Cihazın ağ adresi değişmiş.PF-02470
ERR-OBS-240GÖZLEMLENMİŞS3H-159 — Terazi miktarı ekrana gelmiyorHURDA ekranında terazi butonuna basılınca **MİKTAR** hareket etmiyor.[Ekip tarafından doldurulacak]PF-07970
ERR-OBS-241GÖZLEMLENMİŞS3H-160 — EDS (elektronik döviz sistemi) çok yavaşEDS ekranları ve kur güncellemesi dakikalarca sürüyor.`Delete From Sistem.Kurlar Where year(Tarih) < Year(getdate())` ile önceki yılların kurları silinir (yedek sonrası); mutabakat bilgilerini getiren sorgu için indeks oluşturulur.Kur tablosunda yılların birikmiş kaydı; mutabakat sorgusunda indeks yok.PF-01985
ERR-OBS-242GÖZLEMLENMİŞS3H-161 — Program sürümü güncellenmek isteniyor (exe güncelleme)Yeni özellik yok, bilinen hata devam ediyor, terazi çalışmıyor.[Ekip tarafından doldurulacak]PF-03170
ERR-OBS-243GÖZLEMLENMİŞS3H-162 — Yedek almaMüşteri yedek istiyor / devir öncesi yedek gerekiyor.[Ekip tarafından doldurulacak]PF-05470
ERR-OBS-244GÖZLEMLENMİŞS3H-163 — İşlem listesi / hesap açılışı çok yavaşÇok işlemli hesaplarda hesap seçince liste dakikalarca bekliyor.En çok işlem yapan hesap `Select HesapId, Count(*) From Cari.Islemler Group By HesapId Order By Count(*) Desc` ile bulunur; o hesap için hesap bilgileri sorgusunun (temsilci, son işlem tarihi, son mutVeritabanında indeks eksik.PF-03585
ERR-OBS-245GÖZLEMLENMİŞS3H-164 — BTrans alma (her ay, mali müşavir için)şema kontrolü "Vergi Numarası 10 Karaketer Olmalıdır" tipi hata veriyor → ilgili cari kartında vergi/TC numarası düzelti[Ekip tarafından doldurulacak]PF-00170
ERR-OBS-246GÖZLEMLENMİŞS3H-165 — Yılbaşında fatura / e-döviz belgesi numarası güncellemesiOcak ayında kesilen ilk faturanın numarası önceki yıldan devam ediyor veya "fatura numarası" hatası alınıyor.Belge numarası yıl bazında sıfırlanır; numarayı üreten yordamın yıl şartı güncel değilse eski yılın son numarasından devam eder.PF-01870
ERR-OBS-247GÖZLEMLENMİŞS3H-166 — e-Belge işlem limiti güncellemesi (5.000 $ / 85.000 TL)Kimlik bilgisiz ("isim beyan edilmemiştir") e-Döviz belgesi düzenlenebilen üst sınır değişti; program eski sınırla uyarı```sql
UPDATE Sistem.Subeler SET EBelgeUsdLimit = 4999 WHERE EntUserName IS NOT NULL; -- kimlikli: 4.999
UPDATE Sistem.Subeler SET EBelgeTlLimit = 84999 WHERE EntUserName IS NOT NULL; -- kimlikli:
Mevzuattaki sınır değişince şube kartındaki e-belge USD/TL limitleri ve DijitalFatura (e-Döviz belge entegrasyon) bileşeni güncellenmelidir.PF-01885
ERR-OBS-248GÖZLEMLENMİŞS3H-167 — Lisans yenileme dalgası (Ekim–Kasım)Ekim–Kasım'da "program lisans istiyor" çağrıları iki katına çıkar.Yıllık lisanslar aynı dönemde dolar; her bilgisayar ayrı lisanslandığından şubedeki her makine ayrı ayrı arar.PF-00270
ERR-OBS-249GÖZLEMLENMİŞS3H-168 — Yılbaşı kontrol listesi (Aralık'ta her müşteriye gönderilir)[Ekip tarafından doldurulacak]PF-01570
ERR-OBS-250GÖZLEMLENMİŞS3H-169 — Pazartesi sabahı kontrol listesi (veznedar için)[Ekip tarafından doldurulacak]PF-01570
ERR-POT-001POTANSİYELS1TD-01 — Çok adımlı işlemlerde transaction yokVB — fatura başlığı yazılıp `FaturaYaz` çalışmayabilir; işlem yazılıp `RsAktar` yapılmayabilir; karşı hesap kaydı düşerse bakiye hareketi tek taraflıÇok adımlı işlemlerde transaction yok`ERPPRO/Class/Dao/Cari.Fatura.vb:229-230,313-317`; `ERPPRO/Class/Dao/Islem/Cari.Islem.vb:695-696,989`; `ERPPRO/Controls/Islem Ekranı/Ekran/iFormBase.vb:218-241,242-264`; `ERPPRO/Class/Module/Devir.vb:80
ERR-POT-002POTANSİYELS2TD-02 — `Max(...)+1` ile numara üretimi (yarış koşulu)VB — iki istemci aynı anda kaydederse aynı fiş/kod/fatura numarası üretilir; fiş numarası evrensel tek sayaç (`ERPGOLD-mimari-referans.md §10 soru 6`,`Max(...)+1` ile numara üretimi (yarış koşulu)`ERPPRO/Class/Ext/Cari.IslemEx.vb:256-260` (`GetNewFisNo`: `Select Max(FisNo) From Cari.Islemler` + 1), `:261-267` (`GetNewSiraNo`: `Cari.GetNewSiraNo(...)` + 1); `ERPPRO/Class/Dao/Stok.Model.vb:248`,80
ERR-POT-003POTANSİYELS1TD-03 — `Cari.AcceptTransaction` tetikleyicisinde cursor sızıntısıVB, PF — cursor `GLOBAL` kapsamda ise bağlantı havuzuna dönen bağlantıda "A cursor with the name 'IslemCursor' already exists" ile sonraki tüm işlemle`Cari.AcceptTransaction` tetikleyicisinde cursor sızıntısıDB `Cari.AcceptTransaction` (TR, 29.862 karakter) — `DECLARE IslemCursor CURSOR` satır 72, `OPEN` 79; `RAISERROR … ROLLBACK … RETURN` satır 94-97 (şube pasif) ve 102-105 (e-döviz faturası gönderilmiş)80
ERR-POT-004POTANSİYELS1TD-04 — Tetikleyicide `ROLLBACK` sonrası `RETURN` yokVB — `ROLLBACK` sonrası kod akışı devam eder; sonraki `INSERT/UPDATE`'ler transaction dışında (autocommit) çalışabilir.Tetikleyicide `ROLLBACK` sonrası `RETURN` yokDB `Cari.AcceptTransaction` satır 119-122 (eksik evrak), 182-184 (şube/kasa/hesap seçilmedi), 229-231 (takoza ait işlem var), 243-245 (takoz stokta yok).80
ERR-POT-005POTANSİYELS2TD-05 — Koda gömülü bağlantı dizeleri, `sa` hesabı ve parolalarGV — derlenmiş EXE'den parola okunabilir; uygulama üretimde `sa` ile bağlanıyorsa TD-09/TD-10'daki her açık tam yetkiyle sonuçlanır.Koda gömülü bağlantı dizeleri, `sa` hesabı ve parolalar`ERPPRO/Class/Module/InternalDb.vb:11` (`ConnStr` varsayılanı: sunucu, `sa`, düz metin parola); `ERPPRO/ERPGOLDV2DataSet.Designer.vb:1730` (sunucu IP'si + `sa`); `ERPPRO/app.config:10-12` (IntegratedPF-05380
ERR-POT-006POTANSİYELS2TD-06 — Yapılandırma dosyası şifrelemesi zayıfGV — `Config.cfg` içindeki bağlantı dizesi (SQL parolası dahil) uygulama binarisine sahip herkes tarafından çözülebilir.Yapılandırma dosyası şifrelemesi zayıf`ERPPRO/Configuration/ConfigurationForm.vb:301` (okuma), `:325` (yazma), `:331-365` (`AES_Encrypt/AES_Decrypt`: Rijndael **ECB**, MD5 anahtar türetme, **koda gömülü sabit parola**).80
ERR-POT-007POTANSİYELS2TD-07 — Parolalar geri döndürülebilir şifreliGV — DB erişimi olan herkes tüm parolaları çözebilir; parolalar süreç belleğinde düz metin.Parolalar geri döndürülebilir şifreli`ERPPRO/Class/Module/Crypto.vb:6-48` (sabit parola, Rijndael CBC — değer kopyalanmadı); `ERPPRO/Class/Dao/Sistem.Users.vb:43,144,188` (kullanıcı parolası `Crypto.Decrypt` ile yükleniyor, `Encrypt` ile80
ERR-POT-008POTANSİYELS2TD-08 — İşlem ekranında sabit yönetici parolasıGV — kaynak/binari üzerinden parola öğrenen herkes fişleri iptal edebilir; değiştirilemez, denetlenemez.İşlem ekranında sabit yönetici parolası`ERPPRO/Controls/Islem Ekranı/Base Control/iScreen.vb:722` — `PasswordBox.ShowDialog(Me, "", "")`; doğrulanınca `:723` `Update Cari.Islemler Set IsDeleted='True' Where FisNo=… and KasaId=…` (fiş toplu80
ERR-POT-009POTANSİYELS1TD-09 — SQL metni birleştirme, string kullanıcı girdileriGV, VB — `'` içeren girdi sorguyu bozar; bilinçli girdi `sa` yetkisiyle (TD-05) veri değiştirebilir.SQL metni birleştirme, string kullanıcı girdileri1010/1468 ifade, 311 sınıf (scan). String girdi örnekleri: `ERPPRO/Form/Doviz/FrmDovFaturaEkranı.vb:239-243` (`InputBox` → `RefNo`), `Controls/Islem Ekranı/Ekran/Fatura Helper/FindTaxInfo.vb:25`, `FrmPF-01380
ERR-POT-010POTANSİYELS1TD-10 — Serbest SQL editörü ve bağlantı dizesiGV — uygulama içinden `sa` ile rastgele SQL; menü yetkisine bağlı `[GAP: hangi kullanıcı grubuna açık olduğu Usergroup verisinden doğrulanmadı]`.Serbest SQL editörü ve bağlantı dizesi`ERPPRO/Form/Tanımlamalar/Sistem/FrmSqlEditor.vb:77-85` (`RadioGroup1` → `InternalDb.ConnStr` veya `TxtConnectionString.Text`), `:86-…` (`TestConnection`, sorgu çalıştırma).80
ERR-POT-011POTANSİYELS2TD-11 — Veritabanındaki kaynak kodun çalışma zamanında derlenmesiGV, BK — tabloya yazabilen herkes uygulama sürecinde kod çalıştırır; derlenen sınıflar statik analiz/test dışı; ayrı bir ORM dünyası (TD-17).Veritabanındaki kaynak kodun çalışma zamanında derlenmesi`ERPPRO/Class/Dao/Dynamic/Class/Compiler.vb:57-74` (`VBCodeProvider.CompileAssemblyFromSource`), `Class/Base/DynamicForm.vb:300-318` (`AifaDev.DynamicForms.Code` kolonu), `Class/Base/Table.vb:145-160`80
ERR-POT-012POTANSİYELS2TD-12 — Boş `Catch`VB, BK — `Save` `False` döner ama sebep kaybolur; kur/önbellek yüklenemezse sessizce boş/eski değer kullanılır.Boş `Catch`679 metot, 273 dosya; `ERPPRO/Class/Dao` 361. En yoğun: `Designer/DosPrint/DosPrint.vb` (14), `Form/Siparis/NetEntegrator.vb` (12), `Class/Dao/Dynamic/Class/Base/Data.vb` (8), `Class/Module/Database.v80
ERR-POT-013POTANSİYELS2TD-13 — `InternalDb` yaşam döngüsü kusurlarıPF, VB — 866 `Using db As New InternalDb` bloğundan yalnız 231'i açıkça kapatıyor; kalanlar GC'ye kalıyor (havuz baskısı, uzun süreli açık bağlantı);`InternalDb` yaşam döngüsü kusurları`ERPPRO/Class/Module/InternalDb.vb:131-141` (`Dispose(disposing)` gövdesi boş — `SqlConnection` kapatılmıyor), `:53-65,69-81` (`Finally` boş), `:100-123` (`Da.Fill(Ds)` aynı `DataSet`'e ekler, temizle80
ERR-POT-014POTANSİYELS2TD-14 — Veri katmanı UI açıyorBK — DAO sunucu/servis/test ortamında çalışamaz; kullanıcı kararı (Yes/No) iş mantığının içinde.Veri katmanı UI açıyor`ERPPRO/Class/Module/InternalDb.vb:44,61,77,93,106,120` (`MessageBox/MsgBox`); `Class/Dao` 45 satır/19 dosya, `Class/Ext` 19 satır/4 dosya; `Class/Dao/Islem/Cari.Islem.vb:533-535,1025,1049` (`FrmSilme80
ERR-POT-015POTANSİYELS2TD-15 — Global durum bağımlılığıBK — birim test ve çoklu oturum imkânsız; şube/kasa bağlamı örtük.Global durum bağımlılığı1175 başvuru, 312 sınıf (`Program` 763, `DSX` 322, `LoginInformation` 87); DAO'da 110/162 sınıf. Örnek: `Class/Dao/Base.vb:6-16` (`ActiveSirketId/SubeId` → `Program.*`), `Class/Dao/Islem/Cari.Islem.vb80
ERR-POT-016POTANSİYELS2TD-16 — Kopyala-yapıştırBK — bir kural değişikliği 100+ dosyaya dokunur; ekran çiftleri ayrışır (`iFDoviz`/`iFNakit` farkı, mimari referans §9-17).Kopyala-yapıştır`Save()` 91/105 birebir (`Class/Dao/Agent.Agent.vb:104`, `Cari.Transferler.vb:164-166` …); `SetPropertyValue/GetPropertyValue` 121 dosya (`Cari.Fatura.vb:376-392` …); üçlü `Delete` 87 dosya (`Cari.Hes80
ERR-POT-017POTANSİYELS3TD-17 — Üç veri erişim yolu ve artık referanslarBK — dört farklı kalıp; yeni geliştirici hangisini kullanacağını bilemez.Üç veri erişim yolu ve artık referanslar`InternalDb` (293 sınıf), `DataLayout/DBBaseClass.vb` (tek türev `Repository.vb:21-23`), `Class/Dao/_SQLBase/SQLBase.vb` (tek türev `Class/Dao/Islem/Cari.IDetay.vb:4-6`), `Class/Dao/Dynamic/*`; `ERPPR80
ERR-POT-018POTANSİYELS2TD-18 — `DBBase.IsValidate` semantiği ters, yalnız 4 tipte doğrulamaVB — dinleyicisi olmayan/ikinci dinleyici eklenen tiplerde doğrulama yanlış anlamda çalışır; olay `Shared` olduğu için `Program` statik kurucusu çalış`DBBase.IsValidate` semantiği ters, yalnız 4 tipte doğrulama`ERPPRO/Class/Dao/Base.vb:116-121` (`Validate(Obj, ByRef Cancel)`, `IsValid=True` ile çağrılır, aynen döner); tek dinleyici `Class/Module/Program.vb:4,20-30` (`Validated` anlamında yazar; `Parcakarti/80
ERR-POT-019POTANSİYELS3TD-19 — `DBBase.ActiveKasaId` sonsuz özyinelemeBK — çağrılırsa `StackOverflowException` (süreç çöker). Çağıran yok (grep 0) → latent.`DBBase.ActiveKasaId` sonsuz özyineleme`ERPPRO/Class/Dao/Base.vb:18-22` (`Get … Return ActiveKasaId`).PF-06380
ERR-POT-020POTANSİYELS3TD-20 — `SQLBase._Query` `Shared`VB — ikinci bir `SQLBase` türevi eklendiğinde yanlış tabloya MERGE. Bugün tek türev (`Cari.IFatura`) → gizli.`SQLBase._Query` `Shared``ERPPRO/Class/Dao/_SQLBase/SQLBase.vb:31` (`Private Shared _Query`), `:38-64` (ilk hesaplanan MERGE metni tüm türevlerde kullanılır).80
ERR-POT-021POTANSİYELS2TD-21 — `Program.GetKur` her zaman alış; birim yoksa `1`VB — satış yönünde alış kuru → marj kaybı (kabul edilmiş hata, AS-DOCUMENTED §10 soru 4); listede olmayan birim için `1` dönmesi sessiz yanlış tutar.`Program.GetKur` her zaman alış; birim yoksa `1``ERPPRO/Class/Module/Program.vb:260-268` (`Return K.Alis` / `Else Return 1`). Kullanım: `Class/Dao/Islem/Cari.Islem.vb:506-531`, `Controls/Islem Ekranı/Ekran/FrmEFaturaBas.vb:298`, `Form/Doviz/FrmDovFPF-02380
ERR-POT-022POTANSİYELS2TD-22 — Kur fallback sessiz (DB)VB — eski kurla işlem; kullanıcı uyarılmaz.Kur fallback sessiz (DB)DB `Sistem.GetKurListesi` (IF) satır 5-9: `IsNull(K.Alis, L.Alis)` … `Left Join Sistem.GetLastKur L` — o güne kur girilmemişse son kur döner, işaret yok. Tüketici `ERPPRO/Class/Dao/Sistem.KurListesi.v80
ERR-POT-023POTANSİYELS2TD-23 — `Stok.GetMadenMaliyeti` `TOP 50` ve güncel kurVB — talep miktarı son 50 hareketi aşarsa maliyet eksik; maliyet hareket tarihindeki değil bugünkü kurla çevriliyor.`Stok.GetMadenMaliyeti` `TOP 50` ve güncel kurDB `Stok.GetMadenMaliyeti` (FN) satır 16-17 (`Select top 50 … From Stok.StokHaraketleri`), satır 38 (`FN.Bol(@ToplamMaliyet, (Select top 1 Alis From Sistem.Kurlar … Order By Tarih Desc))`).PF-03480
ERR-POT-024POTANSİYELS2TD-24 — `DSX` önbelleği tutarlılığıVB, BK — yeni kayıtlar (hesap, maden, kasa) ekranlara ancak tam yenilemede düşer (INFERRED, `[GAP]` bkz. database-access §7); yükleme hatası sessiz.`DSX` önbelleği tutarlılığı`ERPPRO/Class/Module/Database.vb:78+562, 134+564, 219+566, 243+568, 292+570, 176+580, 152+584` (her yükleyici olayını kendisi yükseltir, `RetriveOfAllData` tekrar yükseltir → dinleyiciler iki kez çalı80
ERR-POT-025POTANSİYELS3TD-25 — `KurListesi` timer thread güvenliğiVB — nadir yarış/`InvalidOperationException` (koleksiyon değiştirildi) riski (INFERRED).`KurListesi` timer thread güvenliği`ERPPRO/Class/Dao/Sistem.KurListesi.vb:62,74` (`System.Threading.Timer`, 15 sn), `:95-123` (`RetriveFromDb` listeye `Add` ederken UI `Program.GetKur` ile `Find` yapar; kilit yok; `:111` okuyucu kapand60
ERR-POT-026POTANSİYELS3TD-26 — Magic number karşılaştırmalarıBK — kod tablosu ile enum eşleşmesi kodda dağınık; anlam kaybı.Magic number karşılaştırmaları`ERPPRO/Controls/Islem Ekranı/Ekran/FrmTransfer.vb:57,69,80` (`SetStatus(…, 3|1|2)`), `Class/Dao/Cari.Transferler.vb:152`, `Form/Provizyon/FrmProvizyonKabul.vb:52` (`Status=1`), `Controls/Grid/Provizy80
ERR-POT-027POTANSİYELS2TD-27 — Combo indeksi doğrudan `IslemTuru` olarak kaydediliyorVB — `IslemKodu=BORC` kayıtlarında `IslemTuru` ALACAK/BORC yerine GIRIS/CIKIS; raporlar ve `GetKarsiIslemTuru` (`Database.vb:658-674`) bu değere göreCombo indeksi doğrudan `IslemTuru` olarak kaydediliyor`ERPPRO/Controls/Islem Ekranı/Ekran/iFBorc.vb:6,56` (`IslemTuru = CmbIslemTuru.SelectedIndex`), `iFBorc.Designer.vb:233` (`Items = {"ALACAK","BORC"}`) — enum `Class/Ext/Cari.IslemEx.vb:48-55` (`GIRIS=80
ERR-POT-028POTANSİYELS2TD-28 — Sabit kodlanmış MASAK eşikleriVB (mevzuat) — güncel eşiklerle uyumsuz (AS-DOCUMENTED §9-24: 185.000 TL / 5.000 USD, `masak-mevzuat-notlari.md`); her değişiklikte derleme.Sabit kodlanmış MASAK eşikleri`ERPPRO/Controls/Islem Ekranı/Ekran/ParakendeSatis.vb:279-280` (`> 7000` TL isimsiz hesap), `:349-350`, `:407` (`> 3000` USD uyarı).80
ERR-POT-029POTANSİYELS1TD-29 — `Devir.DevirYap`: `TRUNCATE` + yeniden `INSERT`, transaction yokVB — `TRUNCATE` sonrası `INSERT` hata verirse hareket tabloları boş kalır; tek güvence önce alınan yedek.`Devir.DevirYap`: `TRUNCATE` + yeniden `INSERT`, transaction yok`ERPPRO/Class/Module/Devir.vb:39-40` (`BACKUP/RESTORE` metinleri string birleştirme), `:76-87` (`Truncate Table Cari.Islemler, Cari.BakiyeIslem, Cari.History, Stok.StokHaraketleri, Cari.IslemDetaylariPF-03680
ERR-POT-030POTANSİYELS1TD-30 — `Repair.BalanceRepair`VB — çalıştırılırsa devir bakiyeleri/transfer hareketleri kaybolur ve fatura tipli (11/12) işlemlere bakiye yazar (AS-DOCUMENTED `ERPGOLD-mimari-refer`Repair.BalanceRepair`DB `Repair.BalanceRepair` (P, 18.773 karakter; 2 `TRUNCATE`, cursor), `Repair.StokRepair`. Uygulamadan çağıran yok (`grep "BalanceRepair|StokRepair"` ERPPRO = 0).80
ERR-POT-031POTANSİYELS2TD-31 — `Cari.IslemINS` precision'sız `decimal` parametrelerVB — kullanılırsa milyem/fiyat/kur tam sayıya yuvarlanır (AS-DOCUMENTED `erpgoldv2-kod-katmani-bulgulari.md §3`; parametre tanımı VERIFIED).`Cari.IslemINS` precision'sız `decimal` parametrelerDB `Cari.IslemINS` (P): 24 parametre çıplak `decimal` (`@Miktar, @AuMilyem, @Fiyat, @HasKur …` → `decimal(18,0)`), 12 parametre `nvarchar(max)`. Uygulamadan çağıran yok (grep 0).80
ERR-POT-032POTANSİYELS1TD-32 — `Cari.Islemler` tetikleyicileri demo kopyasında kapalıVB — iş kurallarının (şube pasif, evrak eksik, takoz stok) uygulama mı DB mi tarafından uygulandığı belirsiz; üretimde açıksa TD-03/TD-04 aktif.`Cari.Islemler` tetikleyicileri demo kopyasında kapalıDB `Cari.AcceptTransaction`, `UpdateTransaction`, `InsertTransaction`, `DeleteTransaction` — dördü DISABLED (AS-DOCUMENTED `erpgoldv2-kod-katmani-bulgulari.md §2`). Uygulama tarafında karşılığı: `Clas60
ERR-POT-033POTANSİYELS3TD-33 — Uyumluluk seviyesi 100PF — skaler UDF inlining, yeni kardinalite tahmini yok.Uyumluluk seviyesi 100DB `ERPGOLDV2` (AS-DOCUMENTED `erpgoldv2-ilk-bulgular.md:4, §8`; mimari referans §9-30). `FN.Bol` skaler UDF 121 modülde; uygulama SQL'inde `Fn.Bol(` 10 satır (grep).80
ERR-POT-034POTANSİYELS3TD-34 — 45 kullanılmayan tabloBK — şema yanıltıcı; rapor yazanlar yanlış tabloya (`dbo.BakiyeIslem` vs `Cari.BakiyeIslem`) bağlanabilir.45 kullanılmayan tablo`kb_src/notes/gaps.json` `GAP-DB-01` (satır 0 + hiçbir SQL nesnesinin kullanmadığı 45 tablo: `Agent.Controller/FeedBack`, `AifaDev.GridLayouts/Layouts/ShortKeys`, `dbo.BakiyeIslem` (kopya), `DynamicFo80
ERR-POT-035POTANSİYELS2TD-35 — ExLimit PIN üretimi zayıfGV — GUID hex karakterleri (0-9, A-F) → 16×16 = 256 olası PIN, ASCII kodları tahmin edilebilir (mimari referans §9-22 ile uyumlu).ExLimit PIN üretimi zayıf`ERPPRO/Class/Dao/Islem/FrmExLimit.vb:50-53` (`Left(GetNewGUID, 2)` → her karakterin `Asc` değeri birleştirilir); `:48-49` "captcha" `Say1 + (Say1 - 1)` toplama sorusu.80
ERR-POT-036POTANSİYELS3TD-36 — `Sistem.Clients` hard deleteVB — soft-delete kuralının (`IsDeleted`) dışına çıkan tek DAO silmesi; makine adı string birleştirme.`Sistem.Clients` hard delete`ERPPRO/Class/Dao/Sistem.Clients.vb:232` (`Delete From Sistem.Clients Where ClientName='" & ComputerName & "'`).80
ERR-POT-037POTANSİYELS3TD-37 — `Program.AfterSave` ondalık değeri `ToString` ile SQL'e gömüyorVB — kültür ondalık ayırıcı `,` ise SQL hatası/yanlış değer; `Utils.Culture` (`Class/Module/Utils.vb:126-139`) `.` zorluyor, ancak yalnız o özellik ça`Program.AfterSave` ondalık değeri `ToString` ile SQL'e gömüyor`ERPPRO/Class/Module/Program.vb:11-14` (`Set Miktar=Adet * " & .OrtMiktar.ToString & "`), iki ayrı `UPDATE`, transaction yok.80
ERR-POT-038POTANSİYELS3TD-38 — Ölü kod ve artıklarBK — okuma yükü, yanlış yol seçimi.Ölü kod ve artıklar`ERPPRO/Class/Module/Utils.vb:198-…` (`cVBEvalProvider` — çağıran yok); `ERPPRO/ERPGOLDV2DataSet.Designer.vb:1800-1992` (`TableAdapterManager.UpdateAll` — çağıran yok); `CodeDesigner/CodeDesigner/UiDe80
ERR-POT-039POTANSİYELS2TD-39 — `Cari.Islemler.VaryantId` adı yanıltıcı — karşı işlem Id'si tutuyor`Cari.Islemler.VaryantId` adı yanıltıcı — karşı işlem Id'si tutuyorBelirtilen SQL nesnesi / ekran verisi60
ERR-POT-040POTANSİYELS2TD-40 — `TxtTarih` kontrolü `Vade` kolonuna yazıyor (iFMaden, iFNakit, Banka Op. Skoru)`TxtTarih` kontrolü `Vade` kolonuna yazıyor (iFMaden, iFNakit, Banka Op. Skoru)Belirtilen SQL nesnesi / ekran verisi60
ERR-POT-041POTANSİYELS2TD-41 — `MüşteriŞemasıAIslemFiyatlari` tetikleyicisi: tek satır `Inserted`, sabit kimlikler, korumasız bölme`MüşteriŞemasıAIslemFiyatlari` tetikleyicisi: tek satır `Inserted`, sabit kimlikler, korumasız bölmeCari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.Kurlar60
ERR-POT-042POTANSİYELS2TD-42 — Devir yalnız 5 tabloyu boşaltıyor; `IslemId` taşıyan diğer tablolar birikiyorDevir yalnız 5 tabloyu boşaltıyor; `IslemId` taşıyan diğer tablolar birikiyorBelirtilen SQL nesnesi / ekran verisiPF-03660
ERR-POT-043POTANSİYELS2TD-43 — Müşteri adı taşıyan şemalar çekirdek DB'de: `MüşteriŞemasıA`, `MüşteriŞemasıB`, `MüşteriŞemasıC`, `MüşteriŞemasıD`Müşteri adı taşıyan şemalar çekirdek DB'de: `MüşteriŞemasıA`, `MüşteriŞemasıB`, `MüşteriŞemasıC`, `MüşteriŞemasıD`Belirtilen SQL nesnesi / ekran verisi60
ERR-POT-044POTANSİYELS2TD-44 — Kod tabloları kod enum'unun gerisinde: `IslemTipi` 12–15, `IslemKodu` 14Kod tabloları kod enum'unun gerisinde: `IslemTipi` 12–15, `IslemKodu` 14Kurulum/bağlantı ayarları (veri etkilenmez)60
ERR-POT-045POTANSİYELS2TD-45 — 10 ekran canlı DB'de olmayan 8 tabloya yazıyor10 ekran canlı DB'de olmayan 8 tabloya yazıyorBelirtilen SQL nesnesi / ekran verisi60
ERR-POT-046POTANSİYELS3TD-46 — ANA MENÜ'de arkasında kod olmayan 25 düğmeANA MENÜ'de arkasında kod olmayan 25 düğme60
ERR-POT-047POTANSİYELS3TD-47 — Rapor fonksiyonları üç şemaya dağılmış: `Report`, `Reports`, `ReportsV2`Rapor fonksiyonları üç şemaya dağılmış: `Report`, `Reports`, `ReportsV2`PF-00460
ERR-POT-048POTANSİYELS1TD-48 — `AcceptTransaction` kurulumlar arasında ayrışmış (29.862 ↔ 31.152 krk)`AcceptTransaction` kurulumlar arasında ayrışmış (29.862 ↔ 31.152 krk)Cari.Islemler + karşı hesap/fatura/RsAktar kayıtları (yarım işlem)PF-00860
ERR-POT-049POTANSİYELS2TD-49 — İş kuralı 55 ekranda DAO dışına gömülü (doğrudan INSERT/UPDATE)İş kuralı 55 ekranda DAO dışına gömülü (doğrudan INSERT/UPDATE)Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.Kurlar60
ERR-POT-050POTANSİYELS3InvalidCastException (CDate) — CreateBTransDoviz.BtnCreateXML_ClickTeknik hata kutusu; XML üretilmez.InvalidCastException (CDate)Kullanıcı TxtDonem.Text alanına tarih olarak çözümlenemeyen bir metin girip 'XML Oluştur' butonuna basarsa (örn. '13.202Try/Catch var; Catch ex → MsgBox(ex.Message) (teknik İngilizce mesaj 'Conversion from string ... to type Date is not valid'). Ön doğrulama (IsDate/DateTime.TryP85
ERR-POT-051POTANSİYELS3InvalidCastException (CDate) — CreateBTransDoviz.BtnCreateXML_ClickTeknik hata kutusu; XML üretilmez.InvalidCastException (CDate)Kullanıcı TxtBasTarih.Text alanına tarih olarak çözümlenemeyen bir metin girip 'XML Oluştur' butonuna basarsa (örn. '13.Try/Catch var; Catch ex → MsgBox(ex.Message) (teknik İngilizce mesaj 'Conversion from string ... to type Date is not valid'). Ön doğrulama (IsDate/DateTime.TryP85
ERR-POT-052POTANSİYELS3InvalidCastException (CDate) — CreateBTransDoviz.BtnCreateXML_ClickTeknik hata kutusu; XML üretilmez.InvalidCastException (CDate)Kullanıcı TxtSonTarih.Text alanına tarih olarak çözümlenemeyen bir metin girip 'XML Oluştur' butonuna basarsa (örn. '13.Try/Catch var; Catch ex → MsgBox(ex.Message) (teknik İngilizce mesaj 'Conversion from string ... to type Date is not valid'). Ön doğrulama (IsDate/DateTime.TryP85
ERR-SIL-001SESSİZ MANTIK / HESAPLAMAS4IndexOutOfRangeException / InvalidCastException — FrmBlokTakozGirisi.ListRefreshBelirti yok; hatalı girişte 'Girilen Bilgilere Göre Takoz Cıkıs İşlemleri Bulunamadı' mesajı.IndexOutOfRangeException / InvalidCastExceptionTxtSubeId.Text 'Sube.Hesap.FisNo' biçiminde değilse (Form Load'da boş metinle çağrılır → Split('.')(0) yok; veya sayısalTry/Catch var ama Catch bloğu boş; SubeId/HesapId/FisNo 0 kalır ve sorgu 0 değerleriyle çalışır. Form Load'da (satır 3-4) ListRefresh boş metinle çağrıldığı içiPF-01090
ERR-SIL-002SESSİZ MANTIK / HESAPLAMAS4IndexOutOfRangeException / InvalidCastException — FrmBlokTakozGirisi.ListRefreshBelirti yok; hatalı girişte 'Girilen Bilgilere Göre Takoz Cıkıs İşlemleri Bulunamadı' mesajı.IndexOutOfRangeException / InvalidCastExceptionTxtSubeId.Text 'Sube.Hesap.FisNo' biçiminde değilse (Form Load'da boş metinle çağrılır → Split('.')(1) yok; veya sayısalTry/Catch var ama Catch bloğu boş; SubeId/HesapId/FisNo 0 kalır ve sorgu 0 değerleriyle çalışır. Form Load'da (satır 3-4) ListRefresh boş metinle çağrıldığı içiPF-01090
ERR-SIL-003SESSİZ MANTIK / HESAPLAMAS4IndexOutOfRangeException / InvalidCastException — FrmBlokTakozGirisi.ListRefreshBelirti yok; hatalı girişte 'Girilen Bilgilere Göre Takoz Cıkıs İşlemleri Bulunamadı' mesajı.IndexOutOfRangeException / InvalidCastExceptionTxtSubeId.Text 'Sube.Hesap.FisNo' biçiminde değilse (Form Load'da boş metinle çağrılır → Split('.')(2) yok; veya sayısalTry/Catch var ama Catch bloğu boş; SubeId/HesapId/FisNo 0 kalır ve sorgu 0 değerleriyle çalışır. Form Load'da (satır 3-4) ListRefresh boş metinle çağrıldığı içiPF-01090
ERR-POT-053POTANSİYELS3UnauthorizedAccessException / DirectoryNotFoundException (IndexOutOfRange yanlış pozitif, farklı gerçek risk) — Dosya.ShowFileTeminat/dosya görüntülemede yakalanmamış istisna (ThreadException → hata formu veya sessiz kapanma).UnauthorizedAccessException / DirectoryNotFoundException (IndexOutOfRange yanlış pozitif, farklı gerçek risk)Split('.')(0) hiçbir zaman IndexOutOfRange atmaz. Gerçek risk: Windows kullanıcı adı veya Temp yolu '.' içeriyorsa (örn.FileStream oluşturma Try/Catch dışında (sadece Process.Start Try içinde). DocumentData Is Nothing kontrolü var ama yol kontrolü yok.80
ERR-POT-054POTANSİYELS3UnauthorizedAccessException / DirectoryNotFoundException (IndexOutOfRange yanlış pozitif, farklı gerçek risk) — FrmCariKartEkle.TeminatlarButtonClickTeminat/dosya görüntülemede yakalanmamış istisna (ThreadException → hata formu veya sessiz kapanma).UnauthorizedAccessException / DirectoryNotFoundException (IndexOutOfRange yanlış pozitif, farklı gerçek risk)Split('.')(0) hiçbir zaman IndexOutOfRange atmaz. Gerçek risk: Windows kullanıcı adı veya Temp yolu '.' içeriyorsa (örn.FileStream oluşturma Try/Catch dışında (sadece Process.Start Try içinde). DocumentData Is Nothing kontrolü var ama yol kontrolü yok.80
ERR-POT-055POTANSİYELS3UnauthorizedAccessException / DirectoryNotFoundException (IndexOutOfRange yanlış pozitif, farklı gerçek risk) — FrmTeminatEkle.ShowFileTeminat/dosya görüntülemede yakalanmamış istisna (ThreadException → hata formu veya sessiz kapanma).UnauthorizedAccessException / DirectoryNotFoundException (IndexOutOfRange yanlış pozitif, farklı gerçek risk)Split('.')(0) hiçbir zaman IndexOutOfRange atmaz. Gerçek risk: Windows kullanıcı adı veya Temp yolu '.' içeriyorsa (örn.FileStream oluşturma Try/Catch dışında (sadece Process.Start Try içinde). DocumentData Is Nothing kontrolü var ama yol kontrolü yok.80
ERR-SIL-004SESSİZ MANTIK / HESAPLAMAS4IndexOutOfRangeException — UiForm.LoadDesignerTasarımcıda bazı kontroller yüklenmez; hata mesajı yok.IndexOutOfRangeExceptionDesigner kodundaki 'Friend WithEvents' satırı beklenen 'Friend WithEvents Ad as New Tip' biçiminde değilse (elle düzenleSatır 30 `On Error Resume Next` → istisna yutulur, Dim değişkeni Nothing kalır, `ControlTpye <> ""` False olur ve kontrol sessizce atlanır. Araç tarafından üret70
ERR-SIL-005SESSİZ MANTIK / HESAPLAMAS4IndexOutOfRangeException — UiForm.LoadDesignerTasarımcıda bazı kontroller yüklenmez; hata mesajı yok.IndexOutOfRangeExceptionDesigner kodundaki 'Friend WithEvents' satırı beklenen 'Friend WithEvents Ad as New Tip' biçiminde değilse (elle düzenleSatır 30 `On Error Resume Next` → istisna yutulur, Dim değişkeni Nothing kalır, `ControlTpye <> ""` False olur ve kontrol sessizce atlanır. Araç tarafından üret70
ERR-SIL-006SESSİZ MANTIK / HESAPLAMAS4NullReferenceException — EtiketDesignList.SimpleList1_ButtonClickButona basınca hiçbir şey olmaz, mesaj yok.NullReferenceExceptionListe boşken veya satır seçili değilken Düzenle/Sil butonuna basılırsa GetFocusedRow Nothing döner; `New EtiketDesign(ItSatır 16 `On Error Resume Next` → NRE yutulur, hiçbir şey olmaz. Item Is Nothing kontrolü yok (karşılaştırma: RDPList.vb:13 aynı deseni açıkça kontrol ediyor).75
ERR-SIL-007SESSİZ MANTIK / HESAPLAMAS3Tüm istisnalar (maskeleme) — UrunListesi.LoadStokSeri işlem ekranında ürün listesi eksik görünür; hata mesajı yok.Tüm istisnalar (maskeleme)DSX.TABLE.ListOfMaden/ListOfEmtia vb. Nothing ise veya öğe eşlemesinde istisna oluşursaOn Error Resume Next tüm hataları yutar; liste eksik/boş kalır. Loglama yok.PF-04565
ERR-SIL-008SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — EtiketDesignList.SimpleList1_ButtonClickButon tepkisiz.Tüm istisnalar (maskeleme)Bkz. satır 17 kaydıOn Error Resume Next; NRE ve alt form hataları yutulur.75
ERR-SIL-009SESSİZ MANTIK / HESAPLAMAS4TargetInvocationException / InvalidCastException (maskeleme) — EtiketDetay.GetValueEtikette ilgili alan boş basılır.TargetInvocationException / InvalidCastException (maskeleme)Item Nothing ise veya FieldName özelliği okunurken istisna oluşursa (Prop.GetValue), Result boş kalır.On Error Resume Next; Prop IsNot Nothing kontrolü var ancak Item Nothing kontrolü yok.PF-02460
ERR-SIL-010SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — DataList.DataBindListe boş; ek mesaj yok.Tüm istisnalar (maskeleme)InternalDb(Query).DataTable Nothing dönerse (SQL hatası) veya DevExpress kolon işlemlerinde istisna olursaOn Error Resume Next; SQL hatası InternalDb tarafından MsgBox ile gösterilir, sonrası sessiz.70
ERR-SIL-011SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — DataListBase.DataBindListe/resim yüklenmez, mesaj yok.Tüm istisnalar (maskeleme)ActiveObject Nothing ise veya görsel/veri bağlama hatasıOn Error Resume Next.70
ERR-SIL-012SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — SimpleList.RetriveDataListe boş; mesaj yok.Tüm istisnalar (maskeleme)SQL/DevExpress hatalarıOn Error Resume Next.70
ERR-SIL-013SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — Appointment.New(Apt)Randevu eksik bilgiyle kaydedilir; mesaj yok.Tüm istisnalar (maskeleme)Apt.ResourceIds / RecurrenceInfo Nothing veya DevExpress persistence helper istisnasıOn Error Resume Next; nesne kısmen dolu olarak devam eder ve kaydedilebilir.60
ERR-SIL-014SESSİZ MANTIK / HESAPLAMAS4InvalidCastException (CBool("")) — TicketList.GridView1_CustomDrawCellBazı bilet satırları renklendirilmez.InvalidCastException (CBool(""))IsActive veya Status hücresi NULL ise `CBool("" & Nothing)` = CBool("") InvalidCastException atar.On Error Resume Next; hücre renklendirmesi atlanır.75
ERR-SIL-015SESSİZ MANTIK / HESAPLAMAS1NullReferenceException (hata işleyici içinde) — MyApplication.ShowDebugOutputUygulama açılışta sessizce kapanır veya hata hiç görünmez; AutoErrorHandle=1 ise hata formu, 'Kapat' → program kapanır.NullReferenceException (hata işleyici içinde)1) Giriş ekranı (FrmLoginForm.New) çalışmadan önce bir istisna oluşursa Program.UserSettings Nothing'dir; satır 15 `ProgOn Error Resume Next yalnızca If içindeki satırları kapsar. Loglama yok. ExeptionForm.BtnKapat → `End` (uygulamayı sonlandırır).Belirtilen SQL nesnesi / ekran verisi80
ERR-SIL-016SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — UiForm.LoadDesignerForm tasarımcısında eksik kontroller.Tüm istisnalar (maskeleme)Designer kodu ayrıştırılırken herhangi bir istisna (Type.GetType Nothing → Activator NRE, Split indeks vb.)On Error Resume Next; kontroller sessizce atlanır.70
ERR-SIL-017SESSİZ MANTIK / HESAPLAMAS4Tüm istisnalar (maskeleme) — Properties.ToStringÜretilen designer kodunda eksik özellik satırı.Tüm istisnalar (maskeleme)Late-bound .FieldName/.Mask erişimi desteklemeyen kontrol tipinde MissingMemberExceptionOn Error Resume Next; satır atlanır.65
ERR-SIL-018SESSİZ MANTIK / HESAPLAMAS2IndexOutOfRangeException (kolon yok) — DBNull yanlış pozitif — ERPFatura.New(RecordId)MADEN faturası eksik tutar/kur ve entegratör bilgisiyle gönderilmeye çalışılır; entegratör reddi veya hatalı belge.IndexOutOfRangeException (kolon yok) — DBNull yanlış pozitifConvert.ToString(DBNull) "" döndürür, istisna atmaz. Gerçek risk: Muhasebe.GetEFatura sonuç kümesinde 'MADENKODU' kolonuSatır 48-155 tek bir Try/Catch (boş Catch) içinde: istisna sonrası kalan TÜM alanlar (DovizMiktar, DovizTLKuru, Entegrator bilgileri, limitler) yüklenmez; fHasRBelirtilen SQL nesnesi / ekran verisiPF-01860
ERR-SIL-019SESSİZ MANTIK / HESAPLAMAS2ArgumentOutOfRangeException (Substring) — ERPFatura.New(RecordId)E-belge kısmen yüklenmiş nesneyle gönderilir: tutar 0 / entegratör kimlik bilgisi boş → entegratör hatası; kullanıcı nedeni anlayamaz.ArgumentOutOfRangeException (Substring)Cari.IslemDetaylari.DovizKodu 3 karakterden kısa ise (boş string '' NULL değildir → DBNull koruması geçer). DovizKodu FrDBNull kontrolü var, uzunluk kontrolü yok. Dış Try/Catch (boş) istisnayı yutar ve satır 82+ alanları (DovizMiktar, DovizTLKuru, DolarKuru zaten okundu ama EntUsBelirtilen SQL nesnesi / ekran verisiPF-01875
ERR-SIL-020SESSİZ MANTIK / HESAPLAMAS2ArgumentOutOfRangeException (Substring) [SUBSTRING adayı, aynı satır] — ERPFatura.New(RecordId)Aynı.ArgumentOutOfRangeException (Substring) [SUBSTRING adayı, aynı satır]Bkz. DBNULL_CAST kaydı (aynı satır).Aynı.Belirtilen SQL nesnesi / ekran verisi75
ERR-SIL-021SESSİZ MANTIK / HESAPLAMAS3InvalidCastException (CInt(DBNull)) + yutulan SqlException — DBBase.InsertKayıt sessizce kaydedilmez; çağıran yalnızca False alır.InvalidCastException (CInt(DBNull)) + yutulan SqlExceptionSCOPE_IDENTITY() NULL dönerse (identity kolonu olmayan tablo) CInt(DBNull) InvalidCastException; ayrıca INSERT'teki herTry/Catch var; Catch bağlantıyı kapatır, mesaj/log yok → RecId=0 → Insert False döner. Kullanıcıya nedeni gösterilmez.80
ERR-POT-056POTANSİYELS4InvalidCastException (CInt(DBNull)) — DynamicData.InsertTeknik hata kutusu.InvalidCastException (CInt(DBNull))SCOPE_IDENTITY() NULL dönerseTry/Catch → MsgBox(ex.Message) + Return False.80
ERR-POT-057POTANSİYELS2SqlException / InvalidCastException (yeniden fırlatılır) — ERPFatura.SaveE-fatura kaydında yakalanmamış hata (AutoErrorHandle'a bağlı olarak hata formu veya sessiz).SqlException / InvalidCastException (yeniden fırlatılır)MERGE sorgusu SqlException atarsa (kısıt, tip, bağlantı) veya `output inserted.*` ilk kolonu int değilse; Catch → `Throwİstisna sarılıp yeniden fırlatılır. Çağıran FrmEFaturaBas.FormSave (`If ERP_Fatura.Save = True`, satır 313) ve Extention.vb:62 Try/Catch içinde DEĞİL → ApplicatBelirtilen SQL nesnesi / ekran verisiPF-00775
ERR-POT-058POTANSİYELS2NullReferenceException (Dt Nothing) — Lisans.FirstDateLisans kontrolünde çökme/hata formu (bağlantı sorununda).NullReferenceException (Dt Nothing)Rows(0): GROUP BY'sız aggregate sorgu her zaman 1 satır döndürür → IndexOutOfRange olmaz. Ancak SQL/bağlantı hatasında INothing kontrolü yok. Çağrı zinciri: Utils.CallLisansControl ← Program.Init (Try/Catch → ShowDebugOutput) ve FrmMainForm.FormInit (IsLicensed, Try yok).Belirtilen SQL nesnesi / ekran verisiPF-00280
ERR-POT-059POTANSİYELS2NullReferenceException (Dt Nothing) — Lisans.FirstDateAynı.NullReferenceException (Dt Nothing)Aynı.Aynı.Belirtilen SQL nesnesi / ekran verisi80
ERR-POT-060POTANSİYELS4ArgumentException ('Cannot set Column to be null') — Rows(0) yanlış pozitif — Parameters.CreateDataTableAgent/koşul editörü açılırken yakalanmamış hata.ArgumentException ('Cannot set Column to be null') — Rows(0) yanlış pozitifRows(0) satır 71 `Tb.Rows.Add()` ile garanti. Gerçek risk: p.Value Is Nothing olan parametre (AddObject(New Cari.Islem)Satır 65-69 Nothing için String kolonu açar ama satır 73'te DBNull'a çevirmez. Çağıran FrmControllerEkle.vb:39 Try dışında.70
ERR-POT-061POTANSİYELS2DivideByZeroException (Decimal bölme) — ERPFatura.ValidateOverUsdLimitE-döviz belgesi gönderirken 'Attempted to divide by zero' yakalanmamış hata (AutoErrorHandle=1: hata formu; 0: sessiz, belge gönderilmez).DivideByZeroException (Decimal bölme)DolarKuru (Decimal) = 0 ise. Kaynaklar: FrmEFaturaBas.vb:295-299 → USD belgede DovizTLKuru (Fiyat 0 ise 0); diğerlerindeSıfır kontrolü yok. SendToEntegrator (satır 779) çağrıları FrmEFaturaBas.vb:338 ve FrmEFaturaListesi.vb:39'da Try/Catch DIŞINDA → Application.ThreadException.Belirtilen SQL nesnesi / ekran verisiPF-07085
ERR-POT-062POTANSİYELS2OverflowException (Infinity → Decimal) — Ice.Get_eDoviz_Belge'Entegrator faturayı Kabul Etmedi. Hata oluştu!Value was either too large or too small for a Decimal.' mesajı; belge gönderilmez, log e-postası atılır.OverflowException (Infinity → Decimal)EDocument.Dolar_TL_Kuru (Double) = 0 → Double bölme Infinity → CDec(Infinity) OverflowException ('Value was either too lSıfır kontrolü yok; SendInvoice (Ice.vb:116-194) Try/Catch ile yakalar → DeleteSettings(Auth) + EDovizResponseResult(Message='Hata oluştu!...').Belirtilen SQL nesnesi / ekran verisiPF-00785
ERR-POT-063POTANSİYELS2OverflowException (Infinity → Decimal) — Ice.Get_eDoviz_BelgeEntegratör hata mesajı.OverflowException (Infinity → Decimal)EDocument.DovizMiktar (Double) = 0 → Decimal/Double → Infinity → `Dim Fiyat As Decimal` atamasında OverflowException. CaSendInvoice Try/Catch.Belirtilen SQL nesnesi / ekran verisiPF-01880
ERR-POT-064POTANSİYELS2DivideByZeroException (Decimal) — Ice.Get_eDoviz_BelgeEntegratör hata mesajı ('Attempted to divide by zero').DivideByZeroException (Decimal)tlKarsilikKuru (Decimal) = 0: Kıymetli maden SATIM'da tlKarsilikKuru = Fiyat = (Tutar - Vergi)/Miktar → Tutar 0 veya VerSendInvoice Try/Catch.Belirtilen SQL nesnesi / ekran verisiPF-01880
ERR-POT-065POTANSİYELS2OverflowException (Infinity → Decimal) — MySoft.Get_eDoviz_BelgeEntegratör hata mesajı.OverflowException (Infinity → Decimal)Dolar_TL_Kuru = 0 → Double bölme Infinity → `CalculationRate As Decimal` atamasında OverflowException.SendInvoice (MySoft.vb:108-174) Try/Catch.Belirtilen SQL nesnesi / ekran verisiPF-01885
ERR-SIL-022SESSİZ MANTIK / HESAPLAMAS2Sessiz (Double Infinity → JSON) — MySoft.Get_eDoviz_BelgeEntegratör belgeyi reddeder; sebep anlaşılmaz.Sessiz (Double Infinity → JSON)Doviz_TL_Kuru = 0 → 1/0 = Infinity (Double, istisna yok) → CalculationRate (Double) Infinity → JSON'a 'Infinity' yazılırKoruma yok; .NET istisnası oluşmaz.Belirtilen SQL nesnesi / ekran verisiPF-01870
ERR-SIL-023SESSİZ MANTIK / HESAPLAMAS3Sessiz (Double Infinity) — MySoft.Get_eDoviz_BelgeHatalı oran; entegratör reddi.Sessiz (Double Infinity)VergiHaric_Tutar = 0 → Infinity (Double).Koruma yok.PF-01865
ERR-SIL-024SESSİZ MANTIK / HESAPLAMAS2Sessiz (Double Infinity → JSON) — Ticari1.Get_eDoviz_BelgeEntegratör reddi.Sessiz (Double Infinity → JSON)Doviz_TL_Kuru = 0 → 1/0 Infinity (Double özellik).Koruma yok.Belirtilen SQL nesnesi / ekran verisiPF-01870
ERR-SIL-025SESSİZ MANTIK / HESAPLAMAS2Sessiz (Double Infinity/NaN → JSON) — Ticari1.Get_eDoviz_BelgeEntegratör reddi.Sessiz (Double Infinity/NaN → JSON)Dolar_TL_Kuru = 0 → Infinity/NaN.Koruma yok.Belirtilen SQL nesnesi / ekran verisiPF-01870
ERR-POT-066POTANSİYELS2FormatException (Convert.ToDecimal("∞")) — Uyumsoft.Get_eDoviz_BelgeEntegratör hata mesajı ('Input string was not in a correct format').FormatException (Convert.ToDecimal("∞"))Dolar_TL_Kuru = 0 → Infinity.ToString("N5") = '∞' → Convert.ToDecimal FormatException.SendInvoice (Uyumsoft.vb:141-194) Try/Catch.Belirtilen SQL nesnesi / ekran verisiPF-01885
ERR-POT-067POTANSİYELS2FormatException (Convert.ToDecimal("∞")) — Uyumsoft.Get_eDoviz_BelgeEntegratör hata mesajı.FormatException (Convert.ToDecimal("∞"))SATIM'da Doviz_TL_Kuru = 0 → 1/0 → '∞' → FormatException.SendInvoice Try/Catch.Belirtilen SQL nesnesi / ekran verisiPF-01880
ERR-POT-068POTANSİYELS4SqlException (tarih boş) — CDate yanlış pozitif — FrmSeriIslem.ListRefreshTarih temizlenip listelenirse SQL hata kutusu, liste boş.SqlException (tarih boş) — CDate yanlış pozitifTxtBTarih/TxtSTarih DateEdit temizlenirse EditValue Nothing → CDate(Nothing) = #01.01.0001# (istisna yok) → SQL'e '0001-Metot Try/Catch (boş) içinde; InternalDb.DataTable hatayı MsgBox ile gösterir. Tarih boş kontrolü yok.60
ERR-POT-069POTANSİYELS4SqlException (tarih boş) — CDate yanlış pozitif — iScreen.ListRefreshAynı.SqlException (tarih boş) — CDate yanlış pozitifAynı desen (BarEditItem DateEdit).Try/Catch (boş, iScreen.vb:960/993); InternalDb MsgBox.60
ERR-POT-070POTANSİYELS3InvalidCastException (CInt(DBNull)/CInt("")) — FrmSiparisGirisi.SaveDataSipariş kaydında yakalanmamış hata (teorik).InvalidCastException (CInt(DBNull)/CInt(""))CmbHesap (GridLookupEdit).EditValue DBNull veya boş string ise; Nothing → CInt(Nothing)=0 sorunsuz. Veri kaynağı IntegerKontrol yok; SaveData Try/Catch dışında.50
ERR-POT-071POTANSİYELS2SQLR-001 Invalid object name: Cari.OdemelerMsgBox: "Invalid object name 'Cari.Odemeler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Cari.Odemeler' nesnesine Select/Insert/Update gönderiyor; nesne DB1 katbasedb/out/code_refs2.json code_only[Cari.Odemeler] (6 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Cari.Odemeler90
ERR-POT-072POTANSİYELS2SQLR-002 Invalid object name: Genel.IptalOnayMsgBox: "Invalid object name 'Genel.IptalOnay'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Genel.IptalOnay' nesnesine Select/Insert/Update gönderiyor; nesne DB1 kbasedb/out/code_refs2.json code_only[Genel.IptalOnay] (6 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Genel.IptalOnay90
ERR-POT-073POTANSİYELS3SQLR-003 Invalid object name: Siparis.FiyatListesiMsgBox: "Invalid object name 'Siparis.FiyatListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.FiyatListesi' nesnesine Select/Insert/Update gönderiyor; nesnebasedb/out/code_refs2.json code_only[Siparis.FiyatListesi] (8 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Siparis.FiyatListesi90
ERR-POT-074POTANSİYELS3SQLR-004 Invalid object name: Uretim.EritmeMsgBox: "Invalid object name 'Uretim.Eritme'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.Eritme' nesnesine Select/Insert/Update gönderiyor; nesne DB1 katbasedb/out/code_refs2.json code_only[Uretim.Eritme] (6 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Uretim.Eritme90
ERR-POT-075POTANSİYELS3SQLR-005 Invalid object name: Uretim.FormulMsgBox: "Invalid object name 'Uretim.Formul'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.Formul' nesnesine Select/Insert/Update gönderiyor; nesne DB1 katbasedb/out/code_refs2.json code_only[Uretim.Formul] (7 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Uretim.Formul90
ERR-POT-076POTANSİYELS3SQLR-006 Invalid object name: Uretim.FormulDetayMsgBox: "Invalid object name 'Uretim.FormulDetay'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.FormulDetay' nesnesine Select/Insert/Update gönderiyor; nesne DBbasedb/out/code_refs2.json code_only[Uretim.FormulDetay] (7 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Uretim.FormulDetay90
ERR-POT-077POTANSİYELS3SQLR-007 Invalid object name: Uretim.ModelPartiBilgileriMsgBox: "Invalid object name 'Uretim.ModelPartiBilgileri'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.ModelPartiBilgileri' nesnesine Select/Insert/Update gönderiyor;basedb/out/code_refs2.json code_only[Uretim.ModelPartiBilgileri] (7 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Uretim.ModelPartiBilgileri90
ERR-POT-078POTANSİYELS2SQLR-008 Invalid object name: Uretim.PartilerMsgBox: "Invalid object name 'Uretim.Partiler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.Partiler' nesnesine Select/Insert/Update gönderiyor; nesne DB1 kbasedb/out/code_refs2.json code_only[Uretim.Partiler] (6 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Uretim.Partiler90
ERR-POT-079POTANSİYELS3SQLR-009 Invalid object name: Siparis.GetFiyatListesiMsgBox: "Invalid object name 'Siparis.GetFiyatListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.GetFiyatListesi' nesnesine Select gönderiyor; nesne DB1 kataloğbasedb/out/code_refs2.json code_only[Siparis.GetFiyatListesi] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-080POTANSİYELS3SQLR-010 Invalid object name: Uretim.GetEritmeListesiMsgBox: "Invalid object name 'Uretim.GetEritmeListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.GetEritmeListesi' nesnesine Select gönderiyor; nesne DB1 kataloğbasedb/out/code_refs2.json code_only[Uretim.GetEritmeListesi] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-081POTANSİYELS3SQLR-011 Invalid object name: Uretim.GetFormulsMsgBox: "Invalid object name 'Uretim.GetFormuls'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.GetFormuls' nesnesine Select gönderiyor; nesne DB1 kataloğunda ybasedb/out/code_refs2.json code_only[Uretim.GetFormuls] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-082POTANSİYELS3SQLR-012 Invalid object name: Uretim.GetModelPartiBilgiListesiMsgBox: "Invalid object name 'Uretim.GetModelPartiBilgiListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.GetModelPartiBilgiListesi' nesnesine Select gönderiyor; nesne DBbasedb/out/code_refs2.json code_only[Uretim.GetModelPartiBilgiListesi] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-083POTANSİYELS3SQLR-013 Invalid object name: Uretim.GetPartilerMsgBox: "Invalid object name 'Uretim.GetPartiler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.GetPartiler' nesnesine Select gönderiyor; nesne DB1 kataloğundabasedb/out/code_refs2.json code_only[Uretim.GetPartiler] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-084POTANSİYELS3SQLR-014 Invalid object name: Cari.GETOdemeKasaOzetiMsgBox: "Invalid object name 'Cari.GETOdemeKasaOzeti'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Cari.GETOdemeKasaOzeti' nesnesine Select gönderiyor; nesne DB1 kataloğubasedb/out/code_refs2.json code_only[Cari.GETOdemeKasaOzeti] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.PF-06390
ERR-POT-085POTANSİYELS2SQLR-015 Invalid object name: Cari.GETOdemeListesiMsgBox: "Invalid object name 'Cari.GETOdemeListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Cari.GETOdemeListesi' nesnesine Select gönderiyor; nesne DB1 kataloğundbasedb/out/code_refs2.json code_only[Cari.GETOdemeListesi] (2 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.İlgili ekranın okuduğu/yazdığı SQL nesnesi90
ERR-POT-086POTANSİYELS2SQLR-016 Invalid object name: Organizasyon.GorevlerMsgBox: "Invalid object name 'Organizasyon.Gorevler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Organizasyon.Gorevler' nesnesine Select/Insert/Update gönderiyor; nesnebasedb/out/code_refs2.json code_only[Organizasyon.Gorevler] (8 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Organizasyon.Gorevler90
ERR-POT-087POTANSİYELS3SQLR-017 Invalid object name: Organizasyon.GorevDagitimMsgBox: "Invalid object name 'Organizasyon.GorevDagitim'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Organizasyon.GorevDagitim' nesnesine Select gönderiyor; nesne DB1 katalbasedb/out/code_refs2.json code_only[Organizasyon.GorevDagitim] (6 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Organizasyon.GorevDagitim90
ERR-POT-088POTANSİYELS4SQLR-018 Invalid object name: Sistem.iExceptionMsgBox: "Invalid object name 'Sistem.iException'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Sistem.iException' nesnesine Select/Insert/Update gönderiyor; nesne DB1basedb/out/code_refs2.json code_only[Sistem.iException] (2 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Sistem.iException60
ERR-POT-089POTANSİYELS3SQLR-019 Invalid object name: Siparis.PaketHesaplariMsgBox: "Invalid object name 'Siparis.PaketHesaplari'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.PaketHesaplari' nesnesine Select/Insert/Update gönderiyor; nesnbasedb/out/code_refs2.json code_only[Siparis.PaketHesaplari] (3 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Siparis.PaketHesaplariPF-06090
ERR-POT-090POTANSİYELS3SQLR-020 Invalid object name: Siparis.ModelAyarBlackListMsgBox: "Invalid object name 'Siparis.ModelAyarBlackList'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.ModelAyarBlackList' nesnesine Select gönderiyor; nesne DB1 katabasedb/out/code_refs2.json code_only[Siparis.ModelAyarBlackList] (2 referans); Sistem.ERPSCHEMA satırı: VAR (5 satır); TD-45. NOT: ana şema (ERPSCHEMA) bu tabloyu 5 satırla tanımlıyor → DBUpdate çalıştırılınca oluşturulabilir.Siparis.ModelAyarBlackList90
ERR-POT-091POTANSİYELS3SQLR-021 Invalid object name: Siparis.modelayarBlacklistMsgBox: "Invalid object name 'Siparis.modelayarBlacklist'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.modelayarBlacklist' nesnesine Select/Insert/Update gönderiyor;basedb/out/code_refs2.json code_only[Siparis.modelayarBlacklist] (2 referans); Sistem.ERPSCHEMA satırı: VAR (5 satır); TD-45. NOT: ana şema (ERPSCHEMA) bu tabloyu 5 satırla tanımlıyor → DBUpdate çalıştırılınca oluşturulabilir.Siparis.modelayarBlacklist90
ERR-POT-092POTANSİYELS3SQLR-022 Invalid object name: Siparis.GetPaketHesapListesiMsgBox: "Invalid object name 'Siparis.GetPaketHesapListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.GetPaketHesapListesi' nesnesine Select gönderiyor; nesne DB1 kabasedb/out/code_refs2.json code_only[Siparis.GetPaketHesapListesi] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.PF-06090
ERR-POT-093POTANSİYELS3SQLR-023 Invalid object name: Siparis.GetUyumluPaketlerMsgBox: "Invalid object name 'Siparis.GetUyumluPaketler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.GetUyumluPaketler' nesnesine Select gönderiyor; nesne DB1 katalbasedb/out/code_refs2.json code_only[Siparis.GetUyumluPaketler] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-094POTANSİYELS3SQLR-024 Invalid object name: Siparis.GetLastPriceMsgBox: "Invalid object name 'Siparis.GetLastPrice'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Siparis.GetLastPrice' nesnesine Select gönderiyor; nesne DB1 kataloğundbasedb/out/code_refs2.json code_only[Siparis.GetLastPrice] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-095POTANSİYELS3SQLR-025 Invalid object name: Uretim.GetFormulDetayMsgBox: "Invalid object name 'Uretim.GetFormulDetay'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.GetFormulDetay' nesnesine Select gönderiyor; nesne DB1 kataloğunbasedb/out/code_refs2.json code_only[Uretim.GetFormulDetay] (2 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-096POTANSİYELS3SQLR-026 Invalid object name: Uretim.GetPartiModelListesiMsgBox: "Invalid object name 'Uretim.GetPartiModelListesi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Uretim.GetPartiModelListesi' nesnesine Select gönderiyor; nesne DB1 katbasedb/out/code_refs2.json code_only[Uretim.GetPartiModelListesi] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.90
ERR-POT-097POTANSİYELS2SQLR-027 Invalid object name: Cari.GetRiskRaporuMsgBox: "Invalid object name 'Cari.GetRiskRaporu'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Cari.GetRiskRaporu' nesnesine Select gönderiyor; nesne DB1 kataloğundabasedb/out/code_refs2.json code_only[Cari.GetRiskRaporu] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.İlgili ekranın okuduğu/yazdığı SQL nesnesiPF-00490
ERR-POT-098POTANSİYELS3SQLR-028 Invalid object name: Stok.GetTakozIsciligiMsgBox: "Invalid object name 'Stok.GetTakozIsciligi'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Stok.GetTakozIsciligi' nesnesine Select gönderiyor; nesne DB1 kataloğunbasedb/out/code_refs2.json code_only[Stok.GetTakozIsciligi] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.PF-03490
ERR-POT-099POTANSİYELS3SQLR-029 Invalid object name: Organizasyon.GelenGorevlerMsgBox: "Invalid object name 'Organizasyon.GelenGorevler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Organizasyon.GelenGorevler' nesnesine Select gönderiyor; nesne DB1 katabasedb/out/code_refs2.json code_only[Organizasyon.GelenGorevler] (3 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Organizasyon.GelenGorevler90
ERR-POT-100POTANSİYELS3SQLR-030 Invalid object name: Organizasyon.GidenGorevlerMsgBox: "Invalid object name 'Organizasyon.GidenGorevler'." — ekran boş kalır ya da kayıt yapılamaz (InternalDb ham SQL mesajını gösterir; DAO kalıbında boş Catch → sessiz False).SQL 208 Invalid object nameİlgili ekran açıldığında/kayıt yapıldığında kod 'Organizasyon.GidenGorevler' nesnesine Select gönderiyor; nesne DB1 katabasedb/out/code_refs2.json code_only[Organizasyon.GidenGorevler] (1 referans); Sistem.ERPSCHEMA satırı: YOK; TD-45.Organizasyon.GidenGorevler90
ERR-POT-101POTANSİYELS1SQLR-031 Invalid object name: Genel.Dosyalar (VIEW)İşlem kaydında "Invalid object name 'DOCUMENTS.Genel.Dosyalar'" ya da "Database 'DOCUMENTS' does not exist"; her işlem girişi geri alınır. Doküman ekranlarında aynı hata.SQL 208 Invalid object nameGenel.Dosyalar bir VIEW: 'Select * from DOCUMENTS.Genel.Dosyalar'. DOCUMENTS veritabanı sunucuda yoksa (DB1 sys.databasemodules.json Genel.Dosyalar: 'CREATE View Genel.Dosyalar as Select * from DOCUMENTS.Genel.Dosyalar'; deps.json: Cari.GetGerekliEvraklarGenel.Dosyalar; AcceptTransaction satır ~112: 'SELECT COUNT(*) FROM Cari.GetGerekliEvraklar(@SubeId,@HesapId,'True')'; misc.json database listesi.DOCUMENTS.Genel.DosyalarPF-01085
ERR-POT-102POTANSİYELS4SQLR-032 Invalid object name: LiveUpdate.Version / LiveUpdate.SetVersion / LiveUpdate.Lock / LiveUpdate.UnLockSürüm kontrolü sırasında 'Invalid object name LiveUpdate.VersionHistory_' — yalnız kilit senaryosunda.SQL 208 Invalid object nameProsedürler 'LiveUpdate.VersionHistory_' (kilitli ad) tablosuna başvuruyor; tablo DB1'de yok. Ancak her dal OBJECT_ID('Lanalysis_db.json unresolved[148911602,484912799]='LiveUpdate.VersionHistory_'; analysis.json unresolved_in_base.LiveUpdate.VersionHistory_80
ERR-POT-103POTANSİYELS2SQLR-033 Invalid object name: Sistem.FromERPHesap aktarımı ekranında 'Invalid object name …dbo.Firmalar' ya da 'Column name or number of supplied values does not match table definition'.SQL 208 (ya da 213 kolon sayısı) Invalid object nameProc, kullanıcı combosundan gelen @Database adıyla '<db>.dbo.Firmalar' / 'dbo.Birimler_' tablolarına dinamik SQL (exec(@modules.json Sistem.FromERP: '@HesapQuery = Insert Into Cari.Hesaplar Select Id as OldFirmaId,… from ' + @DataBase + '.dbo.Firmalar'; columns.json Cari.Hesaplar 57 kolon, Id identity; analysis.json unresolved_in_base['Sistem.FromERP'].<@Database>.dbo.Firmalar, <@Database>.dbo.Birimler_, <@Database>.dbo.BakiyeIslem; hedef Cari.HesaplarPF-06085
ERR-POT-104POTANSİYELS3SQLR-034 Invalid object name: dbo.sp_DevirIslemiYapÇalıştırılırsa 'Invalid object name Cari.IslemlerDetalari' vb.; devir yarım kalır (TRUNCATE sonrası).SQL 208 Invalid object nameProc ERPGLOBAL veritabanına (cross-DB) ve çözümlenemeyen 4 nesneye (Cari.bilancolar, Cari.islemlerdetalari [yazım hatasıanalysis.json rows['dbo.sp_DevirIslemiYap'].unresolved=['Cari.bilancolar','Cari.islemlerdetalari','Sistem.bakiyeislem','dbo.company']; analysis_db.json crossdb[1583396760]='ERPGLOBAL.Dbo.Company'; modül metninde 'SET IDENTITY_INSERT Cari.Islemler ON'.ERPGLOBAL.dbo.Company; Cari.Bilancolar; Cari.IslemlerDetalari; Sistem.BakiyeIslemPF-03680
ERR-POT-105POTANSİYELS4SQLR-035 Invalid object name: Sistem.MT4OrdersSync / Sistem.MT4TicketsSync / Sistem.ResetÇalıştırılırsa 'Invalid object name Sistem.MT4Orders'.SQL 208 Invalid object nameProsedürler Sistem.MT4Orders / Sistem.MT4tickets tablolarına başvuruyor; DB1'de yok (Sistem.ERPSCHEMA kataloğunda 'Sisteanalysis_db.json unresolved[1145823194]=['Sistem.MT4Orders'], [1161823251]=['Sistem.MT4tickets'], [1193823365]=['Sistem.MT4Tickets']; dbsql.json Sistem.ERPSCHEMA: Sistem.GetMT4Orders×17, Sistem.MT4EXPO×3.Sistem.MT4Orders, Sistem.MT4Tickets80
ERR-POT-106POTANSİYELS3SQLR-036 Invalid object name: AifaDev.Reports #16, #19, #29, #30 (DB içinde saklanan rapor SQL'i)Rapor çalıştırılınca "Invalid object name 'MüşteriŞemasıD.GetEnvanter'" vb.SQL 208 Invalid object nameKullanıcı bu raporları çalıştırdığında saklanan SQL DB1'de olmayan fonksiyon/view'ları çağırıyor (MüşteriŞemasıD özel nedbsql.json AifaDev.Reports#16 'Select * From MüşteriŞemasıD.GetCariBakiyeHaraketleri(@HesapId,@Tarih,@BirimId)', #19 'MüşteriŞemasıD.GetEnvanter(@Tarih)', #29 'Reports.IptalIslemRaporu(...)', #30 'Cari.HesapExtresiDetails'; objects.json'da bu adlar yok.MüşteriŞemasıD.GetCariBakiyeHaraketleri; MüşteriŞemasıD.GetEnvanter; Reports.IptalIslemRaporu; Cari.HesapExtresiDetailsPF-00490
ERR-POT-107POTANSİYELS3SQLR-037 Could not find stored procedure: Reports.GetPozisyonDetay"An insufficient number of arguments were supplied for the procedure or function Reports.GetPozisyonDetay." — Pozisyon Durum raporu boş.SQL 313 (An insufficient number of arguments were supplied) Could not find stored procedureFonksiyon (@SubeId,@BasTarih,@SonTarih) 3 parametre bekliyor; kod ve PopupGrid 2 argümanla çağırıyor: Reports.GetPozisyoparameters.json Reports.GetPozisyonDetay: @SubeId,@BasTarih,@SonTarih; FrmPozisyonDurum.vb:15 'Reports.GetPozisyonDetay(''" & DateEdit1… & "'',''" & DateEdit2 …'; PopupGrid#5 'Reports.GetPozisyonDetay(getdate(),Getdate())'.PF-00495
ERR-POT-108POTANSİYELS3SQLR-038 Could not find stored procedure: Reports.ResmiPozisyon"An insufficient number of arguments were supplied for the procedure or function Reports.ResmiPozisyon."SQL 313 Could not find stored procedureFonksiyon @Tarih parametresi bekliyor; 29 rapor tanımı 'Reports.ResmiPozisyon ()' parametresiz çağırıyor (yalnız #67 doğdbsql.json AifaDev.Reports #38–#66 'Select * from Reports.ResmiPozisyon ()'; parameters.json Reports.ResmiPozisyon: @Tarih.PF-04095
ERR-POT-109POTANSİYELS3SQLR-039 Invalid object name: AifaDev.ExQueryBuilder (TRIGGER on AifaDev.RepositoryItems)Dinamik form alanı eklerken "Cannot find the object 'Query.XXX' because it does not exist or you do not have permissions."SQL 4902 (Cannot find the object … ALTER VIEW) Invalid object nameTetikleyici yeni bir Owner için view oluşturmak istediğinde her iki dalda da 'Alter View Query.<Owner>' üretiyor ('if OBmodules.json AifaDev.ExQueryBuilder: "if OBJECT_ID (@ViewName) is null BEGIN SET @Query = 'Alter View ' … END ELSE BEGIN SET @Query = 'Alter View ' …"; "exec ('Add Schema Query')".Query.<Owner> (dinamik view)90
ERR-POT-110POTANSİYELS2SQLR-040 Invalid column name: Cari.Transferler"Invalid column name 'Aciklama'." — kayıt/liste başarısız.SQL 207 Invalid column nameKod Cari.Transferler üzerinde 'Aciklama' kolonunu kullanıyor; kolon DB1 kataloğunda (kb_src/db/columns.json) yok.sql_frags (ERPPRO/Class/Dao/Cari.Transferler.vb:172 (Insert), :222 (Update)); columns.json Cari.Transferler kolon listesinde 'Aciklama' yok. DB2'de Cari.Transferler 32.531 satır — kolon orada olabilir (BİLİNMİYOR).Cari.TransferlerPF-07095
ERR-POT-111POTANSİYELS3SQLR-041 Invalid column name: Siparis.Paket"Invalid column name 'IsPublic'." — kayıt/liste başarısız.SQL 207 Invalid column nameKod Siparis.Paket üzerinde 'IsPublic' kolonunu kullanıyor; kolon DB1 kataloğunda (kb_src/db/columns.json) yok.sql_frags (ERPPRO/Class/Dao/Siparis.Paket.vb:93 (Insert), :126 (Update)); columns.json Siparis.Paket kolon listesinde 'IsPublic' yok.Siparis.PaketPF-07095
ERR-POT-112POTANSİYELS3SQLR-042 Invalid column name: Siparis.TakimKartlari"Invalid column name 'Grup'." — kayıt/liste başarısız.SQL 207 Invalid column nameKod Siparis.TakimKartlari üzerinde 'Grup' kolonunu kullanıyor; kolon DB1 kataloğunda (kb_src/db/columns.json) yok.sql_frags (ERPPRO/Class/Dao/Siparis.TakimKarti.vb:112 (Insert), :163 (Update)); columns.json Siparis.TakimKartlari kolon listesinde 'Grup' yok. Sistem.ERPSCHEMA'da 'Siparis.TakimKartlari' için 1 satır var → ana şemada V2'de olmayan bir kolon (muhtemelen Grup) = 'Alter … Add' adayı.Siparis.TakimKartlariPF-07095
ERR-POT-113POTANSİYELS4SQLR-043 Invalid column name: Sistem.CariIslemTipi"Invalid column name 'IsDeleted'." — kayıt/liste başarısız.SQL 207 Invalid column nameKod Sistem.CariIslemTipi üzerinde 'IsDeleted' kolonunu kullanıyor; kolon DB1 kataloğunda (kb_src/db/columns.json) yok.sql_frags (ERPPRO/Class/Dao/Sistem.CariIslemTipi.vb:11 (Sub New(Filter): Select * … Where IsDeleted='False')); columns.json Sistem.CariIslemTipi kolon listesinde 'IsDeleted' yok. Tablo kolonları: Id, IslemTipi, Kod.Sistem.CariIslemTipiPF-07095
ERR-POT-114POTANSİYELS3SQLR-044 Invalid column name: Cari.Provizyon"Invalid column name 'IsDeleted'." — kayıt/liste başarısız.SQL 207 Invalid column nameKod Cari.Provizyon üzerinde 'IsDeleted' kolonunu kullanıyor; kolon DB1 kataloğunda (kb_src/db/columns.json) yok.sql_frags (ERPPRO/Class/Ext/Cari.Provizyon.vb:57 (TOList), :151, :171 (Delete)); columns.json Cari.Provizyon kolon listesinde 'IsDeleted' yok. Tabloda IsDeleted yok (Status/StatusId var).Cari.ProvizyonPF-07095
ERR-POT-115POTANSİYELS4SQLR-045 Invalid column name: Sistem.Users"Invalid column name 'SubeId'." — kayıt/liste başarısız.SQL 207 Invalid column nameKod Sistem.Users üzerinde 'SubeId' kolonunu kullanıyor; kolon DB1 kataloğunda (kb_src/db/columns.json) yok.sql_frags (ERPPRO/Form/Genel/FrmChangeAccount.vb:9); columns.json Sistem.Users kolon listesinde 'SubeId' yok. Şube bilgisi Sistem.UserDetails.SubeId'de.Sistem.UsersPF-07095
ERR-POT-116POTANSİYELS2SQLR-046 Invalid column name: Cari.IslemDetaylari / Cari.Islemler (kurulum farkı)DB2'de perakende/işlem listesinde "Invalid column name 'ETTN'"; e-belge akışı kuyumcuda tanımsız.SQL 207 Invalid column nameDB2 (KUYUMCU) kurulumunda Cari.IslemDetaylari 12 kolon (ETTN yok), DB1'de 49 kolon; Cari.Islemler.IsArbitiraj yalnız DB1kitap/b8_kuyumcu.md 'Cari.IslemDetaylari: döviz 49 / kuyumcu 12 kolon; ETTN kuyumcuda yoktur; IsArbitiraj yalnız döviz'; Parakende.vb:13 sorgu metni; AcceptTransaction cursor listesi 'D.ETTN'.Cari.IslemDetaylari; Cari.IslemlerPF-00985
ERR-POT-117POTANSİYELS3SQLR-047 Invalid column name: Sistem.ERPSCHEMA 'Alter … Add' satırlarıDBUpdate uygulanmamış kurulumda ilgili ekranlarda 'Invalid column name …'.SQL 207 (kurulum bazlı) Invalid column nameERPSCHEMA = ftp schema.csv (ana şema, 2022-12-16) − sys.columns farkı. Nesnesi V2'de VAR olan 13 nesnenin toplam 24 satıdbsql.json Sistem.ERPSCHEMA satır sayıları (Cari.Hesaplar 1, Cari.Islemler 1, Cari.IslemListesi 6, Siparis.TakimKartlari 1 …); DBUpdate.vb Method computed: object_id(TableName) null→'Create' else 'Alter'.Cari.Hesaplar (1), Cari.Islemler (1), Cari.IslemListesi (6), Cari.HesapListesi (1), Cari.GetHesapListesi (1), Siparis.TakimKartlari (1), Muhasebe.BTRANSDoviz (1), Muhasebe.MerkezBankasiRaporu (5), QuePF-00860
ERR-POT-118POTANSİYELS2SQLR-048 Invalid column name: (kod) ERPFatura.Save → Cari.IslemDetaylariFatura/belge detayı kaydedilmez; kullanıcıya hata gösterilmez (ekran 'kaydedilemedi' ya da hiçbir şey).SQL 102 (Incorrect syntax near 'MERGE') Invalid column nameSQL metni "Insert Into Cari.IslemDetaylari(MERGE Cari.IslemDetaylari WITH (SERIALIZABLE) AS T USING (VALUES(…)) … outputQA-SQL-QUERY-MAP.md satır 354; ERPFatura.vb:330 metni; :486 'Catch ex As Exception' boş.Cari.IslemDetaylariPF-00790
ERR-SIL-026SESSİZ MANTIK / HESAPLAMAS2SQLR-049 Divide by zero: FN.BolHata yok; bakiye/işçilik/ortalama maliyet 0 ya da eksik görünür; raporlarda 0 fiyat.SQL 8134 (sessizleştirilmiş → 0) Divide by zeroFN.Bol(@a,@b): 'IF (@Number1<>0 and @Number2<>0) SET @Number=@Number1/@Number2' — payda 0 ya da NULL ise 0 döner; hata ymodules.json FN.Bol tanımı; AcceptTransaction: '@Iscilik = Fn.Bol((@HasIscilik * @HasIscBirimKur),@IscKur) + …', '@HasBakiye += Fn.Bol(((@Miktar*@AgMilyem)*@GumKur),@HasKur)'; FN.Bol çağıran 103 modül listesi (div.py).Cari.BakiyeIslem / Stok.StokHaraketleri (türetilmiş bakiye ve stok kayıtları), Sistem.KurlarPF-00495
ERR-POT-119POTANSİYELS3SQLR-050 Divide by zero: Bilanco.GetIKar; Bilanco.GetIBilancoBilanço kâr raporunda 'Divide by zero error encountered.'SQL 8134 Divide by zero9 ayrı 'Sum(… )/Kur1.Alis' ifadesi; Kur1 = Sistem.GetKurListesi(@Tarih) BirimId=1 satırı. HAS kuru o gün 0 girilmişse 81div.py çıktısı: Bilanco.GetIKar 5×, Bilanco.GetIBilanco 4× '/Kur1.Alis' NULLIF yok.Cari.BakiyeIslem; Stok.StokHaraketleriPF-07085
ERR-POT-120POTANSİYELS2SQLR-051 Divide by zero: MüşteriŞemasıA.IslemFiyatlar tetikleyicisi (DB2 Cari.Islemler 5. tetikleyici)DB2'de işlem kaydında 'Divide by zero error encountered' → işlem kaydedilemez.SQL 8134 Divide by zero'I.Maliyet/I.UsdKur' ve 'I.Maliyet/I.HasKur' korumasız; kur 0 gelirse tetikleyici hata verir ve kullanıcının işlemi geriTD-41; kitap/b8_kuyumcu.md 'Sıfıra bölme riski: I.Maliyet/I.UsdKur, I.Maliyet/I.HasKur korumasız'. Tetikleyici metni bu turda elde yok (DB2 modülleri GAP-BASE-DB2-MODULES).Cari.Islemler → MüşteriŞemasıA.IslemFiyatlarPF-07070
ERR-POT-121POTANSİYELS3SQLR-054 Conversion failed: (kod) Cari.Odeme.vb:136 → Cari.IslemlerÖdeme listesinde 'Conversion failed when converting the nvarchar value 'xyz' to data type int.'SQL 245 Conversion failed'Where … StokId=… And Convert(int,Tag)=…' — Tag serbest metin (nvarchar(MAX)); filtre sırası garanti değil, sayısal olmaCari.Odeme.vb:136 'select Sum(Miktar) … And Convert(int,Tag) =''" & Id & "''' (Cari.Odemeler ekranı zaten 208 ile düşer).Cari.Islemler80
ERR-POT-122POTANSİYELS4SQLR-055 Conversion failed: Query.GENELSTOKLAR (VIEW); AifaDev.ExQueryBuilder üretimi Query.* view'larıDinamik form listesi/raporunda 'Conversion failed …' ya da 'Error converting data type nvarchar to numeric'.SQL 245 / 8114 Conversion failedPivot edilen serbest metin Value kolonu 'Convert(int, F.Kimden)', 'Convert(Decimal(18,5), F.[x])', 'Convert(Date, F.[x],modules.json Query.GENELSTOKLAR 'Convert(int, F.Kimden)'; ExQueryBuilder DataType→Convert eşlemesi.AifaDev.RepositoryDataPF-00475
ERR-POT-123POTANSİYELS3SQLR-056 Conversion failed: (kod) tırnaklı birleştirme ile tipsiz literal karşılaştırması'Error converting data type varchar to numeric' / 'Conversion failed when converting date and/or time' / 'Incorrect syntax near ='.SQL 245 / 8114 / 241 Conversion failedint/decimal/date kolonlar tırnaklı string literal ile karşılaştırılıyor → örtük dönüşüm. Değişken boş ('') → int için 0dyn.py istatistiği: 1294 cümle; 914 '&' ile birleştirme; 553 tırnaklı ('" & x & "'); 252 parametreli; 133 sabit. TD-37 (ondalık ToString).Cari.Islemler, Cari.Hesaplar, Stok.*, Siparis.* …85
ERR-POT-124POTANSİYELS4SQLR-057 Arithmetic overflow: Cari.AcceptTransaction; Cari.History (Fiyat decimal(18,5) ← Islemler.Fiyat decimal(18,8)); Stok.StokHaraketleri.NetBakiye decimal(37,10)Overflow: 'Arithmetic overflow error converting numeric to data type numeric' (nadir). Yuvarlama: History'de Fiyat 5 hane.SQL 8115 Arithmetic overflowdecimal(18,5)*decimal(18,5) çarpımı (37,10) → decimal(18,2)'ye dönüşümde |değer| ≥ 10^16 olursa 8115. Pratikte Tutar×Kurcolumns.json: Islemler.Fiyat decimal(18,8) vs History.Fiyat decimal(18,5); AcceptTransaction 'Convert(Decimal(18,2), @StokIsc * @StokIscKur)'.Cari.Islemler; Cari.History; Cari.BakiyeIslem; Stok.StokHaraketleri70
ERR-SIL-027SESSİZ MANTIK / HESAPLAMAS3SQLR-058 Conversion failed: (kod) TCMB.Currency.Save → MERGE Sistem.TCMBDovizKurlariTCMB kur arşivi güncellenmez (sessiz); döviz seri fatura ekranında geçmiş tarih kur boş ya da NullReference.SQL 4406 (View or function is not updatable) Conversion failedCheckTable() OBJECT_ID null değilse tablo oluşturmaz; DB1'de ad bir VIEW (tablo NonUsed_TCMBDovizKurlari'na taşınmış). Mmodules.json 'Create View Sistem.TCMBDovizKurlari as Select Tarih,Birim as Kodu,Alis,Satis from Sistem.GetKurListesi(getdate())'; TCMB.vb:67 CheckTable; :127 MERGE; phase6 KUY_ONLY 'Sistem.TCMBDovizKurlari' tablo.Sistem.TCMBDovizKurlari (DB1'de VIEW: Select … from Sistem.GetKurListesi(getdate()))PF-00785
ERR-POT-125POTANSİYELS3SQLR-059 String or binary data would be truncated: (kod DAO Insert/Update) kısa nvarchar kolonlar'String or binary data would be truncated.' ya da kayıt sessizce yapılmaz.SQL 8152 / 2628 String or binary data would be truncatedAddWithValue ile UI'dan gelen metin kolon uzunluğunu aşınca 8152 (SQL2019+ 2628, kolon adı verir). Kod tarafında MaxLengTruncation taraması (300 kolon ≤50 karakter, kod INSERT listelerinde); columns.json uz değerleri (nvarchar byte/2).Sistem.Kasalar.Kodu nvarchar(10); Sistem.Sirketler.Kodu(10)/Aciklama(50); Sistem.Birimler.Kodu(15); Sistem.Mizan.Kodu(15); Sistem.TakozScala.Kodu nvarchar(1); Cari.Faturalar.FaturaSeri(10); Personel.P75
ERR-POT-126POTANSİYELS3SQLR-061 Cannot insert NULL: Cari.Islemler.FiyatTipi (tfiyattipi NOT NULL, default yok); Cari.History.FiyatTipi; Cari.BakiyeIslem.HesapType (NOT NULL)"Cannot insert the value NULL into column 'FiyatTipi'/'HesapType'" — işlem kaydedilemez.SQL 515 Cannot insert NULLCari.Islemler'de NOT NULL & default'suz tek kolon FiyatTipi. Kod INSERT'i @FiyatTipi gönderiyor; ancak nesne özelliği Nocolumns.json Islemler NOT NULL no-default: [FiyatTipi tfiyattipi]; BakiyeIslem.HesapType null=False; frags.py NOT NULL taraması (kod INSERT'lerinde yalnız ERPFatura MERGE (IslemId) ve Sistem.Clients (dinamik kolon listesi) eksik).Cari.Islemler; Cari.History; Cari.BakiyeIslemPF-06075
ERR-POT-127POTANSİYELS4SQLR-062 Cannot insert NULL: (kod) Sistem.Clients dinamik INSERTİstemci kaydı yapılamaz (Cannot insert the value NULL into column 'ClientName').SQL 515 Cannot insert NULLKolon listesi dolu özelliklerden derleniyor; ClientName boşsa listeye girmez → 515.frags.py: Sistem.Clients INSERT listesinde clientname yok (dinamik).Sistem.Clients60
ERR-SIL-028SESSİZ MANTIK / HESAPLAMAS2SQLR-063 Duplicate key: Sistem.Kurlar (BirimId,Tarih); Sistem.Birimler.Kodu; Cari.Hesaplar (VergiNo,SubeId); Cari.Islemler.FisNo; Cari.BakiyeKodlari.KoduHata yok; aynı fiş numarası iki işlem, kur listesinde çift satır, bilanço tutarı iki kat.SQL 2627 / 2601 (yok — benzersiz indeks yok → sessiz mükerrer) Duplicate keyDB1'de PK dışı benzersiz indeks yalnız 4 (sysdiagrams, KYC.BelgeTurleri.Kod, POS.Esikler, POS.VergiOranlari). İş anahtarindexes.json is_unique & not PK: 4 satır; Sistem.Kurlar indeksleri PK_Kurlar(Id), IX_KUR_SORT_TARIH(Tarih)…; FN.GetKur 'Select top 1 Alis … Where BirimId=@BirimId' ORDER BY yok; TD-02.Sistem.Kurlar; Sistem.Birimler; Cari.Hesaplar; Cari.IslemlerPF-00585
ERR-POT-128POTANSİYELS1SQLR-064 Duplicate key: Cari.AcceptTransaction → MERGE INTO Sistem.Activityİşlem kaydında 'The MERGE statement attempted to UPDATE or DELETE the same row more than once…' — o şubede hiç işlem yapılamaz.SQL 8672 (MERGE aynı satırı birden fazla kez güncelliyor) Duplicate keyMERGE … ON Target.ActivitySubeId=Source.ActivitySubeId; HOLDLOCK yok, tabloda PK/unique yok. İki eşzamanlı işlem aynı şuAcceptTransaction: 'MERGE INTO Sistem.Activity AS Target USING (SELECT @subeId …) ON Target.ActivitySubeId=Source.ActivitySubeId …'; tables.json/indexes.json: Sistem.Activity indeks yok (PK'sız 36 tablo listesinde).Sistem.Activity (PK yok, 4 satır)80
ERR-OBS-251GÖZLEMLENMİŞS2SQLR-065 Identity: dbo.sp_DevirIslemiYap (IDENTITY_INSERT Cari.Islemler ON); Devir.vb TRUNCATE + yeniden INSERT; Sistem.DevirDevir sonrası silme gerekçeleri/transfer/provizyon kayıtları yanlış işlemle ilişkilenir; raporlar tutarsız.SQL 544 / 8101 / (sessiz çakışma) IdentityTRUNCATE Cari.Islemler kimliği tohuma sıfırlar; yeniden eklenen/yeni işlemler 1'den başlar. Boşaltılmayan IslemId taşıyaDevir.vb:76-80 'Truncate Table Cari.IslemlerCari.IslemDetaylari'; sp_DevirIslemiYap satır 214 'SET IDENTITY_INSERT Cari.Islemler ON'; TD-29, TD-42.Cari.Islemler; Cari.IslemDetaylari; Sistem.SilAciklama; Cari.Transferler; Sistem.SilOnay; Genel.IptalOnay; Cari.RSReferans; Cari.Provizyon; Cari.IslemEmtiaDetayi; MüşteriŞemasıA.IslemFiyatlarPF-03685
ERR-SIL-029SESSİZ MANTIK / HESAPLAMAS3SQLR-066 Identity: Sistem.SirketOlustur; Sistem.Users Id=1 varsayımıYeni şirket kurulumunda ADMIN ile giriş yapılamaz / şube-kasa ataması yok.SQL (sessiz) IdentitySirketOlustur tüm tabloları TRUNCATE edip ADMIN kullanıcısını ekler ve UserDetails'e UserId=1 yazar; Users kimliği TRUNCmodules.json Sistem.SirketOlustur; FrmMainForm.vb:706 'If LoginInformation.User.Id = 1 AndAlso e.Shift…'.Sistem.Users; Sistem.UserDetailsPF-00870
ERR-POT-129POTANSİYELS1SQLR-067 Subquery returned more than 1 value: Cari.AcceptTransaction; Uretim.TrBakiyeHesapla; Repair.BalanceRepair"Subquery returned more than 1 value…" — hiçbir işlem kaydedilemez.SQL 512 Subquery returned more than 1 value'Declare @HasBirimId int = (Select Id From Sistem.Birimler Where IsDeleted='False' And Kodu = (Select HasSymbol From Sissubq.py: AcceptTransaction/TrBakiyeHesapla/BalanceRepair 8'er skaler alt sorgu; tables.json Sistem.Settings rows=1, indeks yok; Birimler yalnız PK_Birimler(Id).Sistem.Settings (PK yok, 1 satır); Sistem.Birimler (Kodu benzersiz değil)90
ERR-POT-130POTANSİYELS3SQLR-068 Subquery returned more than 1 value: Cari.HesapInsert; Cari.HesapUpdate (Cari.Hesaplar tetikleyicileri)Toplu hesap aktarımında 'Subquery returned more than 1 value'; bazı kullanıcı gruplarında (4,6) hesap düzenlemede 'Yetkiniz yoktur!'; 'Aynı Vergi No ya sahip başka bir hesap mevcuttur!'.SQL 512 Subquery returned more than 1 value'SubeId = (select SubeId from inserted)', 'Id <> (select Id from deleted)', 'SET @UserID=(select UserId from inserted)'modules.json Cari.HesapInsert / Cari.HesapUpdate metinleri.Cari.HesaplarPF-01390
ERR-POT-131POTANSİYELS3SQLR-069 Subquery returned more than 1 value: Sistem.GetIslemKodu; FN.GetKur; Cari.IslemDetayiEkle; POS.SabitNadir 'Subquery returned more than 1 value' (RSReferans); kur değeri beklenenden farklı (sessiz).SQL 512 / (sessiz TOP 1) Subquery returned more than 1 valueGetIslemKodu: 'Where I.Id=@tpIslemId' PK ile tek satır → güvenli (Left Join tu on tu.Id=@tpTurId PK). FN.GetKur: 'Selectmodules.json FN.GetKur, Sistem.GetIslemKodu, Cari.IslemDetayiEkle; indexes.json PK listesi.Sistem.CariIslemKodu/Turu/Tipi (PK Id); Sistem.GetKurListesi; Cari.RSReferans (PK yok); POS.Sabitler85
ERR-SIL-030SESSİZ MANTIK / HESAPLAMAS3SQLR-070 Subquery returned more than 1 value: Cari.UpdateTransaction; Siparis.Kontrol; MüşteriŞemasıA tetikleyicisiHata yok; iptal edilen fişin bazı satırlarının belge detayı (fatura no/ETTN) silinmez, raporlarda görünür.SQL (sessiz — tek satır varsayımı) Subquery returned more than 1 valueUpdateTransaction 'Select @IsDeleted=I.IsDeleted, @IslemId=D.IslemId, @Ettn=D.ETTN from inserted I Left Join Cari.IslemDmodules.json Cari.UpdateTransaction metni; sql_frags çok satırlı UPDATE'ler.Cari.Islemler → Cari.IslemDetaylari; Siparis.SiparislerPF-00785
ERR-POT-132POTANSİYELS1SQLR-071 Dynamic SQL / injection: (kod) string-birleştirmeli SQL'Unclosed quotation mark after the character string' / 'Incorrect syntax near …'; arama sonuç vermez.SQL 102 (tek tırnak) / injection Dynamic SQL / injectionKullanıcı metninde tek tırnak (') → 102 'Incorrect syntax' ya da 105 'Unclosed quotation mark'; bilinçli girdi → SQL injdyn.py istatistiği (sql_frags kaynak satırları okunarak); TD-09, TD-10, TD-37.95
ERR-POT-133POTANSİYELS2SQLR-072 Dynamic SQL / injection: Agent.RunAgent; AifaDev.ExQueryBuilder; Cari.GetHesapExtresi; Sistem.FromERP; Sistem.SirketOlustur; dbo.sp_DevirIslemiYap (6 modül)Hesap ekstresi: 'Incorrect syntax near ]' ya da zaman aşımı; SirketOlustur yanlışlıkla çalıştırılırsa tüm veriler silinir.SQL 102 / injection Dynamic SQL / injectionTablo içeriği doğrudan SQL metnine ekleniyor: Agent.Agent.ConditionQuery (serbest SQL, sp_executesql); FieldName/Owner kanalysis_db.json dyn_mods (6 nesne); modules.json metinleri (GetHesapExtresi pivot, FromERP exec(@HesapQuery)).Agent.Agent.ConditionQuery; AifaDev.RepositoryItems.FieldName/Owner; Cari.BakiyeKodlari.Kodu; @Database; sys.tablesPF-07190
ERR-POT-134POTANSİYELS2SQLR-073 Transaction count mismatch: Cari.AcceptTransaction'BU HESABIN ZORUNLU EVRAKLARI EKSIKTIR…' + 'The transaction ended in the trigger. The batch has been aborted.'; nadiren 'A cursor with the name IslemCursor already exists' (16915) sonraki denemede (TDSQL 3609 (The transaction ended in the trigger. The batch has been aborted.) / 266 Transaction count mismatch13 ROLLBACK, 5 RETURN. Eksik evrak (satır ~119), Şube/Kasa/Hesap=0 (~182), takoz kontrolleri (~229,~243) dallarında ROLLmodules.json AcceptTransaction: ROLLBACK 13 / RETURN 5 (TD-04); DECLARE IslemCursor … CLOSE/DEALLOCATE yalnız normal akışta (TD-03).Cari.Islemler90
ERR-POT-135POTANSİYELS2SQLR-074 Deadlock / timeout: Cari.AcceptTransaction + InsertTransaction + UpdateTransaction (Cari.Islemler); Cari.GetHesapExtresi; Stok.GetOrtMilyem (cursor'lı skaler fonksiyon)'Transaction (Process ID …) was deadlocked … has been chosen as the deadlock victim' ya da 'Timeout expired'; işlem kaydedildi mi belirsiz (InternalDb Nothing döner).SQL 1205 / -2 (Timeout expired) Deadlock / timeoutTek INSERT için: 4 AFTER trigger, satır başına cursor, 2× Cari.GetGerekliEvraklar (3 tablo + cross-DB view), Stok.GetTakindexes.json (Cari.Islemler 26 indeks; StokHaraketleri 9, çiftler); tables.json satır sayıları; trg.json 4 tetikleyici Cari.Islemler; AcceptTransaction cursor.Cari.Islemler (1,58M satır, 26 indeks); Cari.BakiyeIslem (1,46M, 12 indeks, PK yok); Stok.StokHaraketleri (1,62M, 9 indeks); Cari.History (1,64M)70
ERR-POT-136POTANSİYELS2SQLR-075 Recursive trigger: Cari.AcceptTransaction → Cari.Hesaplar UPDATE → Cari.HesapUpdate; Cari.Transferler UPDATE → TransferUpdateSTatus → Stok.StokHaraketleri; Sistem.Subeler INSERT → CreateKasa → Sistem.Kasalar (tetikleyici yok); Uretim.UretimIslemleri → TrBakiyeHesaplaİşlem girerken beklenmedik 'Aynı Vergi No ya sahip başka bir hesap mevcuttur!!' hatası.SQL 217 (nesting 32) — düşük; iç içe tetikleme Recursive triggerAcceptTransaction 'Update Cari.Hesaplar Set LastDate=Getdate()' → HesapUpdate tetiklenir (nesting 2): VergiNo mükerrerliAcceptTransaction 'Update Cari.Hesaplar Set LastDate=Getdate() Where Id=@HesapId'; HesapUpdate metni; trg.json trigger→tablo eşlemesi.Cari.Hesaplar; Stok.StokHaraketleri; Sistem.KasalarPF-06780
ERR-POT-137POTANSİYELS1SQLR-076 Disabled trigger: 12 tetikleyici (trg.json)Kapalıysa: işlem kaydedilir ama bakiye/stok değişmez, History boş.SQL Disabled triggerDB1 kataloğunda 12 tetikleyicinin tamamı is_disabled=False. TD-32 'demo kopyasında 4 Islemler tetikleyicisi DISABLED' idtrg.json 12 satır is_disabled=False; TD-32 metni (AS-DOCUMENTED).Cari.Islemler(4), Cari.Hesaplar(2), Cari.Transferler, Sistem.SilOnay, Sistem.Subeler, Siparis.Siparisler, Uretim.UretimIslemleri, AifaDev.RepositoryItemsPF-03485
ERR-POT-138POTANSİYELS2SQLR-077 Broken dependency: Cari.AcceptTransaction'ın çağırdığı fonksiyonlar: FN.GetKur, FN.Bol, Stok.GetTakozAdet, Cari.GetGerekliEvraklar(→Genel.Dosyalar→DOCUMENTS); Cari.GetKurListesi zinciri; hesaplanan kolon UDF'leri (Sistem.Pariteler.Parite → Sistem.GetIdToBirim; dbo.SyncTickets → FN.Bol [ERPSCHEMA])Temizlik sonrası işlem kaydında 'Invalid object name FN.GetKur' vb.; 'Cannot DROP FUNCTION … because it is being referenced by object Pariteler'.SQL 208 / 4413 Broken dependencyTetikleyici içinde çağrılan UDF/view zincirinden biri drop/rename edilirse (BASE temizliğinde 'EXCLUDE' adayları) tetikldeps.json (2026 satır); computed.json Sistem.Pariteler.Parite 'Sistem.GetIdToBirim]([AnaBirimId])'; ERPSCHEMA dbo.SyncTickets computed 'FN.Bol'.Sistem.Pariteler; Cari.Islemler80
ERR-POT-139POTANSİYELS3SQLR-078 Collation conflict: Pozisyon.Write (COLLATE Turkish_CI_AS); Genel.Dosyalar (cross-DB DOCUMENTS); Sistem.FromERP (<@Database>.dbo.*); ERPGLOBAL.dbo.Company'Cannot resolve the collation conflict between … in the equal to operation.'SQL 468 Collation conflictTek açık COLLATE kullanan modül Pozisyon.Write. Cross-DB join'lerde (DOCUMENTS, eski ERP DB, ERPGLOBAL, tempdb #tablolarmodules.json COLLATE taraması: yalnız Pozisyon.Write.60
ERR-POT-140POTANSİYELS4SQLR-079 Collation conflict: nvarchar(1) kolonlar; text/image legacy tipler; bit'e 'True'/'False' stringTanım ekranında 'String or binary data would be truncated'; tasarımcıda text tipi hataları.SQL (veri tipi) 8152/245 Collation conflictnvarchar(1) kod kolonlarına 2+ karakter → 8152. text/image tipleri: sys.sql_modules/STRING fonksiyonları ile kullanılamacolumns.json taraması: nvarchar(1) 4, varchar(1) 2, text 4, image 19.Sistem.CariIslemTipi.Kod, Sistem.CariIslemTuru.Kod/Yon, Sistem.TakozScala.Kodu (nvarchar(1)); Cari.Islemler.Yon/History.Yon varchar(1); AifaDev.Forms FormCode/ClassCode/DesignerCode (text); Design.For90
ERR-SIL-031SESSİZ MANTIK / HESAPLAMAS3SQLR-080 Legacy: Pozisyon.GetOldPozisyon; Sistem.NonUsed_TCMBDovizKurlari; Genel.Dosyalar_; Genel.Experler_; Sistem.AyarEvi_ (DB2); LiveUpdate.VersionHistory_; dbo.Temp; dbo.test; Muhasebe.TEst; FN.GetCariLimitOld; FN.GetKurOldKur; FX.StartSyncOld; Report.BakiyeArtisRaporuOldTemizlik sonrası Pozisyon ekranı/raporunda 'Invalid object name Pozisyon.GetOldPozisyon'.SQL Legacy'Old' adlı fonksiyon canlı ekran ve rapor tarafından kullanılıyor (BASE-CORE olarak işaretli) — ad yanıltıcı, temizlikteLegacy referans taraması: code FrmPozisyon.vb:8, dbsql AifaDev.Reports#18, modül Pozisyon.GetHacimRaporu; analysis.json LEGACY 25 nesne.PF-00485
ERR-SIL-032SESSİZ MANTIK / HESAPLAMAS3SLR-001 Bakiye satırı hassasiyeti: Has (5 hane) → Cari.BakiyeIslem.Bakiye decimal(18,2)Müşteri has bakiyesi ile stok has toplamı (bilanço BAKIYE vs STOK kalemi) arasında açıklanamayan gra@Has = I.Miktar * Case When AuMilyem=0 Then 1 else AuMilyem end → Insert Into Cari.BakiyeIslem(...,Bakiye) Values(...,Miktar × AuMilyem üçüncü ondalıkta 5 ve üzeri (ör. 12,34 g × 0,916 = 11,30344 → 11,30); yüksek hacimTrigger has'ı 5 haneli hesaplar ancak BakiyeIslem.Bakiye 2 haneli olduğu için her satır ±0,005 has yuvarlanır. Aynı işlem için Stok.StokHaraBir işlemin has bakiye satırı, |Miktar × AuMilyem| değerine 2 hane yuvarlama toleransı içinde eşit oPF-03092
ERR-SIL-033SESSİZ MANTIK / HESAPLAMAS2SLR-002 Trigger içinde ROLLBACK sonrası RETURN olmayan dallar (evrak eksik, şube/kasa/hesap=0, takoz stok kontrolü)Cari.Islemler'de IsDeleted=0 kalan işlemin BakiyeIslem satırları silinmiş (bakiye eksik) ya da IsDelRAISERROR(...) ; Set @IsError=1 ; ROLLBACK -- RETURN yok (satır 119-123, 180-185, 225-247); döngü başında Set @IsErrorTek UPDATE ile birden çok Cari.Islemler satırı değişirken satırlardan birinin hesabında zorunlu evraROLLBACK sonrası trigger yürütmeye devam eder ve sonraki DML'ler autocommit ile kalıcı olur (SQL Server davranışı). Aynı satır için @IsErrorAktif (IsDeleted=0, tip ∉{1,11,12}) ve tutar/has üreten her işlemin en az bir BakiyeIslem satırı olmPF-03470
ERR-SIL-034SESSİZ MANTIK / HESAPLAMAS2SLR-003 Limit kontrolü için toplam bakiye (Cari.ToplamBakiye = bugünkü BakiyeIslem + Cari.BakiyeDun)Limit aşan müşteriye satış/çıkış işlemi sessizce kabul edilir ('limit çalışmıyor'); tersine job günCari.ToplamBakiye = Σ_bugün( Convert(dec(18,2), Bol(Bakiye*Carpan*Kur.Alis, KurHAS.Alis)) )*-1 + Σ Cari.BakiyeDun.BakiyeCari.BakiyeDun boş/eski (job çalışmamış); işlem tarihi ≠ bugün; kur listesi HAS satırı 0Dünkü ve önceki bakiyeler yalnız Cari.BakiyeDun tablosundan gelir; bu tabloyu dolduran prosedürü çağıran bir job kaynakta yok ve örnek DB'deCari.BakiyeDun.Tarih = dün ve limit tanımlı her hesap için satır bulunmalı; ToplamBakiye tüm BakiyeIPF-03085
ERR-SIL-035SESSİZ MANTIK / HESAPLAMAS2SLR-004 Limit kontrolü has karşılığı (Satis ÷ HAS kuru)Limit aşımı sessizce kabul edilir ya da (sembol farkında) her işlem reddedilirBalance = Satis.Divide(Program.GetKur("HAS")) ; AvaibleLimit = Val(FN.GetCariLimit(HesapId)) ; If Balance > AvaibleLimitKur listesinde HAS 0 veya yok; Settings.HasSymbol ≠ 'HAS'; IslemKodu ∉ {1,2,3}Divide uzantısı bölen 0 ise 0 döndürür: HAS kuru 0/eksikse Balance=0 ve kontrol daima geçer. GetKur birim listede yoksa 1 döner: HasSymbol 'Aktif işlemde HasKur > 1 ve HasKur ≠ 0 olmalı (has kuru fotoğrafı anlamlı).PF-03085
ERR-SIL-036SESSİZ MANTIK / HESAPLAMAS2SLR-005 Kur fotoğrafı (HasKur/GumKur/PltKur/PldKur/EurKur) kaydıİşlem satırında HasKur=1; takoz/rapor kâr-zarar ve 'işlem günü kur' raporları anlamsız@HasKur = Program.GetKur(GlobalSettings.HasSymbol) → K.Alis ; birim bulunamazsa 1Settings sembolü Birimler'de yok/silinmiş; kur listesi yenileme başarısız; kur tarihi bugün için girSembol kur listesinde yoksa 1 yazılır; takoz bakiyesinde 'Altına Çevir' Fn.Bol((Miktar*AgMilyem)*GumKur, HasKur) HasKur=1 ile has bakiyeyi TSettings'teki her metal/döviz sembolü Sistem.Birimler'de silinmemiş ve tek satır olarak bulunmalı; a90
ERR-SIL-037SESSİZ MANTIK / HESAPLAMAS2SLR-006 Sistem.GetKurListesi – günün kuru yoksa son kur (GetLastKur) yedeği; hesaplanan birimlerde yedek yokYanlış günün kuruyla TL karşılığı/has karşılığı; türev birimde fiyat 0 (Perakende Fiyat = GetKur × CAlis = IsNull(Convert(dec(18,4), Kur.Alis*Carpan), L.Alis) ; Kur join: (Case When AnaBirimId=-1 Then 1 Else AnaBirimId EGün başında kur girilmeden işlem; hafta sonu/tatil; IsComputed=1 birim; BirimId=1 ≠ HAS olan kurulum(a) Günün kuru girilmemişse tüm işlemler sessizce en son (dün, hafta sonu öncesi, hatta ileri tarihli) kurla fiyatlanır; ekranda uyarı yoktuHer aktif, hesaplanmayan birim için bugünün tarihli, silinmemiş tek bir kur satırı bulunmalı; GetKurPF-02380
ERR-SIL-038SESSİZ MANTIK / HESAPLAMAS3SLR-007 Sistem.Kurlar benzersizlik/tarih kontrolü yok; FN.GetKur TOP 1 sırasızBakiye/pozisyon/bilanço toplamları çift sayılır; rastgele kur ile dönüşümFN.GetKur = Select top 1 Alis From Sistem.GetKurListesi(Getdate()) Where BirimId=@BirimId (ORDER BY yok) ; GetLastKur =Duplicate (BirimId,Tarih); ileri tarihli kur satırı; IsDeleted=1 kur satırıAynı birim+tarih için birden çok satır oluşabilir (ekranda Id çözümleme hatası, KOPYALA + elle giriş, dış besleme). GetKurListesi bu durumdaSistem.Kurlar'da (BirimId, Tarih) çifti silinmemiş satırlar için benzersiz olmalı ve Tarih > bugün o85
ERR-SIL-039SESSİZ MANTIK / HESAPLAMAS3SLR-008 Kur giriş ekranı: yeni kur satırının Id'si olarak ExecuteNonQuery dönüşü (etkilenen satır sayısı) kullanılıyorGünün kuru yanlış (ilk girilen) kalır; Id=1'li eski kur satırı bozulur → o günkü arşiv raporları/kurId = Db.ExecuteNonQuery("Insert Into Sistem.Kurlar(...) Values(...) SELECT SCOPE_IDENTITY()") → 1 ; sonraki düzenleme:Aynı ekran oturumunda aynı birim için iki kez değer girme (yazım düzeltmesi)ExecuteNonQuery eklenen satır sayısını (1) döndürür, SCOPE_IDENTITY sonucunu değil. Grid'deki Id 1 olur; kullanıcı aynı oturumda (yenilemedeSistem.Kurlar satırında LastModify, Tarih'ten makul süre (≤ birkaç gün) sonra olmalı; Id=1 satırı güPF-01085
ERR-SIL-040SESSİZ MANTIK / HESAPLAMAS3SLR-009 Sistem.KurKopyala – bugünün kurlarını silip son kurla değiştirirBugünün kurları önceki güne döner; işlemlerde HasKur/BirimKur eski değerDelete From Sistem.Kurlar Where Tarih=Convert(Date,GETDATE()) ; Insert … Select GETDATE(),BirimId,Alis,Satis,GETDATE(),0Gün içinde kur girildikten sonra KOPYALA'ya basılması; ileri tarihli kur varsa GetLastKur onu getiriKOPYALA, bugün elle girilmiş tüm kurları siler ve önceki günün kurlarıyla değiştirir; onay/uyarı yoktur, UserId=0 yazılır. Gün içinde kur güGünün kur satırları gün içinde sonradan UserId=0 ile yeniden yazılmamalı.90
ERR-SIL-041SESSİZ MANTIK / HESAPLAMAS2SLR-010 Kur 0/NULL iken Fn.Bol ve .Divide'ın sessiz 0 üretmesi (NET, limit, bilanço, maliyet)Bakiye ekstresi TOPLAM 0; limit kontrolü etkisiz; maliyet 0FN.Bol(a,b) = (a<>0 and b<>0) ? a/b : 0 ; Divide(v1,v2) = (v1<>0 And v2<>0) ? v1/v2 : 0Kur satırı 0 (ekran engeller ama SQL/KOPYALA/dış kaynak engellemez) veya birim kur listesinde yokSıfıra bölme korunur ancak sonuç 0 olarak akar: kur eksikse NET=0, bilanço kalemi 0, pozisyon 0, limit karşılığı 0 (kontrol geçer), maliyetSistem.Kurlar'da silinmemiş hiçbir satırda Alis veya Satis 0/NULL olmamalı.PF-00590
ERR-SIL-042SESSİZ MANTIK / HESAPLAMAS4SLR-011 Kur hassasiyeti: GetKurListesi Convert(Decimal(18,4)) ile kuru 4 haneye yuvarlar (Kurlar 18,5)TL karşılıklarında küçük ama sistematik sapma; işlem kur fotoğrafı ile Kurlar tablosu farklıConvert(Decimal(18,4), Kur.Alis * Carpan) as AlisKur < 0,01 veya Carpan çarpımı 5. hanede anlamlı; büyük tutarlarBeşinci ondalık atılır; parite tipi küçük kurlarda (ör. 0,00012 gibi TL-dışı çaprazlar) ve Carpan ile türetilen birimlerde bağıl hata büyür.GetKurListesi.Alis ile Kurlar.Alis×Carpan farkı 0,00005'i aşmamalı.80
ERR-SIL-043SESSİZ MANTIK / HESAPLAMAS2SLR-012 IslemTipi 11 (belge takip) ve 12 (MAHSUP) hiç stok/bakiye hareketi üretmez – sayım farkı/açılış girişleri operasyonel stoğa yansımazStok sayım düzeltmesi yapılmış sanılır ama stok eski değerde; bilanço farkı; düzeltme ile bakiye kayif @IsDeleted='False' And @IsError=0 AND (@IslemTipi <>11 AND @IslemTipi<>12) BEGIN … stok/bakiye üretimi … ENDIslemTipi ∈ {11,12}; tip değişikliği ile düzeltmeKullanıcı dokümanı (A-Z 1.8/2.4, H-123) sayım farkı ve açılış stoğunun MAHSUP ile girilmesini önerir; tetikleyici MAHSUP için Stok.StokHarakIslemTipi ∈ {11,12} olan işlemlerin BakiyeIslem/StokHaraketleri(Bolum=0) satırı olmamalı; NORMAL→11/PF-03495
ERR-SIL-044SESSİZ MANTIK / HESAPLAMAS2SLR-013 Negatif miktar/adet girişi: bakiye abs() ile yön alır, stok hareketi işaretsiz miktarı taşırCari has bakiyesi doğru, stok ters; bilanço BAKIYE≠STOKBakiye: Set @Has=0-abs(@Has) / abs(@Has) ; Stok: Miktar = Case When @IslemTuru=0 Then @Miktar When 1 Then 0-@Miktar EndMiktar<0, Adet<0 veya Tutar<0 girilmiş satırMiktar negatif girilirse bakiye satırı yön kuralına göre düzgün işaret alır ama stok hareketi ters yöne yazılır (giriş stoğu azaltır). AyrıcAktif işlemde Miktar, Adet ve Tutar negatif olmamalı; stok hareketi işareti IslemTuru ile uyumlu olmPF-03460
ERR-SIL-045SESSİZ MANTIK / HESAPLAMAS3SLR-014 Stok.GetMadenMaliyeti – son 50 giriş (LIFO), bugünkü kurla bölme, kalan miktara 0 maliyetBirim maliyet düşük/0; maliyet bir günde sıçrar; kur değişince tarihi maliyet değişirCURSOR top 50 … Order By IslemId Desc ; ToplamMaliyet += Maliyet (veya orantılı) ; RETURN Convert(dec(18,2), Bol(ToplamMStok > son 50 girişin toplamı; geçmiş tarihli rapor; maliyet birimi kuru değişimi; transfer ile geleMaliyet yalnız girişteki işçilik TL'sidir (metal değeri yoktur); 50 hareket sınırı nedeniyle çok hareketli stokta eski girişler görülmez veEldeki miktar, maliyet hesabına giren giriş hareketleri toplamını aşmamalı (aşarsa maliyet eksik).PF-03490
ERR-SIL-046SESSİZ MANTIK / HESAPLAMAS4SLR-015 Ortalama milyem / maliyet cursor değişkenleri Decimal(18,2) – 5 haneli Has/Miktar kesilirOrtalama milyem ve has stoğu küsuratta yanlış; stok listesi ile hareket dökümü toplamı farklıDeclare @Miktar Decimal(18,2), @Has Decimal(18,2), @ToplamHas Decimal(18,2) … RETURN Fn.Bol(@ToplamHas,@ToplamMiktar)Miktar×Milyem 3. ondalıkta anlamlı; çok sayıda küçük hareketHer hareket 2 haneye yuvarlanarak toplanır; küçük gramajlı çok sayıda hareket (ör. 0,005 g altı has satırları) ortalama milyemi saptırır; stStok listesi has/miktar değerleri, hareket toplamına 0,01 toleransla eşit olmalı.85
ERR-SIL-047SESSİZ MANTIK / HESAPLAMAS3SLR-016 Stok has değeri kart milyemiyle, cari has bakiyesi işlem milyemiyle – stok ve cari türetilmiş kayıtları farklı milyem kullanırPozisyon raporunda has farkı; bilanço kâr/zarar hatalı; 'kur değişince bilanço değişiyor'Stok listesi: Has = Miktar × (MilyemDurumu='False' ? Maden.Milyem : GetOrtMilyem) ; Pozisyon: Sum(Miktar × StabilMilyem)AuMilyem ≠ Maden.Milyem olan işlemler; MilyemDurumu=True kartlar; negatif işçilikli kart (BR-HESAP-0İşçilikli milyem ayrıştırması (BR-HESAP-005) veya elle farklı milyem girilen işlemde bakiyeye Miktar×AuMilyem yazılır; stok ve pozisyon iseBir stok kodunun StokHaraketleri.Has toplamı, aynı satırların Miktar×Milyem toplamına eşit olmalı; pPF-03475
ERR-SIL-048SESSİZ MANTIK / HESAPLAMAS2SLR-017 Transfer kabulünde stok hareketi üretimi (Cari.TransferUpdateSTatus) – eski satırlar silinmiyorAynı transfer stoktan iki (n) kez düşer/çıkar; iptal edilen transferin stoğu geri gelmezif UPDATE(status): Delete From Stok.StokHaraketleri Where StokTipi=-2 AND IslemId in (inserted) ; Insert … Select 2,Id,1Kabul edilmiş (Status=1) transferin düzenlenmesi/yeniden kaydı; transferin sonradan iptaliSilme koşulu StokTipi=-2 (var olmayan tip) olduğundan hiçbir zaman eski Bolum=2 satırı silinmez. Transferler.Update() Status kolonunu her zaStatus=1 ve silinmemiş her transfer için tam 2 adet Bolum=2 stok hareketi; diğer durumlarda 0 olmalıPF-03480
ERR-SIL-049SESSİZ MANTIK / HESAPLAMAS3SLR-018 Stok.StokHaraketleri.IslemId ad alanı çakışması (Bolum 0 → Cari.Islemler.Id, Bolum 1 → Uretim, Bolum 2 → Transferler.Id)Stok hareket raporunda transfer satırı yanlış tarih/hesapla; maliyet sırası yanlışGetStokHareketleri: Left Join Cari.Islemler I on H.IslemId=I.Id (Bolum süzgeci yok) → HesapAdi/Tarih/Fiyat/Tutar başka iBolum=2 veya Bolum=1 satırının IslemId'si ile aynı Id'li Cari.Islemler satırıTransfer/üretim satırlarının IslemId'si Cari.Islemler'deki rastgele bir işlemle çakışır; hareket dökümünde yanlış hesap adı/tarih/tutar görüBolum≠0 stok hareketleri Cari.Islemler ile Id üzerinden ilişkilendirilmemeli.PF-03490
ERR-SIL-050SESSİZ MANTIK / HESAPLAMAS3SLR-019 Pırlanta stok maliyeti = Tutar × FN.GetKur(BirimId)Pırlanta maliyeti NULL/yanlış birim kuruyla; bilanço PIRLANTA kalemi eksikDeclare @Maliyet decimal(18,2) = @Tutar * Fn.GetKur(@BirimId) → StokHaraketleri.MaliyetIslemKodu=8 ve IslemTipi=1; BirimId kur listesinde yok; geçmiş tarihli düzeltmeGetKur eşleşme bulamazsa NULL döner → Maliyet NULL (bilanço PIRLANTA kalemi Sum ile NULL'u atlar). PEŞİN tipte BirimId nakit stok kimliğidirStokTipi=4 hareketlerde Maliyet NULL olmamalı.PF-03475
ERR-SIL-051SESSİZ MANTIK / HESAPLAMAS3SLR-020 Çeşni ve takoz stok listeleri InsertDate ile, stok hareketleri Tarih ile süzülürTarihli bilanço/pozisyon farkı; devirde satırın yanlış döneme düşmesiGetCesniStoklari/GetTakozSubeStoklari: CONVERT(date,InsertDate)<=@Tarih ; StokHaraketleri: Tarih<=@Tarih ; BakiyeIslem.TGeçmiş tarihli takoz/çeşni işlemi; devir kesim tarihine yakın kayıtlarGeçmiş tarihe girilen çeşni/takoz işlemi bilançoda kayıt gününe, cari bakiyede işlem gününe düşer; tarihli bilanço iki kalemde farklı kesimStok ve bakiye türetimleri aynı tarih alanını (Tarih) esas almalı.PF-03485
ERR-SIL-052SESSİZ MANTIK / HESAPLAMAS2SLR-021 Nakit tip 10 (PARİTE) satırı doğrudan kaydedilirse ters işaretli bakiye ve BirimId=0 satırıMüşteri TL bakiyesi ters işaretli; görünmeyen BirimId=0 bakiye satırısatır 318-330: Insert BakiyeIslem(BirimId=@BakiyeId, Bakiye=±@Miktar) ; satır 421-425: Insert BakiyeIslem(BirimId=@BirimIslemTipi=10 olarak kaydedilmiş nakit satırı (düzeltme yolu)Ekran PARİTE'yi yeni kayıtta iki NORMAL bacağa çevirir; ancak mevcut kayıt düzenlenirken (RecordId≠0) tip PARİTE seçilirse satır IslemTipi=1Cari.BakiyeIslem.BirimId ∈ Sistem.Birimler.Id ∪ {-1} olmalı; 0/NULL olmamalı.PF-02365
ERR-SIL-053SESSİZ MANTIK / HESAPLAMAS3SLR-022 Çeşni (IslemKodu=14) bakiye satırları yönden bağımsız pozitif yazılırÇeşni girişinde müşteri alacaklanacağına borçlanırValues(…,@HasBirimId,@Miktar * @AuMilyem) ; Values(…,@GumBirimId,@Miktar * @AgMilyem) (IslemTuru'na göre işaret yok)IslemKodu=14 ve IslemTuru∈{0,2,4}; Tutar≠0 çeşni satırıEkran her zaman ÇIKIŞ yazdığı için sonuç doğru görünür; ancak satır Düzelt ile tür değiştirilirse ya da seri/sonradan eklenen bir yol GİRİŞIslemKodu=14 satırlarında IslemTuru=1 ve Tutar=0 olmalı.PF-03070
ERR-SIL-054SESSİZ MANTIK / HESAPLAMAS3SLR-023 Raporsuz takoz bakiyesi: XRF milyemi 0 ise TAKOZ (-1) birimine miktar; değerleme 0,6 varsayımıPozisyon 0, bilanço 0,6, bakiye kartı miktar bazlı – üç rapor tutmazIsRapor=0 ⇒ @AuMilyem=XRFAuMilyem ; (@AuMilyem=0 And @AgMilyem=0) ⇒ Insert BakiyeIslem(BirimId=-1, Bakiye=∓Miktar) ; NetIsRapor=0 ve XRF milyemleri 0; rapor sonrası düzeltilmemiş takoz; XRF sonradan güncellenen takozAynı raporsuz takoz üç yerde üç farklı has değeriyle değerlenir (0; 0,6; kart Miktar*0,6 vs bakiye Miktar). Rapor geldiğinde işlem düzeltilmRaporlu (IsRapor=1) takozun işlemlerinde BirimId=-1 bakiye satırı kalmamalı; raporsuz takoz değerlemPF-00485
ERR-SIL-055SESSİZ MANTIK / HESAPLAMAS3SLR-024 İptalin geri alınması / mutabakat gibi her UPDATE'te bakiye ve stoğun güncel referans verisiyle yeniden üretilmesiKimse işlem değiştirmeden bakiye değişir (H-105'in kod bağlantısı)Her UPDATE'te: Delete BakiyeIslem/StokHaraketleri(Bolum=0) → yeniden Insert (XRF milyem, HasBirimId, FN.GetKur bugünkü dXRF milyemi/Settings/kur değiştikten sonra eski işlemin herhangi bir nedenle güncellenmesiTüretilmiş kayıtlar işlem satırındaki kur fotoğrafıyla değil o anki referans verilerle (takoz XRF milyemi, Settings sembolleri, pırlanta içiBir işlemin BakiyeIslem toplamı, işlem alanları değişmedikçe (History 'Düzeltme' yoksa) sabit kalmalPF-03075
ERR-SIL-056SESSİZ MANTIK / HESAPLAMAS2SLR-025 Fiş numarası üretimi MAX(FisNo)+1 (silinmemişler) ve fiş bazlı toplu iptalYanlış işlemlerin toplu iptali (bakiye/stok geri alınır); fiş bakiyesi (GetFisBakiye FisNo<=) yanlışGetNewFisNo = Val(Select Max(FisNo) From Cari.Islemler Where IsDeleted='False') + 1 ; onIptalFisNoClick: Update Cari.IslEşzamanlı kayıt; son fişin iptali; aynı FisNo'ya sahip farklı günlerdeki satırlar(a) İki kullanıcı aynı anda aynı fiş numarasını alır (yarış). (b) Son fişin tüm satırları iptal edilince numara yeniden kullanılır; iptal edAynı kasada aynı FisNo yalnız tek bir güne ve tek bir hesaba ait olmalı.85
ERR-SIL-057SESSİZ MANTIK / HESAPLAMAS2SLR-026 Çift kayıt (duplicate posting) – zaman aşımı/ağ kopması sonrası tekrar kayıtAynı işlem iki kez bakiye ve stoğa yazılırTry RecId=db.ExecuteScalar() Catch … End Try ; If RecId>0 Then Id=RecId … Else Return FalseAğ kesintisi/uzun tetikleyici süresi (AcceptTransaction cursor + GetGerekliEvraklar) sırasında kayıtSunucu INSERT'i işledikten sonra yanıt istemciye ulaşmazsa (timeout 30 sn, ağ) uygulama hata gösterir ve kayıt başarısız sanılır; kullanıcıAynı hesap/tarih/kod/yön/miktar/tutar ile 60 sn içinde ikinci aktif işlem olmamalı.PF-07175
ERR-SIL-058SESSİZ MANTIK / HESAPLAMAS2SLR-027 Çok adımlı kayıt zincirlerinde transaction yokluğu (Insert→RsAktar, Save→SendTo karşı bacak, parite iki bacak, Update→Takoz.RaporYaz)İki hesabın bakiye toplamı sıfırlanmaz; parite ikinci döviz stoğu değişmezRecId = db.ExecuteScalar() ; If RSAktar … db.ExecuteNonQuery("Cari.RSAktar " & RecId) ; … SendTo: I.Id=0; I.HesapId=karşKarşı hesapta zorunlu evrak eksik, limit aşımı, şube pasif; ağ kesintisiİlk bacak yazıldıktan sonra ikinci adım (karşı hesap limiti/evrak/pasif şube nedeniyle trigger reddi, ağ) başarısız olursa uyarı çıkar ama iVirman (IslemKodu=11) RefNo'su tam iki aktif satır taşımalı; parite birinci bacağının (VaryantId=-1)PF-00490
ERR-SIL-059SESSİZ MANTIK / HESAPLAMAS3SLR-028 Cari.UpdateTransaction – çok satırlı UPDATE'te tek satır değişkeni; Mutabakat güncellemesi history üretmezBelge havuzunda iptal edilmiş işlem 'F' durumunda kalır; history eksikSelect @IsDeleted=I.IsDeleted, @IslemId=D.IslemId, @Ettn=D.ETTN from inserted I Left Join IslemDetaylari D … (tek değer)Birden çok satırı etkileyen UPDATE; Mutabakat kolonunu içeren UPDATERefNo/FisNo ile toplu iptalde yalnız rastgele bir satırın IslemDetaylari kaydı silinir/EIPTAL yapılır; diğer satırların belge detayları aktiİptal edilmiş (IsDeleted=1) ve e-belgesi olmayan işlemin IslemDetaylari satırı kalmamalı; her işlemi85
ERR-SIL-060SESSİZ MANTIK / HESAPLAMAS4SLR-029 Uygulama yuvarlama yardımcıları: .Round(n) uzantısı keser (truncate) ve hane parametresini yok sayar; Math.Round banker's; ToNumeric/TextN kültür varsayımıVergi tutarı 1 kuruş eksik; ekran ile SQL raporu arasında kuruş farkı; parite TL bacağı ±0,5 TLRound(Value,Decimals): Values=Value.ToString.Split(".") ; Result=Values(0)+"."+Left(Values(1),2) ; Val(Result) ; ToNumerBSMV küsuratı 3. hanede ≥5; tutar×fiyat tam yarım kuruş; kültür/ondalık ayarı farklı iş parçacığıVadeli ve hızlı satışta BSMV = (Tutar×BSMV/1000).Round(2) her zaman aşağı kesilir (12,999→12,99), hane parametresi 2'ye sabittir, bilimsel gKayıtlı BSMV, (Tutar−BSMV)×BSMVOran/1000 değerine ±0,01 toleransla eşit olmalı.90
ERR-SIL-061SESSİZ MANTIK / HESAPLAMAS4SLR-030 Nakit BSMV geri hesabı (Tutar'dan fiyat) ileri formülün tersi değilBelge vergi tutarı ile işlem BSMV alanı farklı; tutar 40 kuruş saparİleri: BSMV = Net×BSMV/1000 ; TUTAR = Round(Net+BSMV,2) ; Geri (TxtTutar LostFocus): Net ≈ Tutar − Tutar×BSMV/1000 (brIsBsmv ve Tutar elle girilmiş; BSMV ayarı Dahil/HariçTutar elle girildiğinde net tutar ve fiyat yaklaşık hesaplanır; ardından TutarHesapla yeniden tetiklenirse Tutar ilk girilenden farklı olurNakit satırında Tutar = Miktar×Fiyat + BSMV (±0,01) olmalı.85
ERR-SIL-062SESSİZ MANTIK / HESAPLAMAS3SLR-031 Maliyet/İşçilik hesabı Double ile; negatif işçilik 0'a çekilir; kur 0 ise işçilik 0Kâr raporunda alış iskontosu kaybolur; maliyet 0MiktarMaliyeti=(Miktar×AuMilyem)×AnaBirim.Price ; Giriş: Iscilik=(TutarMaliyeti−MiktarMaliyeti).Divide(MaliyetBirim.PricTutarMaliyeti < MiktarMaliyeti (iskontolu alış); MaliyetBirim kuru 0; kur listesi eksikMüşteriden metal değerinin altında alış (negatif işçilik = iskonto) 0 işçilikle kaydedilir; StokHaraketleri.Maliyet (=Iscilik×Kur) 0 olur, gGirişte Iscilik×IscilikBirimKur ≈ Tutar×BirimKur − Miktar×AuMilyem×HasKur (negatif değer 0'a çekilme80
ERR-SIL-063SESSİZ MANTIK / HESAPLAMAS3SLR-032 Bilanco.OzetBilanco – kalemler farklı kesim tarihleri ve varsayımlarla toplanırBilanço eksi/artı sapar; günlük kâr-zarar yanlış; pozisyon ile bilanço tutmazBAKIYE: B.Tarih<=@Tarih … GELIR/GIDER(masraf bakiyesi): Where H.HesapTuru=4 (tarih yok) ; GELİR/GİDER(hizmet): Tarih>S.RGeçmiş tarih için bilanço; masraf hareketi olan dönem; raporsuz takoz stoğu; kur eksik günGeçmiş tarihli bilanço masraf hesaplarının bugüne kadarki tüm bakiyesini içerirken diğer kalemler kesim tarihine kadar alınır; hizmet gelir/Aynı kesim tarihi için bilanço yeniden hesaplandığında arşivlenen (Bilancolar) değerle eşit olmalı.70
ERR-SIL-064SESSİZ MANTIK / HESAPLAMAS3SLR-033 Bilanco.GetIKar – parametre/sabit karışıklığı (KasaId=SubeId, BirimId=1=HAS, Satis kuru, ham bölme)İşlem bazlı kâr raporu boş/yanlışWhere B.KasaId=@SubeId … Bakiye*Kur.Satis / kur1.Alis (Kur1.BirimId=1)KasaId≠SubeId kurulum; BirimId 1 ≠ HAS; kur eksikKasa kimliği şube kimliği yerine kullanılır (yalnız Id'ler çakışırsa sonuç döner); HAS için Id=1 varsayımı; bakiye satış kuruyla, stok alışRapor fonksiyonları HAS birimini Settings.HasSymbol üzerinden çözmeli, sabit Id kullanmamalı.PF-02375
ERR-SIL-065SESSİZ MANTIK / HESAPLAMAS2SLR-034 Sistem.Devir (SQL) – açılış satırlarında has/milyem sıfır, takoz/pırlanta stokları ve tarihsiz satırlar düşer, 2 hane yuvarlamaDevir sonrası stok has/milyem/maliyet yanlış; takoz çıkışı engellenir veya eksi adet; bakiye eksik#TBLStokHaraketleri(Miktar dec(18,2), Has dec(18,2)) ; maden açılış: 0 as Milyem, 0 as Has, Maliyet*K.Alis(bugün) ; trunYıl sonu devri; devir öncesi alınıp sonra çıkılan takoz; Tarih NULL kayıt; devirin kesim tarihindenDevir sonrası maden açılış hareketinin Has=0 ve Milyem=0 olduğu için GetOrtMilyem/GetMadenStok has stoğu ve ortalama milyem sessizce bozulurDevir açılış satırları (IslemId=-1) StokTipi 1 için Has ve Milyem taşımalı; StokHaraketleri/BakiyeIsPF-03485
ERR-SIL-066SESSİZ MANTIK / HESAPLAMAS1SLR-035 Devir.vb (uygulama devri) – Sum(Milyem) ile açılış satırı, tarih=çalıştırma günü, transaction yokDevir açılış satırında Milyem>1; stok has/maliyet yanlış; tam veri kaybı riskiINSERT #ERPStok Select -1,0,IslemTuru,Getdate(),SubeId,KasaId,StokTipi,StokId,Sum(Adet),Sum(Miktar),Sum(Milyem),Sum(Has)Devir.vb ile devir; hareketli stok kartları; devir sırasında hataMilyem sütunu toplanır (100 satır × 0,916 = 91,6) → NetBakiye hesaplanan sütunu ve GetStokHareketleri'nin Has=Miktar×Milyem gösterimi anlamsStokHaraketleri.Milyem ≤ 1 olmalı; açılış satırında Has = Miktar×Milyem tutmalı.PF-03685
ERR-SIL-067SESSİZ MANTIK / HESAPLAMAS1SLR-036 Repair.BalanceRepair – güncel tetikleyiciden geride kalmış tam yeniden kurmaTüm bakiyeler ve stoklar sistematik olarak farklı kural setiyle yeniden yazılır; devir/transfer veriTruncate Cari.BakiyeIslem ; Truncate Stok.StokHaraketleri ; cursor: eski kural seti (tip 11/12 hariç tutma yok; kod 14,Prosedürün elle çalıştırılması (destek/geliştirici)Çalıştırılırsa devir (IslemId=-1), transfer (Bolum=2) ve üretim (Bolum=1) satırları kalıcı silinir; tip 11/12 satırları için bakiye/stok üreDevir (IslemId=-1) ve Bolum≠0 türetilmiş satırlar hiçbir onarımda silinmemeli; onarım kural seti tetPF-00495
ERR-SIL-068SESSİZ MANTIK / HESAPLAMAS1SLR-037 Repair.StokRepair – ikinci FETCH'te değişken sayısı uyumsuz (17 ≠ 18)Tüm stok hareketleri silinir; stok listeleri boşTruncate Table Stok.StokHaraketleri ; FETCH NEXT … INTO 18 değişken (ilk) ; döngü sonunda FETCH NEXT … INTO 17 değişkenProsedürün çalıştırılmasıİlk satır işlendikten sonra ikinci FETCH 'number of variables … must match' hatasıyla durur; TRUNCATE zaten autocommit ile kalıcı olduğundanOnarım prosedürleri TRUNCATE'i yalnız başarılı yeniden kurma ile aynı transaction içinde yapmalı.PF-03490
ERR-SIL-069SESSİZ MANTIK / HESAPLAMAS1SLR-038 Sistem.Settings tek satır varsayımı; Save = TRUNCATE + INSERT (transaction yok)BirimId NULL bakiye satırları; vergi/uyarı kontrolleri kapanırGlobalSettings.Save: Truncate Table Sistem.Settings ; Insert Into Sistem.Settings(...) Values('…') ; Trigger: @HasBirimIAyar kaydı sırasında hata; elle satır ekleme; sembolün Birimler'de olmamasıINSERT başarısız olursa (tip dönüşümü, kolon uyumsuzluğu) tablo boş kalır: tetikleyici sembolleri NULL alır, takoz/çeşni bakiye satırları BiSistem.Settings tam 1 satır içermeli; sembol kolonları Birimler'de tekil eşleşmeli.80
ERR-SIL-070SESSİZ MANTIK / HESAPLAMAS2SLR-039 Sistem.Birimler.Kodu benzersiz değil; kur listesi ve bakiye toplamları kod ile birleştirilirLimit, bilanço ve pozisyon çift sayımLeft Join Sistem.GetKurListesi(Getdate()) Kur on Kur.Birim = Bak.KoduBirimler'de aynı Kodu ile IsDeleted=0 iki satırAynı kodlu iki birim (silinip yeniden açılan) kur listesinde iki satır üretir; koda göre join yapan bakiye/limit/bilanço/pozisyon sorgularıSistem.Birimler.Kodu silinmemiş satırlarda benzersiz olmalı.PF-02385
ERR-SIL-071SESSİZ MANTIK / HESAPLAMAS3SLR-040 FN.GetKatki daima 0 döndürür; FN.Katsayı tablo dışı milyemde NULL → FN.AyarCevir 0Sipariş/üretim miktarı 0 veya katkı 0GetKatki: … Set @Result=… ; return 0 ; AyarCevir = Bol(@Miktar, Katsayı(@Milyem1)) * Katsayı(@Milyem2) ; Katsayı: CASEMilyem tam olarak listedeki 7 değerden biri değilseKatkı hesabı her koşulda 0; ayar çevirici 0,995/0,9166 gibi listede olmayan milyemlerde 0 döndürür (Bol NULL→0). Sipariş girişinde çevrilenAyar çevrimi tanımsız milyemde 0 yerine hata/uyarı üretmeli.90
ERR-SIL-072SESSİZ MANTIK / HESAPLAMAS4SLR-041 Uretim.TrBakiyeHesapla – kasa seçimi sırasız TOP 1, has = Tutar×FiyatÜretimden gelen stok yanlış kasada; kasa stok listesi tutmaz@KasaId = (Select Top 1 Id From Sistem.Kasalar Where IsDeleted='False' And SubeId=@SubeId) ; URETIMGIRIS: StokHaraketlerŞubede >1 kasa; üretim modülü kullanan kurulumŞubede birden çok kasa varsa üretim çıktısı rastgele kasaya yazılır (plan değişince kasa değişir); giriş satırında miktar/milyem alanları TuBolum=1 stok hareketleri deterministik bir kasaya yazılmalı.PF-03060
ERR-SIL-073SESSİZ MANTIK / HESAPLAMAS3SLR-042 Trigger hata iletimi ve uygulamanın algısıRs aktarımı eksik işlem; takoz raporu yazılmamış giriş; haksız limit reddiInternalDb.ExecuteScalar: Catch ex → MsgBox(ex.Message); Result=Nothing ; Insert: RecId=0 → Return FalseRsAktar/RaporYaz prosedür hatası; FN.GetCariLimit hataTrigger reddi kullanıcıya SQL metniyle gösterilir (sessiz değil). Ancak RAISERROR olmadan hata yutulan yerler vardır: Insert sonrası 'Cari.RInsert sonrası ikincil adımlar (RsAktar/RaporYaz) başarısızsa ana kayıt işaretlenmeli veya geri alın80
ERR-SIL-074SESSİZ MANTIK / HESAPLAMAS3SLR-043 Nakit NORMAL girişte yalnız karşılık birimi (TL) bakiyeye yazılır; döviz tarafı yalnız kasa stoğunaYanlış düzeltme girişleri; çift kayıtsatır 401-432: Tutar satırı (BirimId, ±Tutar) ; has/miktar satırı yok (BakiyeId=0) ; Stok: StokHaraketleri(StokTipi=2, SNakit NORMAL/ EMANET dışı işlem; kullanıcı beklentisiKullanıcı dokümanı (A-Z 2.6) EUR+TL iki satır bekler; kod yalnız TL yazar. Personel 'işlem eksik' sanıp ikinci kez döviz satırı girebilir (çNakit işlemi (tip≠10) yalnız BirimId'li tek bakiye satırı üretmeli.PF-02390
ERR-SIL-075SESSİZ MANTIK / HESAPLAMAS2SLR-044 PEŞİN (IslemTipi=1) işlemde bakiye/limit muafiyeti ve %5 karşılık toleransıBakiyesi olmayan ama karşılığı da tam girilmemiş peşin işlem; kasa/stok farkı; limit aşımıCari.GetFisPesinKontrol: Tutar = GIRIS>CIKIS ? (1 − Bol(CIKIS,GIRIS)) × 100 : Bol(CIKIS,GIRIS); sonuç > 5 ise 'karşılıkPesinKontrol kapalı grup; fiş yazdırılmadan kapatılan işlem; %5 altındaki farklar; GIRIS=0 (Bol 0 döPEŞİN tip bakiye satırı üretmediği ve limit kontrolünden muaf olduğu için, karşılığı eksik/ yanlış girilmiş peşin fiş sessizce bakiye dışı kINV-03: IslemTipi=1 işlemin Cari.BakiyeIslem satırı olmamalı; PEŞİN fişte giriş/çıkış karşılığı dengPF-00775