Você está na página 1de 11

***RELATORIO LI/CONCORDO***

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED --Para não bloquear as tabelas

select a.CodCreden,
(select b.NomeResumido from Credenciado b where a.CodCreden = b.CodCreden) as
NomeCreden,
a.Data, a.Descricao from CredenDocs a where
(a.Descricao = 'Aditivo 436 e LGPD - Odonto_cláusula 31012020x' or
a.Descricao = 'Aditivo e Cláusula LGPD Odontox' or
a.Descricao = 'Aditivo Odonto_ cláusula 14.18 + ratificação do contrato ' or
a.Descricao = 'Contrato_Credenciamento_Odonto_LGPD.pdf' or
a.Descricao = 'Aditivo Odonto_apenas cláusula 14.18_3101 LGPDx')
and a.Data > '2020-03-22' and a.Data < '2020-08-04'

****OUTBACK****

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED --Para não bloquear as tabelas

SELECT d.Contrato
, p.Re AS [Matrícula]
, p.CodLocal AS [Codigo do local ou distrito de trabalho do beneficiário titular]
, cl.DescrLocal AS [Descrição do local]
, p.Depto AS [Setor]
, d.CodPlano AS [Código do Plano]
, d.Inclusao AS [Data de Inclusão no Plano]
, d.CpfDep AS [CPF]
, d.Nome AS [Nome do Beneficiário]
, d.Nascimento AS [Data de Nascimento]
, d.Sexo
, d.GrauParente
, p.CepR AS [CEP]
, p.RuaR AS [Logradouro]
, p.BairroR AS [Bairro]
, p.CidadeR AS [Município]
, p.EstadoR AS [UF]
, d.Mae AS [Nome da Mãe]
FROM Depend d
INNER JOIN dbo.Contrato c ON c.Codigo = d.Contrato
INNER JOIN dbo.Paciente p ON p.Codigo = d.CodPaciente
INNER JOIN dbo.Respons r ON r.Codigo = c.CodResponsavel
INNER JOIN dbo.ContratoLocal cl ON cl.Contrato = r.Codigo AND cl.CodLocal =
p.CodLocal
WHERE r.CodGrupo = 999811432
AND d.Exclusao IS NULL
ORDER BY 1, 2, d.CodDependente

****EXTRAÇÃO DE USUARIOS****

select distinct u.Nome, u.NomeCompleto, m.Descricao,m.CodModulo from _Usuarios u


left join _Acesso a on a.CodUsuario = u.CodUsuario
left join _ModulosSistema m on m.CodModulo = a.CodModulo
where
a.RestricaoAcesso = 1
and u.nome
in()
***ERRO NO LANÇAMENTO DE COMISSÃO***

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED --Para não bloquear as tabelas

SELECT
sq.CentroCusto AS Companhia
, sq.CodGrupo
, sq.Contrato
, sq.RazaoSocial
, sq.LancFinanc
, sq.DataCompetencia
, sq.ValorLiquido AS [Prêmio líquido]
, sq.Valor AS [Valor Bruto]
, sq.Acertos
, sq.PercentualProLabore AS [% Pró-Labore]
, sq.ProLabore
, sq.Situacao
, sq.Documento
, sq.Sucursal
, sq.CodEvGrade
, sq.CodProdutor
, sq.NomeProdutor
, sq.Remuneracao
, sq.Percentual AS [% Comissão/Agenciamento]
, sq.ValorComissao AS ValorComissaoTotal
, ROUND(CAST(ROUND(sq.PremioAgenciamento,2) * CAST((sq.Percentual)/100 AS MONEY) AS
MONEY),2,1) AS ValorComissaoPago
, sq.ValorComissao - ROUND(CAST(ROUND(sq.PremioAgenciamento,2) *
CAST((sq.Percentual)/100 AS MONEY) AS MONEY),2,1) AS ValorComissaoDevido
FROM
(
SELECT
ua.CentroCusto
, r.CodGrupo
, cc.RazaoSocial
, cc.Contrato
, ct.DataCompetencia
, ct.ValorLiquido
, ct.Valor
, (ct.ODesc * (-1)) AS Acertos
, CASE WHEN c.DescontoD2 LIKE 'PRÓ-LABORE' THEN c.BaseDescD2 ELSE 0 END AS
PercentualProLabore
, ct.ValorProLabore AS ProLabore
, ct.Codigo AS LancFinanc
, CASE WHEN ct.Situacao = 50 THEN 'INTEGRADA' WHEN ct.Situacao = 90 THEN 'PAGA' END
AS Situacao
, ct.Documento
, c.CodSucursal AS Sucursal
, cc.CodEvGrade
, cc.CodProdutor
, cc.NomeProdutor
, cc.Percentual
, cc.ValorComissao
, CASE cc.CodRemunVenda
WHEN 4 THEN '04 - AGENCIAMENTO'
WHEN 12 THEN '12 - CORRETAGEM'
WHEN 18 THEN '18 - CORRETAGEM'
WHEN 3 THEN '3 - PROLABORE A TERCEIROS'
WHEN 13 THEN '3 - PROLABORE A TERCEIROS'
WHEN 48 THEN '48 - AGENCTO S/ NOVAS INCL'
WHEN 5 THEN '05 - COADJUVANTE'
ELSE 'SEM DESCRIÇÃO DE COMISSÃO'
END AS Remuneracao
, cc.ValorPremio
, sq2.ValorPremio AS PremioAgenciamento
FROM dbo.Respons r
INNER JOIN dbo.Contrato c ON r.Codigo = c.CodResponsavel
INNER JOIN dbo.Contas ct ON c.Codigo = ct.Contrato
INNER JOIN dbo.ContasComissao cc ON ct.Codigo = cc.IdContas
INNER JOIN dbo.ContratoComissaoSASD d ON c.Codigo = d.Contrato AND cc.CodProdutor =
d.CodProdutor AND cc.CodRemunVenda = d.CodRemunVenda
INNER JOIN dbo.UnidadesAdm ua ON c.CodUnidade = ua.CodUnidade
CROSS APPLY (SELECT cc2.ValorPremio, cc2.ValorComissao FROM dbo.ContasComissao cc2
WHERE cc2.IdContas = cc.IdContas AND cc2.CodRemunVenda = 48) AS sq2
WHERE cc.IdContas IN (SELECT c2.IdContas
FROM dbo.ContasComissao c2
WHERE c2.DataCompetencia >= '2020-01-01' -->DATA INCIAL INFORMADA PELO USUÁRIO
AND c2.DataCompetencia < '2020-07-31' -->DATA FIM INFORMADA PELO USUÁRIO
AND c2.IdContas IN (SELECT cc.IdContas FROM dbo.ContasComissao cc WHERE cc.IdContas
= c2.IdContas AND NOT cc.CodRemunVenda IN (48) AND NOT cc.ValorPremio =
c2.ValorPremio)
AND c2.CodRemunVenda = 48)
AND ct.TipoRegistro IN (11,12)
) AS sq
ORDER BY sq.LancFinanc

****EXTRAÇÃO CENCONSUD*****

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED --Para não bloquear as tabelas

SELECT d.Contrato
, p.Re AS [Matrícula]
, p.CodLocal AS [Codigo do local ou distrito de trabalho do beneficiário titular]
, cl.DescrLocal AS [Descrição do local]
, p.Depto AS [Setor]
, d.CodPlano AS [Código do Plano]
, d.Inclusao AS [Data de Inclusão no Plano]
, d.Vigencia AS [Início de Vigência]
, d.CpfDep AS [CPF]
, d.Nome AS [Nome do Beneficiário]
, d.Nascimento AS [Data de Nascimento]
, d.Sexo
, d.GrauParente
, p.CepR AS [CEP]
, p.RuaR AS [Logradouro]
, p.BairroR AS [Bairro]
, p.CidadeR AS [Município]
, p.EstadoR AS [UF]
, d.Mae AS [Nome da Mãe]
FROM Depend d
INNER JOIN dbo.Contrato c ON c.Codigo = d.Contrato
INNER JOIN dbo.Paciente p ON p.Codigo = d.CodPaciente
INNER JOIN dbo.Respons r ON r.Codigo = c.CodResponsavel
INNER JOIN dbo.ContratoLocal cl ON cl.Contrato = r.Codigo AND cl.CodLocal =
p.CodLocal
WHERE r.CodGrupo = 999812641
AND d.Exclusao IS NULL
ORDER BY 1, 2, d.CodDependente

****Extração dados Weg*****

select P.Contrato, P.Codigo, P.Nome, d.email, P.Conta, P.Banco, P.Agencia,


P.Codlocal
from Depend as D
inner join paciente as P on p.codigo = D.codpaciente
where d.GrauParente = 'TITULAR'
and D.coddependente in ('254885400','253397400','253400100','253395700',
'253396500','253396700','253397600','253585200','252976000','252978000',
'253836600','252978800','252978900','252979000','252979100','252979200',
'252978300','252980100','253836700','252980200','252980000','252980500',
'252978400','252978500','252978600','252978700','252979700','252979900',
'263658200','263658400','268165200','285539100','296311900','252086000',
'253789200','278231400','252983700','252421300','253305000','252827100',
'252770100','253832400','302264900')
order by nome asc

*******ATUALIZAR MECSAS*******

BEGIN TRY
BEGIN TRANSACTION

DECLARE @pContrato AS INT = 166917 --> INFORMAR O NÚMERO DO CONTRATO

UPDATE g SET g.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Grupo g WITH(NOLOCK) ON r.CodGrupo = g.CodGrupo
WHERE c.Codigo IN (@pContrato)

UPDATE r SET r.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
WHERE c.Codigo IN (@pContrato)

UPDATE dbo.Contrato SET SyncODS = GETDATE() WHERE Codigo IN


(@pContrato)

UPDATE p SET p.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Paciente p WITH(NOLOCK) ON p.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)
UPDATE d SET d.SyncODS = GETDATE()
FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Paciente p WITH(NOLOCK) ON p.Contrato = c.Codigo
LEFT JOIN dbo.Depend d WITH(NOLOCK) ON d.Contrato = p.Contrato
AND d.CodPaciente = p.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE cp SET cp.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoCadplan cp WITH(NOLOCK) ON cp.Contrato =
c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE ccs SET ccs.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoComissaoSAS ccs WITH(NOLOCK) ON
ccs.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE ccsh SET ccsh.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoComissaoSASh ccsh WITH(NOLOCK) ON
ccsh.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE ccsd SET ccsd.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoComissaoSASd ccsd WITH(NOLOCK) ON
ccsd.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE cgp SET cgp.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoGrauParente cgp WITH(NOLOCK) ON
cgp.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE ccp SET ccp.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoCopart ccp WITH(NOLOCK) ON ccp.Contrato =
c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE caf SET caf.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoAcertoFinanc caf WITH(NOLOCK) ON
caf.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE mb SET mb.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Paciente p WITH(NOLOCK) ON p.Contrato = c.Codigo
LEFT JOIN dbo.Depend d WITH(NOLOCK) ON d.Contrato = p.Contrato
AND d.CodPaciente = p.Codigo
LEFT JOIN dbo.MovtosBenef mb WITH(NOLOCK) ON mb.Contrato =
c.Codigo AND d.codDependente = mb.CodBeneficiario
WHERE c.Codigo IN (@pContrato)

UPDATE o SET o.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Paciente p WITH(NOLOCK) ON p.Contrato = c.Codigo
LEFT JOIN dbo.Depend d WITH(NOLOCK) ON d.Contrato = p.Contrato
AND d.CodPaciente = p.Codigo
LEFT JOIN dbo.Orcam o WITH(NOLOCK) ON o.contrato = c.codigo AND
d.CodDependente = o.CodDependente
WHERE c.Codigo IN (@pContrato)

UPDATE a SET a.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Paciente p WITH(NOLOCK) ON p.Contrato = c.Codigo
LEFT JOIN dbo.Depend d WITH(NOLOCK) ON d.Contrato = p.Contrato
AND d.CodPaciente = p.Codigo
LEFT JOIN dbo.Orcam o WITH(NOLOCK) ON o.contrato = c.codigo AND
d.CodDependente = o.CodDependente
LEFT JOIN dbo.Atosclin a WITH(NOLOCK) ON o.Orcamento =
a.Orcamento
WHERE c.Codigo IN (@pContrato)

UPDATE cl SET cl.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.ContratoLocal cl WITH(NOLOCK) ON cl.Contrato =
r.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE ct SET ct.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Contas ct WITH(NOLOCK) ON ct.Contrato = c.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE cfh SET cfh.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Contas ct WITH(NOLOCK) ON ct.Contrato = c.Codigo
LEFT JOIN dbo.ContratoFaturaDetH cfh WITH(NOLOCK) ON ct.Codigo =
cfh.IdContas
WHERE c.Codigo IN (@pContrato)

UPDATE cfdd SET cfdd.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Contas ct WITH(NOLOCK) ON ct.Contrato = c.Codigo
LEFT JOIN dbo.ContratoFaturaDetD cfdd WITH(NOLOCK) ON ct.Codigo =
cfdd.IdContas
WHERE c.Codigo IN (@pContrato)

UPDATE cf SET cf.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Contas ct WITH(NOLOCK) ON ct.Contrato = c.Codigo
LEFT JOIN dbo.ContratoFatura cf WITH(NOLOCK) ON cf.IdContas =
ct.Codigo
WHERE c.Codigo IN (@pContrato)

UPDATE cc SET cc.SyncODS = GETDATE()


FROM dbo.Respons r WITH(NOLOCK)
INNER JOIN dbo.Contrato c WITH(NOLOCK) ON r.Codigo =
c.CodResponsavel
LEFT JOIN dbo.Contas ct WITH(NOLOCK) ON ct.Contrato = c.Codigo
LEFT JOIN dbo.ContasComissao cc WITH(NOLOCK) ON cc.IdContas =
ct.Codigo
WHERE c.Codigo IN (@pContrato)

COMMIT TRANSACTION
RETURN

END TRY

BEGIN CATCH
ROLLBACK
SELECT ERROR_MESSAGE()

RETURN
END CATCH

******Cabeçalho referente a extração dos Eventos Subsequentes******

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

DECLARE @pDataIni AS SMALLDATETIME = '2020-07-01' --> Informar data inicial


DECLARE @pDataFim AS SMALLDATETIME = '2020-07-31' --> Informar data final

--HEADER
SELECT 'Código Seguradora;'
+ 'Nome Seguradora;'
+ 'CNPJ Seguradora;'
+ 'Tipo de Pessoa;'
+ 'Código do Prestador;'
+ 'NRO SINISTRO – DOCTO;'
+ 'NRO SINISTRO – COMPLEMENTO;'
+ 'NRO SINISTRO – SEQUENCIA PAGAMENTO;'
+ 'NRO SINISTRO – ANEXO;'
+ '(No column name);'
+ 'Valor do Sinistro;'
+ 'Valor da Glosa;'
+ 'Valor de co_participação;'
+ 'Valor Pago;'
+ 'Voucher;'
+ 'Data Aviso;'
+ 'Data Pagamento;'
+ 'Titular no Plano;'
+ 'Beneficiário Referente a Cobrança;'
AS HEADER

--POR GTO/Orçamento ou data pagamento


SELECT [Código Seguradora]
, [Nome Seguradora]
, [CNPJ Seguradora]
, [Tipo de Pessoa]
, [Código do Prestador]
, [NRO SINISTRO – DOCTO]
, [NRO SINISTRO – COMPLEMENTO]
, [NRO SINISTRO – SEQUENCIA PAGAMENTO]
, [NRO SINISTRO – ANEXO]
, RIGHT('00' + CONVERT(VARCHAR,RTRIM(ROW_NUMBER() OVER (PARTITION BY
SQ.Orcamento ORDER BY SQ.Orcamento))),2) + ';'
, [Valor do Sinistro]
, [Valor da Glosa]
, [Valor de co_participação]
, [Valor Pago]
, [Voucher]
, [Data Aviso]
, [Data Pagamento]
, [Titular no Plano]
, [Beneficiário Referente a Cobrança]
FROM (
--Credenciado
SELECT DISTINCT RIGHT('0000000' + CONVERT(VARCHAR,u.CentroCusto),7) + ';' AS
[Código Seguradora],
CAST(u.Identificacao AS CHAR(40)) + ';' AS [Nome Seguradora],
RIGHT('000000000000000' + CONVERT(VARCHAR,RTRIM(LTRIM(u.Cnpj))),15) +
';' AS [CNPJ Seguradora],
CASE WHEN c.FlagPf = 1 THEN 'PF' ELSE 'PJ' END + ';' AS [Tipo de
Pessoa],
RIGHT('000000000000' + CONVERT(VARCHAR,RTRIM(LTRIM(a.CodDentista))),12)
+ ';' AS [Código do Prestador],
RIGHT('0000000000' + CONVERT(VARCHAR,RTRIM(LTRIM(a.Orcamento))),10) +
';' AS [NRO SINISTRO – DOCTO],
' ' + ';' AS [NRO SINISTRO – COMPLEMENTO],
' ' + ';' AS [NRO SINISTRO – SEQUENCIA PAGAMENTO],
' ' + ';' AS [NRO SINISTRO – ANEXO],
a.Orcamento,
a.Codigo,
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN a.Valor < 0
THEN (a.valor*(-1)) ELSE a.Valor END,'.','')),12) + CASE WHEN a.Valor < 0 THEN '-'
ELSE '+' END + ';' AS [Valor do Sinistro],
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN
a.FlagPagamento = 0 THEN CASE WHEN a.Valor < 0 THEN (a.valor*(-1)) ELSE a.Valor END
ELSE 0 END,'.','')),12) + CASE WHEN CASE WHEN a.FlagPagamento = 0 THEN a.Valor ELSE
0 END < 0 THEN '-' ELSE '+' END + ';' AS [Valor da Glosa],
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN
a.ValorPaciente < 0 THEN (a.ValorPaciente*(-1)) ELSE a.ValorPaciente
END,'.','')),12) + CASE WHEN a.ValorPaciente < 0 THEN '-' ELSE '+' END + ';' AS
[Valor de co_participação],
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN
a.FlagPagamento = 1 THEN CASE WHEN a.Valor < 0 THEN (a.valor*(-1)) ELSE a.Valor END
ELSE 0 END,'.','')),12) + CASE WHEN CASE WHEN a.FlagPagamento = 1 THEN a.Valor ELSE
0 END < 0 THEN '-' ELSE '+' END + ';' AS [Valor Pago],
RIGHT('000000000000000' +
CONVERT(VARCHAR,REPLACE(ct.NossoNumero,'.','')),15) + ';' AS [Voucher],
CASE WHEN ct.Data IS NULL THEN ' ' ELSE
REPLACE(CONVERT(char(10), ct.Data,104),'.','') + ';' END AS [Data Pagamento],
(SELECT TOP 1 CAST(LEFT(RTRIM(LTRIM(dAux.Nome)),40) AS CHAR(40)) + ';'
FROM Depend dAux WHERE dAux.GrauParente = 'TITULAR' AND dAux.CodPaciente =
d.CodPaciente AND dAux.Contrato = d.Contrato) AS [Titular no Plano],
CAST(LEFT(RTRIM(LTRIM(d.Nome)),40) AS CHAR(40)) + ';' AS [Beneficiário
Referente a Cobrança],
CASE WHEN a.DataAviso IS NULL THEN ' ' ELSE
REPLACE(CONVERT(CHAR(10), a.DataAviso,104),'.','') + ';' END AS [Data Aviso]
FROM ContasCredenDet ccd, Contas ct, unidadesAdm u, Depend d, credenciado c,
atosclin a
WHERE c.CodCreden = a.CodDentista
AND a.Orcamento = ccd.Orcamento
AND a.DataPagamento = ccd.DataRef
AND d.CodDependente = ccd.CodBeneficiario
AND ccd.CodUnidade = u.CodUnidade
AND ccd.IDContas = ct.codigo
AND a.FlagPgtoEfetuado =1
AND (a.DataPagamento >= @pDataIni and a.DataPagamento < DATEADD(DAY, 1,
@pDataFim)) -- dias úteis solicitados
--AND ccd.orcamento in (917216,1096486,1176944)

UNION ALL

--Reembolso
SELECT DISTINCT RIGHT('0000000' + CONVERT(VARCHAR,u.CentroCusto),7) + ';' AS
[Código Seguradora],
CAST(u.Identificacao AS CHAR(40)) + ';' AS [Nome Seguradora],
RIGHT('000000000000000' + CONVERT(VARCHAR,RTRIM(LTRIM(u.Cnpj))),15) +
';' AS [CNPJ Seguradora],
CASE WHEN LEN(RTRIM(LTRIM(c.CpfCnpj))) <= 11 THEN 'PF' ELSE 'PJ' END +
';' AS [Tipo de Pessoa],
RIGHT('000000000000' + CONVERT(VARCHAR,RTRIM(LTRIM(a.CodDentista))),12)
+ ';' AS [Código do Prestador],
RIGHT('0000000000' + CONVERT(VARCHAR,RTRIM(LTRIM(ccd.Orcamento))),10) +
';' AS [NRO SINISTRO – DOCTO],
' ' + ';' AS [NRO SINISTRO – COMPLEMENTO],
' ' + ';' AS [NRO SINISTRO – SEQUENCIA PAGAMENTO],
' ' + ';' AS [NRO SINISTRO – ANEXO],
a.Orcamento,
a.Codigo,
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN a.Valor < 0
THEN (a.valor*(-1)) ELSE a.Valor END,'.','')),12) + CASE WHEN ccd.Valor < 0 THEN
'-' ELSE '+' END + ';' AS [Valor do Sinistro],
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN
a.FlagPagamento = 0 THEN CASE WHEN a.Valor < 0 THEN (a.valor*(-1)) ELSE a.Valor END
ELSE 0 END,'.','')),12) + CASE WHEN CASE WHEN a.FlagPagamento = 0 THEN a.Valor ELSE
0 END < 0 THEN '-' ELSE '+' END + ';' AS [Valor da Glosa],
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN
a.ValorPaciente < 0 THEN (a.ValorPaciente*(-1)) ELSE a.ValorPaciente
END,'.','')),12) + CASE WHEN a.ValorPaciente < 0 THEN '-' ELSE '+' END + ';' AS
[Valor de co_participação],
RIGHT('000000000000' + CONVERT(VARCHAR,REPLACE(CASE WHEN
a.FlagPagamento = 1 THEN CASE WHEN a.Valor < 0 THEN (a.valor*(-1)) ELSE a.Valor END
ELSE 0 END,'.','')),12) + CASE WHEN CASE WHEN a.FlagPagamento = 1 THEN a.Valor ELSE
0 END < 0 THEN '-' ELSE '+' END + ';' AS [Valor Pago],
RIGHT('000000000000000' +
CONVERT(VARCHAR,REPLACE(ct.NossoNumero,'.','')),15) + ';' AS [Voucher],
CASE WHEN ccd.DataRef IS NULL THEN ' ' ELSE
REPLACE(CONVERT(char(10), ccd.DataRef,104),'.','') + ';' END AS [Data Pagamento],
(SELECT TOP 1 CAST(LEFT(RTRIM(LTRIM(dAux.Nome)),40) AS CHAR(40)) + ';'
FROM Depend dAux WHERE dAux.GrauParente = 'TITULAR' AND dAux.CodPaciente =
d.CodPaciente AND dAux.Contrato = d.Contrato) AS [Titular no Plano],
CAST(LEFT(RTRIM(LTRIM(d.Nome)),40) AS CHAR(40)) + ';' AS [Beneficiário
Referente a Cobrança],
CASE WHEN ccd.DataAviso IS NULL THEN ' ' ELSE
REPLACE(CONVERT(CHAR(10), ccd.DataAviso,104),'.','') + ';' END AS [Data Aviso]
FROM ContasReembDet ccd, Contas ct, unidadesAdm u, Depend d, CredenReembolso
c, atosclin a
WHERE c.CpfCnpj = a.CpfCnpj
AND a.Orcamento = ccd.Orcamento
AND a.DataPagamento = ccd.DataRef
AND d.CodDependente = ccd.CodBeneficiario
AND ccd.CodUnidade = u.CodUnidade
AND ccd.IDContas = ct.codigo
AND a.FlagPgtoEfetuado =1
AND (a.DataPagamento >= @pDataIni and a.DataPagamento < DATEADD(DAY, 1,
@pDataFim)) -- dias úteis solicitados
--AND ccd.orcamento in (917216,1096486,1176944)
) AS sq
ORDER BY 15 --VOUCHER

********Extração cadasto de ambiente*********

--Contrato 233544 Ativos


select
d.Contrato
,c.CodProduto
,r.RazaoSocial
,d.PisPasep
,d.Re
,(select dd.Nome from depend dd where dd.CodPaciente = d.CodPaciente and
dd.GrauParente = 'TITULAR') NomeTitular
,d.Nome Dependente
,d.Nascimento
,d.Sexo
,d.GrauParente
,d.CodPlano
,cp.Descricao
,p.VlrIndiv
,p.DataLancamento
,pa.Depto
,d.RgDep
,d.CpfDep
,c.CodUnidade
,adm.CentroCusto
from Depend d
inner join contrato c on c.codigo = d.Contrato
inner join Respons r on r.Codigo = c.CodResponsavel
inner join ContratoCadplan p on p.Contrato = c.Codigo and p.CodCadplan = d.CodPlano
inner join Cadplan cp on cp.Codigo = p.CodCadplan
inner join paciente pa on pa.Codigo = d.CodPaciente
inner join UnidadesAdm adm on adm.CodUnidade = c.CodUnidade
where d.contrato = 233544 and p.FimVigencia is null and d.Exclusao is null
order by d.CodDependente

--Contrato 233556 inativos


select
d.Contrato
,c.CodProduto
,r.RazaoSocial
,d.PisPasep
,d.Re
,(select dd.Nome from depend dd where dd.CodPaciente = d.CodPaciente and
dd.GrauParente = 'TITULAR') NomeTitular
,d.Nome Dependente
,d.Nascimento
,d.Sexo
,d.GrauParente
,d.CodPlano
,cp.Descricao
,p.VlrIndiv
,p.DataLancamento
,pa.Depto
,d.RgDep
,d.CpfDep
,c.CodUnidade
,adm.CentroCusto
from Depend d
inner join contrato c on c.codigo = d.Contrato
inner join Respons r on r.Codigo = c.CodResponsavel
inner join ContratoCadplan p on p.Contrato = c.Codigo and p.CodCadplan = d.CodPlano
inner join Cadplan cp on cp.Codigo = p.CodCadplan
inner join paciente pa on pa.Codigo = d.CodPaciente
inner join UnidadesAdm adm on adm.CodUnidade = c.CodUnidade
where d.contrato = 233556 and p.FimVigencia is null and d.Exclusao is not null
order by d.CodDependente

Você também pode gostar