...
Características do Requisito
Rotina: | Rotina(s) envolvida(s) | Nome Técnico | Atendimento (Liberação/SADT/Odonto) | PLSA090 | Autorização de Internação | PLSA092 | Anexos Clinicos | PLSA09A | Digitação de Contas Medicas | PLSA498 | Portal do Prestador | PLSWEB |
|
Ponto de Entrada: | PLSAUT02 |
...
Posição | Conteúdo | Descrição |
---|
[1] | lOk | Autorizada ou não (.T. ou .F.) |
[2] |
Estado lOk | Conteúdo |
---|
True | cNivel | False | aCriticas |
Essa posição é definida de acordo com o conteúdo da primeira posição (lOk) | cNivel | aCriticas |
---|
Tipo de autorização 0 - Dispensa Autorização 1 - Automática 2 - Guia Operadora 3 - Auditoria 4 - Guia Empresa 5 - Guia Empresa/Operadora 6 - Avaliação Contratual | Matriz com a seguinte estrutura [1] Código da Critica - Caracter [2] Descrição da Critica - Caracter [3] Informação da critica - Caracter [4] Nível - Caracter [5] Tipo - Caracter [6] Cod.TpProced - Caracter [7] Código do Procedimento - Caracter |
|
[3] | cAliCam | Alias do caminho da critica |
[4] | cChaveAux | Chave do caminho da critica |
...
Eventos: | Checagem de cobertura para autorização de procedimentos |
Programa Fonte: | PLSXAUT.PRW |
Função: | PLSAUTP - Autorização de Procedimentos |
Parâmetros de entrada: | Nome | Tipo | Descrição |
---|
aRet | caracter | Retorno padrão da função até o momento da execução do Ponto de Entrada | dData | data | Data de execução do procedimento | cHora | caracter | Hora de execução do procedimento | cCdTbPd | caracter | Código da tabela | cCodPro | caracter | Código do procedimento | nQtd | numerico | Quantidade Executada | cCid | caracter | CID do atendimento | cLOCALExec | caracter | Local de execução ("1" - Autorização/"2" - Processamento de Conta) | cOpeSol | caracter | Operadora do solicitante | cCodPRFSol | caracter | Código do profissional Solicitante | cCodInt | caracter | Código da Operadora | cCodRda | caracter | Código do Prestador | cCodLoc | caracter | Código do local de Atendimento no Prestador | cLocal | caracter | Local de Atendimento | cCodEsp | caracter | Código da especialidade | cOpeUsr | caracter | Operadora do Beneficiário | cMatrUsr | caracter | Matricula do Beneficiário | cPadInt | caracter | Apartamento ou enfermaria, conforme tabela de cadastro e atributo do produto | aDadUsr | array | Dados do | BeneficiarioBeneficiário | aDadRda | array | Dados do Prestador | cTpLocExec | caracter | Local de validação da critica ("1/4" - Remote Protheus/ "2" - WEB/ "3" - POS/ "5" - XML) | cAteRNA | caracter | Indica se é atendimento de recém-nascido ("0" - Não/ "1" - Sim) | cTipGuia | caracter | Tipo de guia (01 - Consulta/02- SP_SADT/03 - Solicitação de Internação/04 - Reembolso/05 - Resumo de Internação/06 - Honorário/07 - Anexo Quimioterapia/08 - Anexo Radiografia/09 - Anexo OPME/10 - Recurso de Glosa/11 - Prorrogação de Internação/12 - Outras Despesas/13 - Odontologia) | cChavGui | caracter | Número da Guia no Prestador | cChavLib | caracter | Número de Autorização gerado na Liberação | cNumeroGuia | caracter | Número da Guia atribuído pela operadora | lRPC | lógico | Indica se a rotina foi chamada pelo ambiente Remote (.F.) ou pelo ambiente Portal / Web Service (.T.). | cTipAdmissao | caracter | Tipo de admissão (0- Não informado/1- Acidente de trabalho/2- Acidente de transito/3- Acidente - Outros/4- Emergência - Risco de vida/5- Urgência - sem risco de vida - passível de remoção/6- Eletiva/programada/rotina) | lOriHAT | lógico | Indica se a chamada é feita por guias do HAT. |
|
Retorno: | Nome | Tipo | Descrição | Obrigatório | aRet | array | Retorno com as informações do nível de autorização/critica do procedimento. Maiores detalhes da estrutura do array, disponível na descrição do artigo. | Sim |
|
Exemplo de implementação:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | # include 'protheus.ch'
user function PLSAUT02()
local aRet := ParamIXB[01]
local dData := ParamIXB[02]
local cHora := ParamIXB[03]
local cCdTbPd := ParamIXB[04]
local cCodPro := ParamIXB[05]
local nQtd := ParamIXB[06]
local cCid := ParamIXB[07]
local cLOCALExec := ParamIXB[08]
local cOpeSol := ParamIXB[09]
local cCodPRFSol := ParamIXB[10]
local cCodInt := ParamIXB[11]
local cCodRda := ParamIXB[12]
local cCodLoc := ParamIXB[13]
local cLocal := ParamIXB[14]
local cCodEsp := ParamIXB[15]
local cOpeUsr := ParamIXB[16]
local cMatrUsr := ParamIXB[17]
local cPadInt := ParamIXB[18]
local aDadUsr := ParamIXB[19]
local aDadRda := ParamIXB[20]
local cTpLocExec := ParamIXB[21]
local cAteRNA := ParamIXB[22]
local lSuaRegra := .T.
local aCriticas := {}
local cNivel := ""
local cCodCriEsp := "799"
local cDesCriEsp := "TESTE"
If PLSPOSGLO(PLSINTPAD(),cCodCriEsp,cDesCriEsp,cLOCALExec)
cNivel := "ZAA"
if !lSuaRegra
aAdd(aCriticas,{cCodCriEsp,cDesCriEsp, '' ,BCT->BCT_NIVEL,BCT->BCT_TIPO,cCdTbPd,cCodPro})
aRet := {.F.,aCriticas,cNivel, '' ,.F.}
else
aRet := {.T., '' ,cNivel, '' }
endif
endif
return (aRet)
|
|
|
...