All pastes #967240 Raw Edit

Mine

public sql v1 · immutable
·published 2008-04-02 07:55 UTC
rendered paste body
DECLARE @contractproductid INTDECLARE @customernumberid INTDECLARE @productid INTDECLARE @kansdato VARCHAR(8)DECLARE @today VARCHAR(8)SET @today = CONVERT(VARCHAR(8), GETDATE(), 112) DECLARE DeactivateMobile CURSOR fast_forward FOR SELECT DISTINCT cp2.contractproductid, cn.customernumberid, cp2.productid, cp3.property7FROM customernumber cn (nolock)join contractproductcustomernumber cpcn (nolock) ON cpcn.customernumberid = cn.customernumberidjoin contractproduct cp (nolock) ON cp.contractproductid = cpcn.contractproductidjoin contractproduct cp2 (nolock) ON cp2.contractid = cp.contractidjoin contractproduct cp3 (nolock) ON cp3.contractid = cp.contractidWHERE cn.numbermain in(select cm.number, cp.*from contractproduct cp (nolock)  join contractproductcustomernumber cpcm (nolock) on cpcm.contractproductid = cp.contractproductid  join customernumber cm (nolock) on cm.customernumberid = cpcm.customernumberid where 1 = 1  and productid = 11001  and contractproductstatusid = 1012  and activationdate is not null  and deactivationdate is null  and supplierid = 200005) OPEN DeactivateMobile FETCH NEXT FROM DeactivateMobile INTO @contractproductid, @customernumberid, @productid, @kansdatoWHILE @@FETCH_STATUS = 0 BEGIN UPDATE customernumberSET flagswitchactive = 0, customernumberstatus = 26WHERE customernumberid = @customernumberid UPDATE contractproductSET deactivationdate = @today, activationdate = @today, flagbillingactive = 0, contractproductstatusid = 1013WHERE contractproductid = @contractproductidand isnull(deactivationdate,'')=''and isnull(activationdate,'')='' UPDATE contractproductSET deactivationdate = activationdate, flagbillingactive = 0, contractproductstatusid = 1013WHERE contractproductid = @contractproductidand activationdate > @kansdato UPDATE contractproductSET deactivationdate = @kansdato, flagbillingactive = 0, contractproductstatusid = 1013WHERE contractproductid = @contractproductidand isnull(deactivationdate,'')='' UPDATE contractproductSET contractproductstatusid = 225WHERE contractproductid = @contractproductidand productid = 11042 UPDATE customernumberbilling SET datebillingstop = @kansdato WHERE flagcurrent = 1 and customernumberid = @customernumberid and ISNULL(datebillingstop, '') = '' FETCH NEXT FROM DeactivateMobile INTO @contractproductid, @customernumberid, @productid, @kansdatoEND CLOSE DeactivateMobileDEALLOCATE DeactivateMobile