1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57:
USE [EnergySuiteDB] GA /****** Heb bezwaar: UserDefinedFunction [dbo]. [udf_getrates_3] de Datum van het Manuscript: het 15:37 van 07/21/2010: 38 ******/ VASTGESTELDE ANSI_NULLS GA PLAATS QUOTED_IDENTIFIER GA --*********************** FUNCTIE ***********************-- VERANDER FUNCTIE [dbo]. [udf_getrates_3] (datetime @date, varchar @util (50)) Van de WINST @tbl- lijst (chargerate GELD, heffingsGELD, caprate GELD, vlotter ChargeCap, geld StandingDayCharge) ZOALS BEGIN neem @tbl op selecteer Bovenkant 1 --EffectiveStartDate, EffectiveEndDate, COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER verlaten (DATENAME (DW, @date), 1) = „S“ en isnull (weekenddaycost, 0) <> 0 DAN COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER datepart (uur, @date) tussen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) DAN weekenddaycost ANDERS weekendnightcost EIND ANDERS COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER datepart (uur, @date) tussen datepart (uur, weekdaystart) en datepart (uur, weekdayend) DAN weekdaycost ANDERS weeknightcost EIND EIND, climateChangeLevyRate, ((chargeablecapacity*capacityrate)), chargeablecapacity, isnull (StandingDayCharge, 0) VAN EnergySuiteDB.dbo.Rates waar UtilityName=@util EN @date tussen EffectiveStartDate en EffectiveEndDate Orde door identiteitskaart desc -- krijg de „laatste“ rij die de gevraagde datum behandelt. als @@rowcount = 0 tussenvoegsel @tbl selecteer Bovenkant 1 --EffectiveStartDate, EffectiveEndDate, COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER verlaten (DATENAME (DW, @date), 1) = „S“ en isnull (weekenddaycost, 0) <> 0 DAN COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER datepart (uur, @date) tussen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) DAN weekenddaycost ANDERS weekendnightcost EIND ANDERS COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER datepart (uur, @date) tussen datepart (uur, weekdaystart) en datepart (uur, weekdayend) DAN weekdaycost ANDERS weeknightcost EIND EIND, climateChangeLevyRate, ((chargeablecapacity*capacityrate)), chargeablecapacity, isnull (StandingDayCharge, 0) VAN EnergySuiteDB.dbo.Rates waar UtilityName=@util orde door EffectiveEndDate desc -- hoogste enddate behoort tot „rij 1“ allen die/blijft tarief in gebreke behandelen. terugkeer EIND
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53:
VERANDER FUNCTIE [dbo]. [udf_getrates_3] (datetime @date, varchar @util (50)) Van de WINST @tbl- lijst (chargerate GELD, heffingsGELD, caprate GELD, vlotter ChargeCap, geld StandingDayCharge) ZOALS BEGIN verklaar klusje @dw (1) plaats @dw = links (DATENAME (DW, @date), 1) verklaar @hr int. plaats @hr = datepart (uur, @date) neem @tbl op selecteer Bovenkant 1 --EffectiveStartDate, EffectiveEndDate, COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER @dw = „S“ en ( (@hr tussen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) en isnull (weekenddaycost, 0) <> 0) of (@hr Tussen geen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) en isnull (weekendnightcost, 0) <> 0)) DAN COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER @hr tussen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) DAN weekenddaycost ANDERS weekendnightcost EIND ANDERS COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER @hr tussen datepart (uur, weekdaystart) en datepart (uur, weekdayend) DAN weekdaycost ANDERS weeknightcost EIND EIND, climateChangeLevyRate, ((chargeablecapacity*capacityrate)), chargeablecapacity, isnull (StandingDayCharge, 0) VAN EnergySuiteDB.dbo.Rates waar UtilityName=@util EN @date tussen EffectiveStartDate en EffectiveEndDate Orde door identiteitskaart desc -- krijg de „laatste“ rij die de gevraagde datum behandelt. als @@rowcount = 0 tussenvoegsel @tbl selecteer Bovenkant 1 --EffectiveStartDate, EffectiveEndDate, COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER @dw = „S“ en ( (@hr tussen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) en isnull (weekenddaycost, 0) <> 0) of (@hr Tussen geen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) en isnull (weekendnightcost, 0) <> 0)) DAN COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER @hr tussen datepart (uur, weekenddaystart) en datepart (uur, weekenddayend) DAN weekenddaycost ANDERS weekendnightcost EIND ANDERS COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER @hr tussen datepart (uur, weekdaystart) en datepart (uur, weekdayend) DAN weekdaycost ANDERS weeknightcost EIND EIND, climateChangeLevyRate, ((chargeablecapacity*capacityrate)), chargeablecapacity, isnull (StandingDayCharge, 0) VAN EnergySuiteDB.dbo.Rates waar UtilityName=@util orde door EffectiveEndDate desc -- hoogste enddate behoort tot „rij 1“ allen die/blijft tarief in gebreke behandelen. terugkeer EIND