Home

Linha Microsiga Protheus

Páginas filhas
  • PLSXMLPROF - Correção de Códigos

Ponto-de-Entrada: PLSXMLPROF - Correção de Códigos
Versões: Microsiga Protheus 8.11 , Microsiga Protheus 10
Compatível Países: Brasil
Sistemas Operacionais: Todos
Compatível às Bases de Dados: Todos
Idiomas: Espanhol , Inglês
Descrição:

O objetivo deste ponto de entrada é permitir a correção dos códigos relacionados a "Rda", "Solicitante", "Executante" e "Matrícula", caso estejam errados no conteúdo do arquivo XML.


Importante: Este ponto corrige informações errôneas para que o arquivo não seja criticado. Para alterar a RDA de importação é possível através do tratamento realizado pelo parâmetro "R" (Rda), nesse caso, retornar o código da RDA que será realizada a importação.
Para tratamento de códigos de CRM de Profissionais Solicitante e Executante, tratar através do Ponto de Entrada "PLSXMLSCU".

O parâmetro "S" só é passado em arquivos GUIASOLICITACAOSADT, GUIASOLICINTERNACAO e GUIASOLICITACAOPRORROGACAO.
Eventos

Permite que sejam tratadas na leitura do arquivo XML as informações do código da "Rda", "Profissional Solicitante", "Profissional Executante" e "Matrícula do usuário".

 

 

Programa Fonte
PLSA973
Sintaxe

PLSXMLPROF - Correção de Códigos ( [ cTipo ], [ cCodRP ], [ cNum ], [ cNumImp ], [ cOrigem ], [ nIdx ], [ Data ], [ cHora ] ) --> cCodRP

Parâmetros:
Nome Tipo Descrição Default Obrigatório Referência
cTipo Array of Record “R” - Tratamento para código da Rda
“S” - Tratamento para código do Solicitante
“CE” - Tratamento para código do Executante
“M” - Tratamento para código da Matrícula do usuário.
cCodRP Array of Record Código informado no arquivo XML
cNum Array of Record Reservado
cNumImp Array of Record Número do Impresso
cOrigem Array of Record "1" - Execução"2" - Solicitação
nIdx Array of Record Índice posicionado
Data Array of Record Data do Evento
cHora Array of Record Hora do Evento
Retorno
    cCodRP(caracter)
  • O retorno do ponto de entrada será conforme o tipo:
    “R” - retorna o código da Rda
    “S” - retorna o código do Solicitante
    “CE” - retorna o código do Executante
    “M” - retorna a matricula do usuário.
Exemplos
User Function PLSXMLPROFLOCAL cRet     := ""LOCAL cTp       := paramixb[1]LOCAL cCodigo := AllTrim(paramixb[2])LOCAL nLen      := Len(cCodigo)LOCAL cChaveAux := Substr(cCodigo,1,nLen-1)LOCAL cNivelRd  := paramixb[3]LOCAL cNumImp  := paramixb[4]LOCAL cOrigem   := paramixb[5]Do Case 	Case cTp == 'R'		BAW->( DbSetOrder( 3 ) ) //BAW_FILIAL + BAW_CODINT + BAW_CODANT		If BAW->( MsSeek( xFilial("BAW")+cChaveAux) ) 		   cRet := BAW->BAW_CODIGO		EndIf	Case cTp == 'S'		BB0->( DbSetOrder( 6 ) ) //BB0_FILIAL + BB0_CODOPE + BB0_CODIGO                                                                                                                            		If BB0->( MsSeek( xFilial("BB0")+cChaveAux ) )		   cRet := BB0->BB0_CODIGO		EndIf	Case cTp == 'CE'		BB0->( DbSetOrder( 6 ) ) //BB0_FILIAL + BB0_ESTADO + BB0_NUMCR + BB0_CODSIG + BB0_CODOPE		If BB0->( MsSeek( xFilial("BB0")+cChaveAux ) )		   cRet := BB0->BB0_CODIGO		EndIf         	Case cTp == 'M'	   cRet := cCodigo	OtherWise   	   cRet := cCodigo		EndCaseReturn(cRet)