Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

01. VISÃO GERAL

A rotina visa a exportação das notas de fatura seguindo o padrão Unimed PTU A500.

A regra de quebra de 9.999 guias é feita no lote de intercambio.

02. SEQUENCIAL PTU

Na versão 1.0 do XML foi adicionado o conceito de sequencial e id único do procedimento seguindo o padrão tiss, para isto foram criados os campos BX6_SEQPTU, B43_SEQPTU, BX6_IDUNIC, B43_IDUNIC.

...

Portanto, a tag 'idUnico' sempre terá '0000' fixo no seu final quando não for um pacote.

03. PACOTES

A partir da versão 11.3 do PTU Batch se tornou obrigatório o envio do procedimento principal do pacote, contendo todos os valores e o envio aberto apenas de procedimentos de honorário e opme com valor zerado.

...

Todos os dados de OPME devem ser vinculados ao BD6 do pacote.


04. DE/PARA PROCEDIMENTOS

No PTU XML serão trafegados procedimentos padrão TISS, recomendamos o uso de parametrização do padrão tiss(CODTAB 00,18,19,20,22,90,98), mas caso seu ambiente ainda não esteja parametrizado utilizando o padrão de tabelas e codificações da tiss deverá ser feito o de-para de todos os procedimentos.

O de para deve ser feito na tabela BTU, utilizando o BTU_ALIAS = 'BR8' /  BTU_VLRSIS = BR8_FILIAL+BR8_CODPAD+BR8_CODPRO / BTU_CODTAB = 00,18,19,20,22,90 ou 98 / BTU_CDTERM = Um procedimento válido disponibilizado nas terminologias da tiss.


05. PROTHEUS x TAGs

Cabeçalho

TagRegra Protheus

nrVerTra_PTU

Pergunte de exportação "Versão Atual?"

cd_Uni_Destino

BTO_OPEORI

cd_Uni_Origem

BTO_CODOPE

dt_Geracao

Data do servidor

nr_Competencia

BTO_ANOINI + BTO_MESINI

tp_Cobranca

BTO_TPMOV

...

TagRegra Protheus
documento2/nr_Documento

BTO_PREFIX + BTO_NUMTIT

documento2/dt_VencimentoDoc

E1_VENCTO

documento2/dt_EmissaoDoc

E1_EMISSAO

documento2/vl_TotalDoc

BTO_VLRTAX

documento2/doc_Fiscal

BTO_PREFIX + BTO_NUMTIT


Beneficiário

TagRegra Protheus

cd_Unimed

BD6_MATANT

id_Benef

BD6_MATANT

nm_Benef

BD6_NOMUSR

id_RN

BD5/BE4IDRN

tp_Paciente

BD5_TIPPAC/ '1' Para guias de internação

dadosSolicitante

TagRegra Protheus

cpf_cnpj

1º BAU_CPFCGC(Chave BEA)

2º BB0_CGC

nome

1º BEA_NOMRDA

2º BB0_NOME

nm_Profissional

BB0_NOME

sg_Conselho

BB0_CODSIG

nr_Conselho

BB0_NUMCR

UF

BAQ_CBOS

De-para Tabela 59 - BB0_ESTADO

CBO

BAQ_CBOS(Chave 1º BD6_ESPSOL , 2º BD5/BE4_CODESP)

contratadoExecutante e dadosExecutante

TagRegra Protheus

nome

BD5/BE4_NOMRDA

CPF_CNPJ

BAU_CPFCGC

CNES

1º BB8_CNES 

2º BAU_CNES

3º "9999999"

cd_MunicipioCont

BB8_CODMUN

tp_RedeMin

BAU_TIPRED

tp_Prestador

BAG_CODPT(Utilizando BAU_TIPPRE para chegar no registro)

id_RecProprio

BAU_RECPRO

profissionalExecutante

TagRegra Protheus

nome

1º BB0_NOME(Chave BD5/BE4_REGEXE)

2º BAU_NOME(Chave BD5/BE4_CODRDA)

sg_Conselho

1º BB0_CODSIG(Chave BD5/BE4_REGEXE)

2º BAU_SIGLCR(Chave BD5/BE4_CODRDA)

nr_Conselho

1º BB0_NUMCR(Chave BD5/BE4_REGEXE)

2º BAU_CONREG(Chave BD5/BE4_CODRDA)

UF

1º BB0_ESTADO(Chave BD5/BE4_REGEXE)

2º BAU_ESTCR(Chave BD5/BE4_CODRDA)

CBO

BAQ_CBOS(Chave 1ºBD6_ESPEXE, 2º BD5/BE4_CODESP)

dadosGuia

TagRegra ProtheusObservação

nr_Ver_TISS

BD5/BE4_TISVER


tp_Consulta

BD5/BE4_TIPCON(Se for igual a 5 mudamos para 2)

Apenas para tipo de guia Consulta

nr_LotePrestador

BD5/BE4_CODPEG


dt_Protocolo

BD5/BE4_DTDIGI


dt_Conhecimento

BD5/BE4_DTDIGI

nr_GuiaTissPrestador

1º BD5/BE4_NUMIMP

2º BD5/BE4_CODLDP + BD5/BE4_CODPEG + BD5/BE4_NUMERO


nr_GuiaTissOperadora

BD5/BE4_CODLDP + BD5/BE4_CODPEG + BD5/BE4_NUMERO

nr_GuiaTissPrincipal

BD5/BE4_GUIPRICaso seja maior que 20 caracteres, removemos o código da operadora que são os 4 primeiros caracteres.

tp_IndAcidente

1º BD5/BE4_INDACI

2º "9"


dt_Atendimento

BD5/BE4_DATPRO + BD5/BE4_HORPRO

id_Liminar

BD5/BE4_GUIJUR

id_Continuado

Existência de um registro válido na tabela B5F.

id_Avisado

Existência da guia na tabela B5S

cd_Excecao

1º Se a tag "nr_Autorizacao" estiver preenchida e for uma internação "C"

2º Senão "L"

3º Caso a tag esteja vazia "0"


id_GlosaTotal

"N"

id_GuiaPrincipal

Se a tag "nr_GuiaTissPrincipal" estiver vazia envia "S".Somente para guia SADT

complemento

TagRegra Protheus

tp_RegCPL

"1" (Preenchido caso o registro abaixo seja diferente de vazio)

nm_DescComplemento

BD5/BE4_INDCLI + BD5/BE4_INDCL2

tp_RegCPL

"2" (Preenchido caso o registro abaixo seja diferente de vazio)

nm_DescComplemento

BZC_OBSNO1 + BZC_OBSNO2 (Chave: 1º CODOPE+CODLDP+CODPEG+NUMERO, 2º BD5/BE4_GUIINT)

tp_RegCPL

"3" (Preenchido caso o registro abaixo seja diferente de vazio)

nm_DescComplemento

BZC_JUSTE1+ BZC_JUSTE2 + BZC_JUSTE3 + BZC_JUSTE4 (Chave: 1º CODOPE+CODLDP+CODPEG+NUMERO, 2º BD5/BE4_GUIINT)

tp_RegCPL

"4" (Preenchido caso o registro abaixo seja diferente de vazio)

nm_DescComplemento

BZC_ESMAT1+ BZC_ESMAT2 + BZC_ESMAT3 + BZC_ESMAT4 (Chave: 1º CODOPE+CODLDP+CODPEG+NUMERO, 2º BD5/BE4_GUIINT)


guiaSADT

TagRegra Protheus

tp_Atendimento

1º BD5_TIPATE

2º '05'

tp_IndAcidente

1º BD5_INDACI

2º '9'

tp_Consulta

BD5_TIPCON (Se for '5' mudamos para '2')

caraterAtendimento

De-para Tabela 23 - BD5_TIPADM 


guiaInternacao

TagRegra Protheus

tp_Acomodacao

BI4_CODEDI

ft_Multiplicador_AMB

"1.0"

tp_Internacao

BE4_GRPINT

rg_Internacao

BE4_REGINT

caraterAtendimento

De-para Tabela 23 - BE4_TIPADM 

tp_Faturamento

BE4_TIPFAT

dt_IniFaturamento

Datas:

1º BE4_DTINIF (Solicitação de internação)

2º BE4_DTINIF (Resumo de Internação)

3º BE4_DATPRO (Solicitação de Internação)


Horas:

1º BE4_HRINIF (Solicitação de internação)

2º BE4_HRINIF (Resumo de Internação)

3º BE4_HORPRO (Solicitação de Internação)

dt_FimFaturamento

Datas:

1ºBE4_DTFIMF (Solicitação de internação)

2º BE4_DTFIMF (Resumo de Internação)

3º BE4_DTALTA (Solicitação de Internação)

4º BE4_DTDIGI (Resumo de Internação)


Horas:

1ºBE4_HRFIMF (Solicitação de internação)

2º BE4_HRFIMF (Resumo de Internação)

3º BE4_HRALTA (Solicitação de Internação)

declaracao_Nascido

BE4_NRDCOB(Caso exista mais de 1 é feita a separação com virgula(,) no registro e a rotina quebra automaticamente.

CID_Obito

BE4_CIDOBT

declaracao_Obito

BE4_NRDCOB

indicadorDO_RN

BE4_IDRN

tp_IndAcidente

BE4_INDACI

mv_Encerramento

BE4_TIPALT

CID

BE4_CID

nm_MedicoAuditor

BE4_NMAUDI

nr_CrmAuditor

BE4_RMAUDI

cd_UFCRM

De-para Tabela 59 - BE4_UMAUDI

nm_EnfAuditor

BE4_NEAUDI

nr_CorenAuditor

BE4_REAUDI

cd_UFCoren

De-para Tabela 59 - BE4_UEAUDI


guiaHonorarios

TagRegra Protheus

CNPJHospital

BAU_CPFCGC ( Chave para solicitação de internação BE4_GUIINT )

nm_Hospital

BE4_NOMRDA ( Chave para solicitação de internação BE4_GUIINT )

CNES

BB8_CNES ( Chave para solicitação de internação BE4_GUIINT )

dt_IniFaturamento

Datas:

1º BE4_DTINIF (Solicitação de internação)

2º BE4_DTINIF (Resumo de Internação)

3º BE4_DATPRO (Solicitação de Internação)


Horas:

1º BE4_HRINIF (Solicitação de internação)

2º BE4_HRINIF (Resumo de Internação)

3º BE4_HORPRO (Solicitação de Internação)

dt_FimFaturamento

Datas:

1ºBE4_DTFIMF (Solicitação de internação)

2º BE4_DTFIMF (Resumo de Internação)

3º BE4_DTALTA (Solicitação de Internação)

4º BE4_DTDIGI (Resumo de Internação)


Horas:

1ºBE4_HRFIMF (Solicitação de internação)

2º BE4_HRFIMF (Resumo de Internação)

3º BE4_HRALTA (Solicitação de Internação)


dadosOPME

TagRegra Protheus

CNPJ_Fornecedor


1º BX6_CNPJFO

2º A2_CGC (Chave BD6_NFE → SF1_FORNECE)

3º BD6_CPFRDA

nm_FornecedorMaterial

1º BX6_NOMFOR

2º A2_NOME (Chave BD6_NFE → SF1_FORNECE)

3º BD5/BE4_NOMRDA

nr_NotaFiscalFornecedor

1º BX6_NNFFOR

2º F1_DOC(Chave BD6_NFE )

det_RegistroAnvisa

1º BX6_DREANV

2º BA8_DETANV

nr_RegistroAnvisa

1º BX6_REGANV

2º BA8_RGANVI

cd_ReferenciaMat_Fab

BD6_REFFED


procedimentos

TagRegra Protheus

seq_item

BX6_SEQPTU

id_itemUnico

BX6_IDUNIC

tp_Tabela

De-para BTU_CODTAB, Chave: BD6_CODPAD+BD6_CODPRO

Obs: Em caso de itens de pacote, é feito o mesmo processo utilizando B43_CODPAD+B43_CODPRO

cd_Servico

1º BR8_CODEDI

2º De-para BTU_CDTERM, Chave: BD6_CODPAD+BD6_CODPRO

Obs: Em caso de itens de pacote, é feito o mesmo processo utilizando B43_CODPAD+B43_CODPRO

ds_Servico

1º BD6_DESPRO

2º Se for item de pacote B43_DESPRO

procedimentosExecutados

TagRegra ProtheusObservação

dt_Execucao

BD6_DATPRO


hr_Inicial

BD6_HORPRO


hr_Final

BD6_HORFIM


via_Acesso

1º BGR_CODEDI

2º BGR_CODVIA


tc_Utilizada

Se BD6_TECUTI = 'C' envia '1'

Se BD6_TECUTI = 'V' envia '2'

Se BD6_TECUTI = 'R' envia '3'

Se BD6_TECUTI não for C,V e R' envia o próprio conteudo

Somente se BD6_PROCCI = '1'

id_Acrescimo

Se BD6_PERHES for maior que 1 envia 'S'.


vl_ServCobrado

BD7_VLRBPR

BD7_CODUNM diferente ('COP','COR','FIL','VMT','VMD','REA')

vl_FilmeCobrado

BD7_VLRBPR

BD7_CODUNM igual 'FIL' 

vl_CO_Cobrado

BD7_VLRBPR

BD7_CODUNM igual ('COP','COR','VMT','VMD','REA')

tx_AdmServico

BD7_VLRTAD

BD7_CODUNM diferente ('COP','COR','FIL','VMT','VMD','REA')

tx_AdmFilme

BD7_VLRTAD

BD7_CODUNM igual 'FIL' 

tx_AdmCO

BD7_VLRTAD

BD7_CODUNM igual ('COP','COR','VMT','VMD','REA')

un_Medida

1º BX6_CODUNM

2º BA8_UNMEDI


ft_MultiplicadorServico

BD6_PERHES

id_AvisadoItem

Existência na tabela B6S

id_Pacote

Existência na tabela B43

cd_Pacote

BD6_CODPRO dependendo da existência na tabela B43

cd_PorteAnestesico

Se BD4_PORMED= '3A' envia '1'

Se BD4_PORMED= '3C' envia '2'

Se BD4_PORMED= '4C' envia '3'

Se BD4_PORMED= '6B' envia '4'

Se BD4_PORMED= '7C' envia '2'

Se BD4_PORMED= '9B' envia '6'

Se BD4_PORMED= '10C' envia '7'

Se BD4_PORMED= '12A' envia '8'

Senão BKF_CODEDI

Se o procedimento tiver PA na composição.

cd_Ato

Se BAU_TIPPRE = "MED","ANE" envia "1"


06. PONTOS DE ENTRADA

Nome:

PLSR506

Descrição:

Este Ponto de Entrada permite adicionar dados de NFE ao PTU para exportação das tags nr_NotaFiscalDoc e link_NFeDoc.

Localização:

Exportação PTU A500

Programa Fonte:

PLSUA500X

Função:

processa

Parâmetros:

cTipo - Carácter - Indica o tipo de documento que está chamando o ponto. Caso seja "1" é para o bloco documento1 caso seja "2" é o bloco documento2. Além deste parametro as tabelas BTO e SE1 estão posicionadas.

Retorno:

aRet

aRet[1] - Dado da tag nr_NotaFiscalDoc.

aRet[2] - Dado da tag link_NFeDoc.

Exemplo:

user function PLSR506()
local aParam:= paramixb[1]
local aRet := {'',''}

ZAA->(dbsetorder(1))
if ZAA->(msSeek(xfilial('ZAA')+SE1->E1_NUM))
   aRet[1] := ZAA->ZAA_NUM

   aRet[2] := ZAA->ZAA_URL

endif
 
return aRet




07. LOG DE ERROS

Foi implementado na rotina um sistema de validação do XML gerado com o schema disponibilizado pela Unimed do Brasil, sendo assim garantimos que o XML gerado está dentro do minimo esperado pelo padrão.

...

  • "is not a valid value of the atomic": Neste caso a tag possui a limitação de somente números e tamanho 10, mas estão enviando uma string no campo causando erro.



08. MENU

  • No Configurador (SIGACFG), acesse Ambientes/Cadastro/Menu (CFGX013). Informe a nova opção de menu do SIGAPLS, conforme instruções a seguir:

Menu

Miscelânea

Submenu

Unimed

SubmenuExportação

Nome da Rotina

PTU A500

Programa

PLSUA500X

Módulo

Plano de Saúde


09. CAMPOS

  • Campos novos nas tabelas

SX3 - Informações dos Campos
CampoDescrição
CampoBX6_SEQPTU
TipoCaracter
Tamanho4
Decimal0
TítuloSeq PTU
DescriçãoSequencial PTU
UsadoNão
ObrigatórioNão
BrowseNão
ContextoReal

...