Recuperando Informações de um ‘Error Handler’ do Magic xpa

Você montou uma sequência de programas no Magic xpa desta forma:

Imagem_001

 

O programa ‘On-Line’ vai invocar alguns programas ‘Batches’, que trabalharão com acesso a dados.

Como o acesso aos dados, por depender de um recurso externo (o gerenciador de acesso aos dados), pode ter algum problema e executar com sucesso, você cuidadosamente coloca um ‘Error Handling’ para detectar as possíveis exceções, salvando os detalhes numa variável do Main Program, para posterior consulta:

Imagem_002

Imagem_003

Porém, nenhuma informação retorna (fica atualizada na variável do Main Program) caso ocorra um erro:

Imagem_004

Não se desespere.

O que ocorre, é que por definição, todos os campos (incluindo-se os reais e virtuais) são restaurados ao seu valor original antes da abertura da transação, após a conclusão de um Error Handling.

Por isso, a virtual do Main Program volta a ficar vazia logo após a execução deste Event Handler de Erro.

A solução para estes casos, e usar SetParam / GetParam.

Variáveis criadas com SetParam não são restauradas ao seu valor original, após um Error Handling:

Imagem_005

Imagem_006

Pronto!

As informações geradas dentro do Error Handling estarão disponíveis também após ele ser finalizado:

Imagem_007

Baixe aqui neste link um projeto exemplo (uniPaaS 1.9n, mas pode converter para Magic xpa), sobre este tema.

Manoel Frederico - Gerente de Produto e Magic Evangelista
Manoel Frederico – Gerente de Produto e Magic Evangelista

 

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *