Files
ETS/ETS_Data/SQL/ETS_PROJ/ETS_PROJ_00190.sql
2013-09-06 08:30:35 +02:00

46 lines
1.1 KiB
Transact-SQL

-- FUNZIONI!
set ANSI_NULLS on;
go
/***************************************
* FUNCTION f_sumAllocSett
*
* calcola il totale sommando i valori dei singoli caratteri numerici (max 7 = settimanale)
*
* Steamware, S.E.L.
* mod: 2013.09.03
*
****************************************/
create FUNCTION f_sumAllocSett (@valore INT)
RETURNS INT AS
BEGIN
DECLARE @valStr NCHAR(7)
DECLARE @oreWeek AS INT = 0
SELECT @valStr = dbo.f_padLeft(@valore, 7, 0)
select @oreWeek = CAST(RIGHT(LEFT(@valStr,1),1) AS INT)
+ CAST(RIGHT(LEFT(@valStr,2),1) AS INT)
+ CAST(RIGHT(LEFT(@valStr,3),1) AS INT)
+ CAST(RIGHT(LEFT(@valStr,4),1) AS INT)
+ CAST(RIGHT(LEFT(@valStr,5),1) AS INT)
+ CAST(RIGHT(LEFT(@valStr,6),1) AS INT)
+ CAST(RIGHT(LEFT(@valStr,7),1) AS INT)
RETURN @oreWeek
END
go
-- registro versione...
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(190, GETDATE())
GO
SELECT TOP 10 * FROM LogUpdateDb ORDER BY Versione DESC
GO