Histórico da Página
...
Produto: | Microsiga Protheus® | |||||
Versões: | Superiores a 12.1.17 | |||||
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 pelo MILE através de uma User Function, conforme o exemplo abaixo.
| |||||
Observações: |