Files
Samuele Locatelli e7da820ab0 pulizia codice SQL x maiuscole/minuscole
fix webconfig 218_test
2014-05-20 08:19:05 +02:00

60 lines
2.2 KiB
Transact-SQL

/***************************************
* STORED stp_prtAlRxNtByUDC
*
* ottiene il record dell'Assieme Logico dato il codice AL richiesto x la stampa ( usato sia x cartellino AL RX che Trattamenti )
*
* Steamware
* mod: 2014.03.20
*
****************************************/
CREATE PROCEDURE [dbo].[stp_prtCartAL]
(
@AL VARCHAR(50)
)
AS
DECLARE @tmp NVARCHAR(500)
DECLARE @NoteTratt NVARCHAR(500)
SET @tmp = ''
IF LEFT(@AL,3) = 'ALT' -- se è un assieme trattamenti li leggo
BEGIN
-- leggo tutti i trattamenti per tutti gli UDC dell'assieme
SELECT DISTINCT TOP 5 @tmp = @tmp + tr.ValAttr + ' - '
FROM dbo.AL2UDC
LEFT JOIN dbo.Attr2UDC AS tr ON AL2UDC.UDC = tr.UDC AND tr.CodAttr = 'NT' -- prendo attributo trattamento
WHERE AL2UDC.AL = @AL
-- sistemo intestazione nel caso non ci siano trattamenti
SET @tmp = CASE @tmp WHEN '' THEN '' ELSE 'Trattamento : ' + @tmp END ;
SET @NoteTratt = (SELECT SUBSTRING(@tmp, 0, LEN(@tmp))) -- tolgo ultimo trattino
END
SELECT
ISNULL(Ass.AL,N'' ) AS AL,
ISNULL(Ass.Cesta,N'' ) AS Cesta,
ISNULL(ass.DataCreaz,N'' ) AS DataCreaz,
ISNULL(ass.CodDtx_start,N'' ) AS CodDtx_Start,
ISNULL(ass.CodDtx_end,N'' ) AS CodDtx_End,
ISNULL(AL2UDC.UDC,N'' ) AS UDC,
ISNULL(e.Particolare,N'' ) AS Particolare,
ISNULL(Ap.DescParticolare,N'') AS DescParticolare,
ISNULL(e.Qta,0 ) AS Qta,
ISNULL(ass.CodSoggetto,N'' ) AS Codsoggetto,
ISNULL( o.Cognome,N'' ) AS cognome,
ISNULL( o.Nome,N'' ) AS nome,
ISNULL( e.Note, N'' ) AS Note,
@NoteTratt AS Trattamento
FROM dbo.ElencoAssiemi AS Ass
INNER JOIN dbo.AL2UDC ON Ass.AL = AL2UDC.AL
INNER JOIN dbo.ElencoCartellini AS e ON AL2UDC.UDC = e.UDC
LEFT JOIN RilPro.AnagParticolari AS Ap ON e.Particolare = Ap.Particolare
LEFT JOIN RilPro.AnagOperatori AS o ON Ass.CodSoggetto = o.CodSoggetto -- soggetto dell' assieme
WHERE Ass.AL = @AL
RETURN