PDC_REPORT_CreazioneDB/sql/Collaudo/funzioni/C6MartPeriodico_getDescFromDate.sql
2025-06-10 15:29:00 +02:00

43 lines
1.0 KiB
Transact-SQL

-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: <Description, ,>
-- =============================================
CREATE FUNCTION [C6MartPeriodico].[getDescFromDate]
(
@Durata INT
)
RETURNS VARCHAR(128)
AS
BEGIN
-- Declare the return variable here
DECLARE @Desc VARCHAR(128)
DECLARE @Anni INT
DECLARE @Mesi INT
DECLARE @AnniDesc VARCHAR(64)
DECLARE @MesiDesc VARCHAR(64)
SET @Desc = ''
SET @Anni = @Durata / 12
SET @Mesi = @Durata - (@Anni * 12)
SET @AnniDesc = ''
SET @MesiDesc = ''
IF @Anni > 0
IF @Anni = 1
SET @AnniDesc = @AnniDesc + '1 anno'
ELSE
SET @AnniDesc = @AnniDesc + CAST(@Anni AS VARCHAR) + ' anni'
IF @Mesi > 0
IF @Mesi = 1
SET @MesiDesc = @MesiDesc + '1 mese'
ELSE
SET @MesiDesc = @MesiDesc + CAST(@Mesi AS VARCHAR) + ' mesi'
IF LEN(@AnniDesc) = 0
SET @Desc = @MesiDesc
ELSE
IF LEN(@MesiDesc) = 0
SET @Desc = @AnniDesc
ELSE
SET @Desc = @AnniDesc + ' e ' + @MesiDesc
-- Return the result of the function
RETURN @Desc
END