01. DADOS GERAIS

Produto:

TOTVS Saúde Planos


Linha de Produto:Linha Protheus


Segmento:Saúde


Módulo:PTU A1300
Função:EXPORTAR XML
País:Brasil
Ticket:12896967
Requisito/Story/Issue (informe o requisito relacionado) :DSAUBE-17231


02. SITUAÇÃO/REQUISITO

Necessidade de manipular todas as tags referentes ao arquivo XML gerado no PTU A1300.

03. SOLUÇÃO

Implementado um Ponto de Entrada para a manipulação do conteúdo das tags, será realizada a chamada no final de cada inclusão das tabelas temporárias para geração do arquivo, com isso poderá ser alterado o conteúdo de cada tabela.

04. DEMAIS INFORMAÇÕES 

Nome do Ponto de Entrada: PL1300XML

Parâmetros: 

PARAMIXB[1] : Tabela Temporária - Carácter 

PARAMIXB[2] : Recno da Tabela Temporária

PARAMIXB[3] : Recno do Beneficiário Posicionado

Retorno: Não se aplica


Segue a tabela contendo as Tags, descrição, e todos os campos das tabelas temporárias para ser utilizado no ponto de entrada: 

TAG

DESCRIÇÃO

TABELA TEMPORÁRIA

CAMPO

nrVerTra_PTU

Número da versão da transação

T301

NRVTRA_PTU

cd_Uni_Destino

Código da Unimed destino para envio de arquivo

T301

CD_UNI_DES

cd_Uni_Origem

Código da Unimed origem do envio de arquivo

T301

CD_UNI_ORI

dt_geracao

Data de geração do arquivo de envio

T301

DT_GERACAO

cd_Unimed

Código da Unimed

T316

CD_UNIMED

id_Benef

Código de identificação do Beneficiário, incluindo o dígito verificador, sendo o código da Unimed colocado em campo à parte.

T316

ID_BENEF

dt_excl_uni

Data de exclusão na Unimed

T316

DT_EXC_UNI

motivo_exclusao_benef

Motivo de exclusão

T316

MOT_EXCBEN

reg_plano_ans

Número do Registro do Plano da ANS ou Código de Identificação no Sistema de cadastro de Planos Comercializados Anteriormente à data de vigência da Lei Nº9.656, de 1998

T316

REG_PLAANS

dt_fim_vigencia

Data de fim da vigência do plano Unimed com o Beneficiário

T316

DT_FIM_VIG

nm_compl_benef

Nome completo do Beneficiário

T303

NM_COM_BEN

nm_social

Nome social 

T303

NM_SOCIAL

dt_nasc

Data de nascimento do Beneficiário

T303

DT_NASC

tp_sexo

Sexo do Beneficiário

T303

TP_SEXO

genero_social

Gênero social do Beneficiário

T303

GEN_SOCIAL

cd_cpf

Código do CPF

T303

CD_CPF

id_estrangeiro

Código de identificação do Beneficiário estrangeiro

T303

ID_ESTRANG

cd_ident

Carteira de Identidade

T303

CD_IDENT

orgao_emissor

Órgão Emissor da carteira

T303

ORGAO_EMIS

cd_uf

Código da Unidade Federativa da carteira de identidade

T303

CD_UF

cd_pais

Código do país emissor da carteira

T303

CD_PAIS

cd_cns

Cartão Nacional de Saúde

T303

CD_CNS

cd_est_civil

Código do Estado Civil

T303

CD_EST_CIV

nm_mae

Nome da Mãe do Beneficiário

T303

NM_MAE

pis_pasep

Número do PIS/PASEP

T303

PIS_PASEP

cd_munic_natural

Código do Município da naturalidade do Beneficiário, conforme a codificação do IBGE

T303

CD_MUNINAT

cd_munic

Código do Município, conforme codificação do IBGE

T303

CD_MUNIC

cd_Unimed

Código da Unimed Destino

T306

CD_UNIMED

id_Benef

Código de Identificação do Beneficiário, incluindo o dígito verificador, sendo o código da Unimed colocado em campo à parte

T306

ID_BENEF

nm_benef

Nome do Beneficiário

T306

NM_BENEF

nm_social_cartao

Nome Social - Cartão

T306

NM_SOCCART

cd_depe

Código da Dependência do Beneficiário

T306

CD_DEPE

id_Benef_tit

Identificação do titular na origem

T306

ID_BENEFTI

dt_incl_uni

Data de inclusão do Beneficiário na Unimed

T306

DT_INI_UNI

dt_excl_uni

Data de exclusão do Beneficiário na Unimed

T306

DT_EXC_UNI

id_sib

Indica se Beneficiário consta no SIB

T306

ID_SIB

nr_pla_port

Número do código do plano de origem(Portabilidade)

T306

NR_PLA_POR

id_remido

Indica se o Beneficiário é remido: usuário dependente de plano de saúde com continuidade do atendimento assistencial após a morte do titular com isenção de mensalidade

T306

ID_REMIDO

id_benef_coop

Indica se o Beneficiário é um cooperado

T306

ID_BENECOP

cd_crm

Número do CRM do médico cooperado

T306

CD_CRM

cd_uf_conselho

Código do CRM do médico cooperado

T306

CD_UFCONSE

cd_cnpj

Código do CNPJ da empresa contratante

T306

CD_CNPJ

cd_caepf

Código do CAEPF(Cadastro de Atividade Econômica de Pessoa Física da empresa contratante)

T306

CD_CAEPF

cd_Uni_Destino

Código da Unimed de Origem do Beneficiário

T307

CD_UNI_DES

cd_Uni_Origem

Código da Unimed de destino do Beneficiário

T307

CD_UNI_ORI

tp_com_risco

Tipo de compartilhamento de risco

T307

TP_COM_RIS

dt_comp_risco

Indicador de início do compartilhamento de risco

T307

DT_COM_RIS

dt_fim_comp_risco

Data do fim do compartilhamento de risco

T307

DTFIMCOMRI

cd_uni_des_com

Código da carteira na Unimed Destino do compartilhamento de risco

T307

CDUNIDESCO

id_Benef_des

Código de identificação na Carteira do Beneficiário na Unimed Destino, incluindo o dígito verificador, sendo o código da Unimed colocado em campo à parte

T307

ID_BENEDES

via_cartao

Via do Cartão

T307

VIA_CARTAO

dt_val_carteira

Data de validade da Carteira

T307

DT_VALCART

nm_contr

Nome do Contratante

T308

NM_CONTR

dt_inicio_vigencia

Data de início de vigência do plano Unimed com o beneficiário

T308

DT_INI_VIG

dt_fim_vigencia

Data de fim de vigência do plano Unimed com o beneficiário

T308

DT_FIM_VIG

tp_abrangencia

Abrangência do plano

T308

TP_ABRANGE

tp_contratacao

Tipo de contratação

T308

TPCONTRATA

tp_acomodacao

Tipo de acomodação

T308

TP_ACOMODA

id_reg_plano_ans

Indicador do Registro do Plano na ANS

T308

IDREGPLANS

reg_plano_ans

Número do Registro do Plano na ANS ou Código de Identificação no Sistema de Cadastro de Planos Comercializados Anteriormente à data de vigência da Lei Nº 9.656, de 1998

T308

REGPLA_ANS

seg_plano

Segmentação do Plano

T308

SEG_PLANO

cd_rede

Código da rede referenciada

T308

CD_REDE

nm_rede

Descrição da Rede

T308

NM_REDE

via_cartao

Via do Cartão

T308

VIA_CARTAO

dt_val_carteira

Data de validade da Carteira

T308

DT_VALCART

cd_lcat

Código do Local de Atendimento

T308

CD_LCAT

id_cpt

Indicação de existência de Cobertura Parcial Temporária

T308

ID_CPT

dt_fim_cpt

Data Final da Cobertura Parcial Temporária

T308

DT_FIM_CPT

tp_contrato

Tipo de Contrato

T308

TP_CONTRAT

cd_cnpj_adm_benef

Código do CNPJ da Administradora de Benefícios na ANS

T308

CNPJADMBEN

raz_soc_adm_benef

Razão social da administradora de benefícios

T308

RZSOCADMBE

nm_adm_benef

Nome fantasia da administradora de benefícios

T308

NMADMBENEF

nm_produto

Nome do Produto (Plano)

T308

NM_PRODUTO

nr_contrato

Número do contrato/apólice

T308

NR_CONTRAT

dt_contr_plano

Data da contratação do plano de saúde

T308

DTCONTRPLA

tipo_rede_min

Tipo de Rede conforme Manual do Intercâmbio Nacional

T308

TP_REDEMIN

cd_munic

Código do Município que faz parte do Grupo de Munícipios, conforme codificação do IBGE

T309

CD_MUNIC

cd_uf

Código da Unidade Federativa

T309

CD_UF

tp_cobertura

Tipo da Cobertura

T310

TP_COBERTU

dt_fim_carencia

Data final da carência para a cobertura

T310

DT_FIMCARE

cd_cnpj

Código do CNPJ

T302

CD_CPNJ

cd_caepf

Código do CAEPF (Cadastro de Atividade Econômica de Pessoa Física)

T302

CD_CAEPF

cd_insc_est

Código da inscrição estadual

T302

CD_INS_EST

nm_empr_comp

Nome completo da Empresa (Razão Social)

T302

NM_EMP_COM

nm_fantasia_empr

Nome fantasia da Empresa

T302

NM_FAN_EMP

nm_empr_abre

Nome da Empresa Abreviado

T302

NM_EMP_ABR

ind_resid

Indica se a residência é no Brasil ou Exterior

T305

IND_RESID

tp_end

Tipo de Endereço

T305

TP_END

tp_logradouro

Tipo de logradouro

T305

TP_LOGRAD

ds_lograd

Logradouro

T305

DS_LOGRAD

nr_lograd

Número do Logradouro

T305

NR_LOGRAD

compl_lograd

Complemento do Logradouro

T305

COMP_LOGRD

ds_bairro

Descrição do bairro

T305

DS_BAIRRO

cd_munic

Código do Município, conforme codificação do IBGE

T305

CD_MUNIC

nr_cep

Número do CEP

T305

NR_CEP

tp_fone

Tipo de Telefone

T311

TP_FONE

nr_ddd


Número do DDD

T311

NR_DDD


nr_fone

Número do telefone

T311

NR_FONE

tp_email

Tipo de E-mail

T311

TP_EMAIL

end_email

Endereço de e-mail

T311

END_EMAIL

cd_Unimed

Código da Unimed

T317

CD_UNIMED

id_Benef

Código de Identificação do Beneficiário, incluindo o dígito verificador, sendo o código da Unimed colocado em campo à parte.

T317

ID_BENEF

nm_benef

Nome do Beneficiário

T317

NM_BENEF

dt_nasc

Data de Nascimento do Beneficiário

T317

DT_NASC

tp_sexo

Sexo do Beneficiário

T317

TP_SEXO

cd_cns

Número do Cartão Nacional de Saúde do Beneficiário

T317

CD_CNS

cd_cnpj

Código do CNPJ

T317

CD_CNPJ

cd_aut_gest_ans

Código da Autogestão junto a ANS

T317

CAUTGESANS

cd_cpf

Código do CPF

T317

CD_CPF

dt_incl

Data de Inclusão no Plano Destino (Intercâmbio)

T317

DT_INCL

dt_excl

Data de exclusão do prestador na UNIMED

T317

DT_EXCL


#Include "PROTHEUS.CH"

User Function PL1300XML()

	Local cTabTemporaria := PARAMIXB[1] // Tabela temporária
	Local nRecnoTab := PARAMIXB[2] // Recno da tabela
	Local nRecnoBenef := PARAMISB[3] // Recno do Beneficiário
	Local aAreaBA1 := BA1->(GetArea())

	// Tratamento para manipular conteúdo das tags
	Do Case
		Case cTabTemporaria == "T301" 
			If nRecnoBenef > 0
				BA1->(DbGoTo(nRecnoBenef))
				T301->(RecLock("T301", .F.))
      		  		T301->DT_GERACAO := DToS(dDataBase)
					...
     		   	T301->(MsUnlock())
			EndIf

		Case cTabTemporaria == "T302" 
			If nRecnoBenef > 0
				BA1->(DbGoTo(nRecnoBenef))
				T302->(RecLock("T302", .F.))
        			T302->NM_EMP_ABR:= "Nome Abreviado da Empresa"
					...
        		T302->(MsUnlock())
			EndIf
	
		Case cTabTemporaria == "T303"
			... 
		Case cTabTemporaria == "T305"
			...
		Case cTabTemporaria == "T306"
			...
		Case cTabTemporaria == "T307"
			...
        Case cTabTemporaria == "T308"
			...
        Case cTabTemporaria == "T309"
			...
        Case cTabTemporaria == "T310"
			...
        Case cTabTemporaria == "T311"
			...
        Case cTabTemporaria == "T316"
			...
        Case cTabTemporaria == "T317"
			...
	EndCase
	
	RestArea(aAreaBA1)

Return 



05. ASSUNTOS RELACIONADOS

Não se aplica.