Histórico da Página
...
Produto: | Microsiga Protheus® | |||||||||
Versões: | Superiores a 12.1.23 | |||||||||
Ocorrência: | Como configurar o layout do MILE para importar os dados dos Contatos (SU5), incluindo também o Endereço (AGA) e Telefone (AGB)? | |||||||||
Ambiente: | Padrão | |||||||||
Passo a passo: | Para realizar a importação dos dados na rotina de Contatos (TMKA070) incluindo o endereço e telefone utilizando o MILE, será necessário algumas configurações adicionais, pois atualmente a estrutura do MILE não permite realizar a importação utilizando simplesmente a configuração de canais. Basicamente o MILE funciona da seguinte forma: para cada canal criado, será enviado sequencialmente para a rotina em questão um array como um parâmetro. Então se temos 2 canais (1 Master e 1 Detail), ao realizar a chamada da MsExecAuto da rotina, será enviado da seguinte forma: FuncaoXXX(vetor[1], vetor[2], 3) Se tivermos 3 canais , será desta forma: FuncaoXXX(vetor[1], vetor[2],vetor[3], 3) E assim por diante. Visto isso, temos uma incompatibilidade de uso para a inclusão dos dados de Endereço (AGA) e de Telefone (AGB), pois na rotina TMKA070 os parâmetros que recebem estes dados estão na terceira e quarta posição. Veja os parâmetros recebidos pela rotina TMKA070 via rotina automática: TMKA070( aRotAuto, nOpc, xAutoAGA, xAutoAGB, xPrefSU5 ) onde: aRotAuto - Array - Dados do cabeçalho do contato (SU5) nOpc - Numérico - Opção da rotina a ser executada xAutoAGA - Array - Informações de endereço do contato (AGA) xAutoAGB - Array - Informações de telefone do contato (AGB) xPrefSU5 - Lógico - Modo de compatibilidade Neste caso, precisamos enviar o vetor do canal Master (SU5) como primeiro parâmetro (aRotAuto) e os vetores dos canais Detail (AGA e AGB) como terceiro e quarto parâmetro (xAutoAGA e xAutoAGB). Vamos precisar manipular o array de canais criado peloMILEatravés de uma UserFunction. Exemplo da função de Pré Execução Neste exemplo o tratamento foi feito para importar um endereço e um telefone para cada contato. O MILE pode ser adaptado e customizado conforme as necessidades dos clientes. Para maiores detalhes, veja a documentação: MILE - Model Integrator Layout Engine
A função acima deverá ser compilada no repositório antes da configuração do layout. Configuração do Layout 1) Informações gerais. 2) Formatação do arquivo. 3) Tratamentos e Validações. 4) Adapters de Rotina Automática. 5) Definição dos Canais. Criar um canal B (DETAIL) para receber os dados de endereço (CANAL AGA). Criar um canal C (DETAIL) para receber os dados de telefone (CANAL AGB). Exemplo do Arquivo de Importação Neste exemplo iremos importar dois Contatos com um endereço e um telefone, conforme a customização do rdmake de exemplo.
| |||||||||
Observações: | Para maiores detalhes, veja a documentação: MILE - Model Integrator Layout Engine |