Ponto-de-Entrada: PLVLPROAUT - Validação de Procedimentos
Descrição:
O ponto de entrada PLVLPROAUT permite realizar validações ao informar um procedimento, ao realizar uma liberação/autorização e no momento de mudança de fase de uma guia.
Ao desenvolver o ponto, o cliente pode criar uma regra específica, retornando ao sistema se o procedimento foi liberado ou criticado.
Obs: O ponto é acionado no início da verificação do procedimento. Após a execução do ponto, o sistema realiza todas as verificações padrões. Caso seja encontrada uma crítica de sistema, ela é apresentada.
Programa Fonte
PLSXAUT
Sintaxe
PLVLPROAUT - Validação de Procedimentos ( [ cCdTbPd ], [ cCodPro ], [ cDente ], [ cFaces ], [ nQtd ], [ dData ], [ cHora ], [ cSequen ], [ aDadRDA ], [ cLOCALExec ], [ cTpLocExec ] ) --> aRet
Parâmetros:
| Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
| cCdTbPd | Caracter | Código da tabela | |||||||||||||||
| cCodPro | Caracter | Código do procedimento | |||||||||||||||
| cDente | Caracter | Código do dente | |||||||||||||||
| cFaces | Caracter | Código da face | |||||||||||||||
| nQtd | Numérico | Quantidade solicitada | |||||||||||||||
| dData | Data | Data do procedimento | |||||||||||||||
| cHora | Caracter | Hora do procedimento | |||||||||||||||
| cSequen | Caracter | Sequencia do procedimento. | |||||||||||||||
| aDadRDA | Array of Record | Array com informações da Rda utilizada. | |||||||||||||||
| cLOCALExec | Caracter | 1 - Autorização 2 - Processamento de Conta | |||||||||||||||
| cTpLocExec | Caracter |
Retorno
-
aRet(array_of_record)
- Array contendo:
aRet[1] - Boolean -> .T.- Procedimento liberado / .F. -> Procedimento criticado
Caso a posição [1] for .F. (houve crítica), os seguintes retornos se tornam obrigatórios:
aRet[2] - aCodCri -> Array com as informações da crítica para montagem do grid de retorno. Para montagem do mesmo, consulte o exemplo disponível abaixo.
aRet[3] -> Alias da crítica (BE2_NIVAUT)
aRet[4] -> Chave Nivel (BE2_CHVNIV)
aRet[5] -> Boolean Guia paga no ato. (Default .F.)
Exemplos
#define __aCriTeste {"7XX","Impossivel realizar procedimentos em dente ja extraido"} //Critica usado pelo cliente criada na tabela BCTUser Function PLVLPROAUTLocal cCdTbPd := paramixb[1]Local cCodPro := paramixb[2]Local cDente := paramixb[3]Local cFaces := paramixb[4]Local nQtd := paramixb[5]Local dData := paramixb[6]Local cHora := paramixb[7]Local cSequen := paramixb[8]Local aDadRDA := paramixb[9]Local cLOCALExec := paramixb[10] Local cTpLocExec := paramixb[11]Local aRet := {} Local aCodCri := {} If //Regra do cliente //Foi encontrada critica, montado array de retorno PLSPOSGLO(PLSINTPAD(),__aCriTeste[1],__aCriTeste[2],cLOCALExec,nil,cTpLocExec) aadd(aCodCri,{__aCriTeste[1],PLSBCTDESC(),"",BCT->BCT_NIVEL,BCT->BCT_TIPO,cCdTbPd,cCodPro}) aadd(aCodCri,{"","O dente " + cDente + "já foi extraido",cCodPro,"","",cCdTbPd,cCodPro}) //"Critica de dente ja extraido" aRet := {.F.,aCodCri,"1","",.F.} Else aRet := {.T.}//Nao foi encontrada nenhuma criticaEndIf Return(aRet)
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas