-- Títulos a Pagar Liquidados ou Aberto por Emissão ou Vencimento
SELECT	se.nome AS nome_empresa,
	p.codigo,
	p.nome,
	tf.numero_titulo,
	tf.numero_parcela,
	tf.data_emissao,
	tf.data_vencimento,
	tf.data_liquidacao,
	tf.valor_titulo,
	tf.valor_liquidado,
	tdr.denominacao,
	tf.observacao,
	tf.situacao as situacao_codigo,
	CASE WHEN tf.situacao = 1
			then
			'ABERTO'
			else CASE WHEN tf.situacao = 2
				then
				'LIQUIDADO'
				else		
					CASE WHEN tf.situacao = 3
					then
					'LIQUIDADO PARCIALMENTE'
					else		
						CASE WHEN tf.situacao = 10
						then
						'LIQUIDADO POR TROCA DE TÍTULO'
						else		
							'OUTRA SITUAÇÃO'
						END
					END
				END
		END as situacao_nome,
	ef.denominacao as especie_liquidacao,
	uap.nome AS usuario_aprovador,
	cf.denominacao AS denominacao_conta_financeira,
	cf.codigo AS codigo_conta
FROM	titulo_financeiro AS tf
	INNER JOIN pessoa AS p ON (p.id_pessoa = tf.id_credor_devedor)
	LEFT OUTER JOIN parcela_despesa_receita AS pdr ON (pdr.id_titulo_financeiro = tf.id_titulo_financeiro)
	LEFT OUTER JOIN despesa_receita AS dr ON (dr.id_despesa_receita = pdr.id_despesa_receita)
	LEFT OUTER JOIN sis_usuario AS uap ON (uap.id_usuario = dr.id_usuario_aprovador)
	LEFT OUTER JOIN tipo_despesa_receita AS tdr ON (tdr.id_tipo_despesa_receita = dr.id_tipo_despesa_receita)
	LEFT OUTER JOIN especie_financeira AS ef ON (ef.id_especie_financeira = tf.id_especie_liquidacao) 
	INNER JOIN sis_empresa AS se ON (se.id_empresa = tf.id_empresa)
	LEFT OUTER JOIN conta_financeira AS cf ON (cf.id_conta_financeira = tf.id_conta_liquidacao)
WHERE	tf.id_empresa IN (:IdEmpresaMultSlc)
AND	((:DataInicialVencimentoNO = '00010101' OR tf.data_vencimento >= :DataInicialVencimentoNO) AND (:DataFinalVencimentoNO = '00010101' OR tf.data_vencimento <= :DataFinalVencimentoNO))
AND	((:DataInicialEmissaoNO = '00010101' OR tf.data_emissao >= :DataInicialEmissaoNO) AND (:DataFinalEmissaoNO = '00010101' OR tf.data_emissao <= :DataFinalEmissaoNO))
AND	(:IdContaFinanceiraNaoObrigatorio = -1 OR cf.id_conta_financeira = :IdContaFinanceiraNaoObrigatorio)
AND	(:NaturezaTituloPagar = -1 OR tf.natureza_titulo = :NaturezaTituloPagar)
AND	pagar_receber = 1 --Pagar
AND	tf.situacao IN (1, 2, 3, 10) --1 aberto e 2,3,10 Liquidados
AND	tf.natureza_titulo IN (101, 106, 108, 109, 112, 114, 116)