CREATE FUNCTION [C6Mart].[Replace_Testo_Lettera_Benvenuto]
(
	@CODICE_CONTRATTO as varchar(16) = '',
	@FREQUENZA_DIAGN as varchar(16) = '',
	@FREQUENZA_MONITOR as varchar(16) = '',
	@COGNOME as varchar(20) = '',
	@NOME as varchar(20) = '',
	@TIPO_REPORT as varchar(100) = '',	
	@INDIRIZZO as varchar(20) = '',
	@DATA as datetime = null,
	@DATA_RICHIESTA_RISTAMPA as datetime = null,
	@DATA_GENERAZIONE_REPORT as datetime = null,
	@TESTO as TEXT = ''
)
RETURNS varchar(5000)
AS
BEGIN
	DECLARE @TESTO_DI_RITORNO as varchar(5000)
	DECLARE @REPORTISTICA as varchar(100)
	DECLARE @DATACONVERTITA as varchar(100)
	if @FREQUENZA_DIAGN is null
		BEGIN
			SET @REPORTISTICA = 'Report di Monitoraggio';
			--SET @TIPO_REPORT_D = '';
			--SET @FREQUENZA_DIAGN = '';
		END
	else
		BEGIN
			--if @FREQUENZA_DIAGN = 'T'
				--SET @FREQUENZA_DIAGN = 'Trimestrale';
			--if @FREQUENZA_DIAGN = 'S'
				--SET @FREQUENZA_DIAGN = 'Semestrale';
			--if @FREQUENZA_DIAGN = 'A'
				--SET @FREQUENZA_DIAGN = 'Annuale';
			SET @REPORTISTICA = 'Report di Diagnosi e Monitoraggio';
		END
	--if @FREQUENZA_MONITOR is null
		--BEGIN
			--SET @TIPO_REPORT_M = '';
			--SET @FREQUENZA_MONITOR = '';
		--END
	--else
		--BEGIN
			--if @FREQUENZA_MONITOR = 'T'
				--SET @FREQUENZA_MONITOR = 'Trimestrale';
			--if @FREQUENZA_MONITOR = 'S'
				--SET @FREQUENZA_MONITOR = 'Semestrale';
			--if @FREQUENZA_MONITOR = 'A'
				--SET @FREQUENZA_MONITOR = 'Annuale';
			--SET @TIPO_REPORT_M = '[' +@TIPO_REPORT_M + ', ' + @FREQUENZA_MONITOR+']';
		--END
	SET @TESTO_DI_RITORNO = @TESTO	
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'\r\n',char(10));
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'\t',char(8));
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$CONTRACT_ID$/',@CODICE_CONTRATTO);
	if not @DATA is null 
		BEGIN
			SET @DATACONVERTITA = [dbo].[FormatDate_Testo_Lettera_Benvenuto](@DATA);
			SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$DATE$/',@DATACONVERTITA);
		END
--SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$DATE$/',CONVERT(VARCHAR(10), @DATA, 103));
	else
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$DATE$/','');
	if not @DATA_RICHIESTA_RISTAMPA is null
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$reprint_date_req$/',CONVERT(VARCHAR(10), @DATA_RICHIESTA_RISTAMPA, 103));
	else
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$reprint_date_req$/','');
	if not @DATA_GENERAZIONE_REPORT is null
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$GENERATION_REP_DATE$/',CONVERT(VARCHAR(10), @DATA_GENERAZIONE_REPORT, 103));
	else
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$GENERATION_REP_DATE$/','');
	---- MODIFICARE PER MONITORAGGIO FARSI PASSARE L'ARGOMENTO DAL RM
	--- Inserire il caso del monitoraggio
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$report_type$/',@TIPO_REPORT);
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$LASTNAME$/',@COGNOME);
	if NOT @NOME IS NULL
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$NAME$/',@NOME);	
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$REPORTISCA$/',@REPORTISTICA);
	--
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$TIPO$/',@TIPO_REPORT);
	--
	--SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$REPORT_TYPE_MONITORAGGIO$/',@TIPO_REPORT_M);
--	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$FREQUENCY_DIAGNOSI$/',@FREQUENZA_DIAGN);
--	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$FREQUENCY_MONITORAGGIO$/',@FREQUENZA_MONITOR);
	SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$ADDRESS$/',@INDIRIZZO);
	if not @DATA_RICHIESTA_RISTAMPA is null
	begin
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$REPRINT_DATE_REQ$/',@DATA_RICHIESTA_RISTAMPA);
	end
	if not @DATA_GENERAZIONE_REPORT is null
	begin
		SET @TESTO_DI_RITORNO = REPLACE(@TESTO_DI_RITORNO,'/$GENERATION_REP_DATE$/',@DATA_GENERAZIONE_REPORT);
	end
    RETURN @TESTO_DI_RITORNO
END