/****** Object:  View [dbo].[V_EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO]    Script Date: 31/07/15 09:14:14 ******/
IF  EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO]'))
DROP VIEW [dbo].[V_EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO]
GO
--SELECT * FROM V_EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO WHERE CD_CTR = 259188
CREATE VIEW [dbo].[V_EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO] AS 

SELECT DISTINCT
	A.CD_EMP, 
	A.CD_FILIAL,
	A.CD_CTR,  
	A.CD_FORN,
	A.NR_NF,
	ISNULL(CASE WHEN ISNULL(F.CD_CTR,0) + ISNULL(G.CD_CTR,0) > 0 THEN
				CASE WHEN ISNULL(D.CD_CTR,0) + ISNULL(E.CD_CTR,0) > 0 THEN
					0 
				ELSE  
					B.CD_CTR 
				END 
			ELSE  
				B.CD_CTR 
			END,0) BLOQUEIO,
	B.TIPO_BLQ,
	DV.DS_TIPO_BLQ
FROM   
	EST_NF_ENT_DANFE_PROVISORIO A 

	LEFT JOIN EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO B ON 
	A.CD_CTR = B.CD_CTR  
	LEFT JOIN EST_NF_ENT_DANFE_PROVISORIO_BLOQUEIO_PENDENTE C  ON 
	A.CD_CTR = C.CD_CTR   
	LEFT  JOIN EST_NF_ENT_DANFE_PROVISORIO_LIBERACAO D  ON 
	B.CD_CTR = D.CD_CTR  AND
	B.TIPO_BLQ = D.TIPO_BLQ   
	LEFT JOIN EST_NF_ENT_DANFE_PROVISORIO_LIBERACAO_TIPO_BLQ E ON 
	B.CD_CTR = E.CD_CTR  AND
	B.TIPO_BLQ = E.TIPO_BLQ  
	LEFT  JOIN EST_NF_ENT_DANFE_PROVISORIO_LIBERACAO F  ON 
	C.CD_CTR = F.CD_CTR  AND
	C.TIPO_BLQ = F.TIPO_BLQ  
	LEFT JOIN EST_NF_ENT_DANFE_PROVISORIO_LIBERACAO_TIPO_BLQ G ON 
	C.CD_CTR = G.CD_CTR  AND
	C.TIPO_BLQ = G.TIPO_BLQ 
	LEFT OUTER JOIN V_EST_NF_ENT_DANFE_PROVISORIO_TIPO_BLOQUEIO DV ON
	B.TIPO_BLQ = DV.TIPO_BLQ