Árvore de páginas

Versões comparadas

Chave

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

...

Situação
AO REALIZAR O CANCELAMENTO DE UMA SOLICITAÇÃO DE COMPRAS VIA MENSAGEM UNICA CANCELREQUEST É APRESENTADO O ERRO[|THREAD ERROR (JOB_WS_TMP, THIS)  18/07/2017 10:12:21|array out of bounds  on MATI110A(MATA110A.PRW) 04/11/2015 10:04:48 line : 97
Solução
A empresa CSU abriu um ticket informado um erro no processamento do cancelamento de uma SC via integração, adapter “CANCELREQUEST’:

Erro: 
INTEGDEF RETURN ERROR --> [array out of bounds ] - [|THREAD ERROR (JOB_WS_TMP, THIS)  18/07/2017 10:12:21|array out of bounds  on MATI110A(MATA110A.PRW) 04/11/2015 10:04:48 line : 97||[TOTVS build: 7.00.131227A-20161027]|Called from INTEGDEF(MATA110A.PRW) 04/11/2015 10:04:48 line : 38|Called from FWUMESSAGE(PROTHEUSFUNCTIONMVC.PRX) 15/07/2016 12:04:42 line : 6188|Called from FWEXECEAI(FWEAIUTIL.PRW) 20/06/2016 15:15:24 line : 523|Called from FWEAI:SAVE(FWEAI.PRW) 07/06/2016 15:53:28 line : 1188|Called from EAISERVICE:RECEIVEMESSAGE(EAISERVICE.PRW) 07/06/2016 15:58:58 line : 143|Called from WSEXECUTE(XMLWSVCS.PRW) 10/03/2016 11:47:52 line : 1974|Called from __WSCONNECT(XMLWSVCS.PRW) 10/03/2016 11:47:52 line : 1098|]

Debugando a rotina identificamos que o problema acontece na validação da  função “StrToArray”, essas funções não consideram espaços em branco para criação de array, no caso desse cliente quando o sistema está criando a variável oBusinessC que vai jogar no arrey  temos os seguinte atributo :
01|  |11075|0001, quando o processamento do fonte chega na linha 97 o array só possui 3 posições e o fonte pede 4  posições estourando assim o erro.

Com a ajuda do Alexandre ele me indicou usar a função “Separa” SEPARA , foi o que fiz, segue o fonte com a alteração. Criei um patch apliquei na base teste do cliente e funcionou, estamos avaliando com nosso time de manutenção essa solução.

...