-- ============================================= -- Author: Gcarlo -- Create date: -- Description: In base al database corrente passato ritorno la corretta libreria di AS400 -- che deve essere utilizzata -- ============================================= CREATE FUNCTION [dbo].[f_getLibreriaAS400] ( @CurrentDB nVarchar(128) ,@Function nVarchar(50) ) RETURNS nvarchar(100) AS BEGIN -- FORSE MEGLIO USARE IL NOME DELLA STORED CHE LA RICHIAMA CON ... nella stored che la richiama -- DECLARE @StoredName AS NVARCHAR(256); -- SET @StoredName = OBJECT_SCHEMA_NAME(@@PROCID) + '.' + OBJECT_NAME(@@PROCID) -- Declare the return variable here DECLARE @As400File nvarchar(100) -- Valorizzo la corretta libreria in base al database passato SET @As400File = CASE -- impostazione tramite stored che richiama la function WHEN @Function = 'BatchQueue.stp_registraMovMag' THEN -- Registrazione Movimenti Magazzino CASE -- S.POSSIDONIO WHEN ( @CurrentDB = 'SP_GMW' ) THEN 'POSN_DATV3.???' WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'MAZZT_DTV3.MWMV230F' -- TEST SP -- TEKAL WHEN ( @CurrentDB = 'TK_GMW' ) THEN 'TEKA_DATV3.MWMV260F' WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'MAZZT_DTV3.MWMV230F' -- TEST TEKAL ELSE 'DB_NON_TROVATO' END WHEN @Function = 'dbo.stp_BORI_caricaDatiBolla' THEN -- carica dati bolla CASE -- S.POSSIDONIO WHEN ( @CurrentDB = 'SP_GMW' ) THEN 'POSN_AZI.BORI202J' WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'POSN_AZI.BORI202J' -- TEST SP -- TEKAL WHEN ( @CurrentDB = 'TK_GMW' ) THEN 'TEKA_AZI.BORI202J' WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'TEKA_AZI.BORI202J' -- TEST TEKAL WHEN ( @CurrentDB = 'TK_GMWTestCopy' ) THEN 'TEKA_AZI.BORI202J' -- TEST TEKAL ELSE 'DB_NON_TROVATO' END WHEN @Function = 'BatchQueue.stp_consumaMP' THEN -- consuma UDC rapporti qualita CASE -- S.POSSIDONIO WHEN ( @CurrentDB = 'SP_GMW' ) THEN 'POSN_DATV3.XOGIX00F' WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'MAZZT_DTV3.XOGIX00F' -- TEST SP -- TEKAL WHEN ( @CurrentDB = 'TK_GMW' ) THEN 'TEKA_DATV3.XOGIX00F' WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'MAZZT_DTV3.XOGIX00F' -- TEST TEKAL WHEN ( @CurrentDB = 'TK_GMWTestCopy' ) THEN 'MAZZT_DTV3.XOGIX00F' -- TEST TEKAL ELSE 'DB_NON_TROVATO' END WHEN @Function = 'BatchQueue.stp_batch_RapQual_S01' -- legge cartellini dei rapporti qualita x caricamento OR @Function = 'As400.stp_SelectRappQualita' -- legge cartellini di un rapporto qualita THEN CASE -- S.POSSIDONIO WHEN ( @CurrentDB = 'SP_GMW' ) THEN 'POSN_DATV3.XOGIX00F' WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'POSN_DATV3.XOGIX00F' -- TEST SP -- TEKAL WHEN ( @CurrentDB = 'TK_GMW' ) THEN 'TEKA_DATV3.XOGIX00F' WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'TEKA_DATV3.XOGIX00F' -- TEST TEKAL WHEN ( @CurrentDB = 'TK_GMWTestCopy' ) THEN 'TEKA_DATV3.XOGIX00F' -- TEST TEKAL ELSE 'DB_NON_TROVATO' END WHEN @Function = 'XOGIX' THEN -- NON USATO CASE -- S.POSSIDONIO WHEN ( @CurrentDB = 'SP_GMW' ) THEN 'POSN_DATV3.XOGIX00F' WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'MAZZT_DTV3.XOGIX00F' -- TEST SP -- TEKAL WHEN ( @CurrentDB = 'TK_GMW' ) THEN 'TEKA_DATV3.XOGIX00F' WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'MAZZT_DTV3.XOGIX00F' -- TEST TEKAL ELSE 'DB_NON_TROVATO' END ELSE 'STORED_NON_TROVATA' END -- Return the result of the function RETURN @As400File END