Árvore de páginas

Visão Geral

Descrição dos Campos

AliasDescriçãoTamanhoTipoFormatoObrigatório
TabelaProcedimentoTabelaProcedimento0Caractere

ProcedimentoProcedimento0Caractere

DenteRegiaoDenteRegiao0Caractere

FaceFace0Caractere

QuantidadePermitidaQuantidadePermitida0Caractere

UnidadeQuantidadeUnidadeQuantidade0Caractere

VldQtdPrestadorVldQtdPrestador0Caractere

VldQtdEspecVldQtdEspec0Caractere

VldQtdCidVldQtdCid0Caractere

PeriodicidadePeriodicidade0Caractere

UnidadePeriodicidadeUnidadePeriodicidade0Caractere

VldPerPrestadorVldPerPrestador0Caractere

VldPerEspecVldPerEspec0Caractere

VldPerCidVldPerCid0Caractere

IdadeMinimaIdadeMinima0Caractere

IdadeMaximaIdadeMaxima0Caractere

Exemplo de Utilização

View para clientes com o sistema de gestão ERP Protheus - Módulo Planos de Saúde.


SELECT 
    ISNULL(BTU.BTU_CODTABBTQ.BTQ_CODTABAS TabelaProcedimento,
    ISNULL(BTU.BTU_CDTERMBTQ.BTQ_CDTERMAS Procedimento,
    BYL_CODIGO DenteRegiao
    SUBSTRING(BYL_FACEnumbers.n1Face,
    CAST(B05.B05_QTD AS INT)        QuantidadePermitida,
    B05.B05_UNCA                    UnidadeQuantidade,
    B05.B05_QTDMED                  VldQtdPrestador,
    B05.B05_QTDESP                  VldQtdEspec,
    B05.B05_QTDPAT                  VldQtdCid,
    CAST(B05.B05_PERIOD AS INT)     Periodicidade,
    B05.B05_UNPERI                  UnidadePeriodicidade,
    B05.B05_PTRMED                  VldPerPrestador,
    B05.B05_PTRESP                  VldPerEspec,
    B05.B05_PTRPAT                  VldPerCid,
    CAST(B05.B05_IDAMIN AS INT)     IdadeMinima,
    CAST(B05.B05_IDAMAX AS INT)     IdadeMaxima,
    B05.B05_AUTORI  ModalidadeAutorizacao
FROM 
    (SELECT 1 n UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 ) numbers 
    INNER JOIN BYL010 BYL ON LEN(BYL.BYL_FACE)>numbers.n-1
    INNER JOIN B05010 B05 ON BYL.BYL_CODPAD = B05.B05_CODPAD AND BYL.BYL_CODPSA = B05.B05_CODPSA
    LEFT JOIN BTU010 BTU ON (BTU.BTU_VLRBUS = BYL.BYL_CODPSA AND BTU.D_E_L_E_T_ = ' ')
    LEFT JOIN BTQ010 BTQ ON (BTQ.BTQ_CDTERM = BYL.BYL_CODPSA AND BTQ.D_E_L_E_T_ = ' ')
WHERE 
        BYL_FACE <> ' ' 
    AND SUBSTRING(BYL_FACEnumbers.n1) <> ' '
    AND (BTQ_CODTAB IS NULL OR BTQ_CODTAB IN ('18''19''20''22''90''98'))
    AND (BTU_CODTAB IS NULL OR BTU_CODTAB IN ('18''19''20''22''90''98'))
    AND ((BTU_CODTAB IS NOT NULL AND BTU_CDTERM IS NOT NULLOR (BTQ_CODTAB IS NOT NULL AND BTQ_CDTERM IS NOT NULL))
    AND BYL.D_E_L_E_T_  = ' '
    AND B05.D_E_L_E_T_  = ' '
    AND (
            BYL.S_T_A_M_P_ > (DATEADD(HOUR, -1GETUTCDATE()))
        OR  B05.S_T_A_M_P_ > (DATEADD(HOUR, -1GETUTCDATE()))
    )
GROUP BY 
    ISNULL(BTU.BTU_CODTABBTQ.BTQ_CODTAB),
    ISNULL(BTU.BTU_CDTERMBTQ.BTQ_CDTERM),
    BYL_CODIGO
    SUBSTRING(BYL_FACEnumbers.n1),
    CAST(B05.B05_QTD AS INT),
    B05.B05_UNCA                    ,
    B05.B05_QTDMED                  ,
    B05.B05_QTDESP                  ,
    B05.B05_QTDPAT                  ,
    CAST(B05.B05_PERIOD AS INT)     ,
    B05.B05_UNPERI                  ,
    B05.B05_PTRMED                  ,
    B05.B05_PTRESP                  ,
    B05.B05_PTRPAT                  ,
    CAST(B05.B05_IDAMIN AS INT)     ,
    CAST(B05.B05_IDAMAX AS INT)     ,
    B05.B05_AUTORI  
        
UNION ALL


SELECT 
    ISNULL(BTU.BTU_CODTABBTQ.BTQ_CODTABAS TabelaProcedimento,
    ISNULL(BTU.BTU_CDTERMBTQ.BTQ_CDTERMAS Procedimento,
    B05_CODIGO DenteRegiao
    ' ' Face,
    CAST(B05.B05_QTD AS INT)        QuantidadePermitida,
    B05.B05_UNCA                    UnidadeQuantidade,
    B05.B05_QTDMED                  VldQtdPrestador,
    B05.B05_QTDESP                  VldQtdEspec,
    B05.B05_QTDPAT                  VldQtdCid,
    CAST(B05.B05_PERIOD AS INT)     Periodicidade,
    B05.B05_UNPERI                  UnidadePeriodicidade,
    B05.B05_PTRMED                  VldPerPrestador,
    B05.B05_PTRESP                  VldPerEspec,
    B05.B05_PTRPAT                  VldPerCid,
    CAST(B05.B05_IDAMIN AS INT)     IdadeMinima,
    CAST(B05.B05_IDAMAX AS INT)     IdadeMaxima,
    B05.B05_AUTORI  ModalidadeAutorizacao
FROM B05010 B05
LEFT JOIN BTU010 BTU ON (BTU.BTU_VLRBUS = B05.B05_CODPSA AND BTU.D_E_L_E_T_ = ' ')
LEFT JOIN BTQ010 BTQ ON (BTQ.BTQ_CDTERM = B05.B05_CODPSA AND BTQ.D_E_L_E_T_ = ' ')
WHERE 
        B05_CODPSA NOT IN (SELECT BYL_CODPSA FROM BYL010)
    AND (BTQ_CODTAB IS NULL OR BTQ_CODTAB IN ('18''19''20''22''90''98'))
    AND (BTU_CODTAB IS NULL OR BTU_CODTAB IN ('18''19''20''22''90''98'))
    AND ((BTU_CODTAB IS NOT NULL AND BTU_CDTERM IS NOT NULLOR (BTQ_CODTAB IS NOT NULL AND BTQ_CDTERM IS NOT NULL))
    AND B05.D_E_L_E_T_  = ' '
    AND B05.S_T_A_M_P_ > (DATEADD(HOUR, -1GETUTCDATE()))
GROUP BY
    ISNULL(BTU.BTU_CODTABBTQ.BTQ_CODTAB),
    ISNULL(BTU.BTU_CDTERMBTQ.BTQ_CDTERM),
    B05_CODIGO
    CAST(B05.B05_QTD AS INT),
    B05.B05_UNCA,
    B05.B05_QTDMED,
    B05.B05_QTDESP,
    B05.B05_QTDPAT,
    CAST(B05.B05_PERIOD AS INT),
    B05.B05_UNPERI,
    B05.B05_PTRMED,
    B05.B05_PTRESP,
    B05.B05_PTRPAT,
    CAST(B05.B05_IDAMIN AS INT),
    CAST(B05.B05_IDAMAX AS INT),
    B05.B05_AUTORI  

Observação: Para a view de carga inicial, basta remover o filtro de STAMP.


  • Sem rótulos