SENARYO
- Bir Carinin borcu 50 gün ve daha fazlaysa job ile risk bilgilerinde siparişe kapatılsın güncellenmesi yapılacak (LOGO FIRMA ADI 210).
- Job çalışma süresi her gün sabah saat 7
İŞLEYİŞ
- Önce bu kritere uyan cariler view ile belirlenecek (VIEW ADI: CARIRISKSIPARISKAPAT_210)
- Job ile bu view çağrılıp gerekli güncelleme işlemi yapılacak
CREATE VIEW CARIRISKSIPARISKAPAT_210 AS
SELECT * FROM (
SELECT
CLLOGICALREF= C.LOGICALREF,
[Cari Kodu]= C.CODE,
[Cari Ünvanı]= C.DEFINITION_,
[İşlem]= ISNULL((
SELECT TOP 1
CASE WHEN DATEDIFF(DAY,P.DATE_,GETDATE())>=50 THEN 'Siparişe Kapat' END ISLEM
FROM LG_210_01_PAYTRANS P WITH(NOLOCK)
WHERE
P.MODULENR=4 AND P.TRCODE IN (7,8) AND P.PAID=0 AND P.CARDREF=C.LOGICALREF AND P.CANCELLED=0 ORDER BY P.DATE_ ASC
),''),
[Siparişte]= ISNULL((SELECT
CASE CLR.ORDRISKOVER
WHEN 0 THEN 'İşleme Devam Edilecek'
WHEN 1 THEN 'Kullanıcı Uyarılacak'
WHEN 2 THEN 'İşlem Durdurulacak'
END FROM LG_210_01_CLRNUMS CLR WITH(NOLOCK) WHERE CLR.CLCARDREF=C.LOGICALREF),'')
FROM LG_210_CLCARD C WITH(NOLOCK) WHERE ACTIVE=0
) AS T WHERE T.İşlem<>'' and Siparişte not like '%Durdurulacak'
/*JOB SORGUSU UPDATE İŞLEMİ*/
SET QUOTED_IDENTIFIER ON
UPDATE LG_210_01_CLRNUMS SET ORDRISKOVER = 2
WHERE CLCARDREF IN (SELECT B.CLLOGICALREF FROM CARIRISKSIPARISKAPAT_210 B )