Tip: VIEW · Şema: KYC · Modül: MOD-KYC · Temizlik sınıfı: MANUAL_REVIEW (kategori D, güven 70) · Kapsam: KYC_VARIANT / ALL
Kullanım haritası (13.09.2026)
| Kategori | F — MANUAL REVIEW · F-EXTERNAL_PRODUCT |
| Güven | 90 |
| Gerekçe | ERPGOLD dışı ürün/servis şeması: AifaUyum KYC/MASAK modülü — ERPGOLD kodu çağırmaz ama başka uygulama kullanır |
| Referans veren (gerekli olmayan) | KYC.vBildirim, KYC.vEksikTurleri, KYC.vHesaplar, KYC.vPortalHesaplar, POS.EvrakKapisiDurum, POS.vEksikler |
Bkz. Database Usage Map · Manual Review. Hiçbir DB değişikliği yapılmadı; SAFETY > CLEANUP.
Temizlik kanıtı
| Kontrol | Sonuç |
|---|---|
| app | NO |
| report | NO |
| config | NO |
| dynamic | NO |
| db_in | YES |
| db_out | YES |
| trigger | NO |
| fk | NO |
| computed | NO |
| crossdb | NO |
| runtime | UNKNOWN |
| external | RISK |
Gerekçe: EXTERNAL USE RISK: AifaUyum KYC/MASAK modülü — ERPGOLD dışı AIFASOFT ürünü; nesneler 2026-09-10 oluşturulmuş
KB-v1 gövdesi (2026-09-10 · kısmi kod kapsamı — kaynağı kadar güvenilir)
Tür: VIEW (V) · Modül: MOD-KYC · Uzunluk: 53 satır
Özet
[GAP] Kaynakta açıklama yorumu yok; davranış aşağıdaki SQL tanımından ve ilişkilerden okunur.
Bağımlılıklar (bu nesne → hedef)
| İlişki | Hedef | Tip |
|---|---|---|
| READS | KYC.BelgeTurleri | TABLE |
| READS | KYC.Firmalar | TABLE |
| READS | KYC.IlgiliKisiler | TABLE |
| CALLS | KYC.vGecerliDokumanlar | VIEW |
| CALLS | KYC.vGereksinimler | VIEW |
Bu nesneyi kullananlar
| Nesne | Tip |
|---|---|
| KYC.vBildirim | VIEW |
| KYC.vEksikTurleri | VIEW |
| KYC.vHesaplar | VIEW |
| KYC.vPortalHesaplar | VIEW |
| POS.vEksikler | VIEW |
SQL tanımı (AS-IMPLEMENTED, örnek DB)
CREATE VIEW [KYC].[vEksikler]
AS
WITH g AS (
SELECT r.HesapId, r.IlgiliKisiId,
ISNULL(r.SecenekGrubu, N'#' + CAST(r.KuralId AS NVARCHAR(12))) AS Grup,
MAX(CAST(r.Zorunlu AS INT)) AS Zorunlu,
MAX(CASE WHEN d.Id IS NOT NULL AND d.SuresiDolmus = 0 THEN 1 ELSE 0 END) AS Karsilandi,
MAX(CASE WHEN d.Id IS NOT NULL AND d.SuresiDolmus = 1 THEN 1 ELSE 0 END) AS SuresiDolan,
MIN(d.SonGecerlilikTarihi) AS SonTarih
FROM Kyc.vGereksinimler r
LEFT JOIN Kyc.vGecerliDokumanlar d
ON d.HesapId = r.HesapId
AND ISNULL(d.IlgiliKisiId, 0) = ISNULL(r.IlgiliKisiId, 0)
AND d.BelgeTuruId=[REDACTED_SECRET]
GROUP BY r.HesapId, r.IlgiliKisiId,
ISNULL(r.SecenekGrubu, N'#' + CAST(r.KuralId AS NVARCHAR(12)))
)
SELECT g.HesapId,
g.IlgiliKisiId,
LTRIM(RTRIM(ISNULL(p.Ad, N'') + N' ' + ISNULL(p.Soyad, N''))) AS KisiAdi,
p.Rol AS KisiRolu,
/* Seçenek grubundaki belge adları: "Kimlik / Pasaport / Ehliyet".
STRING_AGG kullanılamıyor — veritabanının compatibility level'ı 140'ın
altında ve STRING_AGG orada YOK (Msg 102, "Incorrect syntax near '('").
FOR XML PATH + STUFF, SQL Server 2005'ten beri çalışan karşılığı.
Ayraç N' / ' üç karakter olduğu için STUFF(...,1,3,''). */
STUFF((SELECT N' / ' + t2.Ad
FROM Kyc.vGereksinimler r2
JOIN Kyc.BelgeTurleri t2 ON t2.Id = r2.BelgeTuruId
WHERE r2.HesapId = g.HesapId
AND ISNULL(r2.IlgiliKisiId, 0) = ISNULL(g.IlgiliKisiId, 0)
AND ISNULL(r2.SecenekGrubu,
N'#' + CAST(r2.KuralId AS NVARCHAR(12))) = g.Grup
ORDER BY t2.Ad
FOR XML PATH(N''), TYPE).value(N'.', N'NVARCHAR(MAX)'),
1, 3, N'') AS BelgeAdi,
CAST(g.Zorunlu AS BIT) AS Zorunlu,
CASE WHEN g.SuresiDolan = 1 THEN N'SURESI_DOLMUS'
ELSE N'EKSIK' END AS Durum,
g.SonTarih AS SonGecerlilikTarihi
FROM g
LEFT JOIN Kyc.IlgiliKisiler p ON p.Id = g.IlgiliKisiId
WHERE g.Karsilandi = 0
UNION ALL
/* sınıflandırılmamış hesaplar */
SELECT f.HesapId, NULL, NULL, NULL,
N'Kişi tipi belirlenmemiş', CAST(1 AS BIT), N'SINIFLANDIRILMAMIS', NULL
FROM Kyc.Firmalar f
WHERE f.IsDeleted = 0 AND f.KisiTipi = 0;
Kaynaklar
- SRC-DB-MODULES —
sys.sql_modulestanımı (salt okunur); gizli sabitler[REDACTED_SECRET]ile değiştirildi.
Bilinmeyenler
- Hangi sürümde eklendiği:
createdDB tarihi bir kurulumun tarihidir, ürün sürümü değil (GAP-VERSION-02).
