Imagine que você precisa importar mil lançamentos contábeis ou centenas de clientes de uma só vez. Fazer isso manualmente seria um trabalho hercúleo. É aqui que entra o MILE (Model Integrator Layout Engine).

O MILE é um motor de integração de layouts que facilita a importação e exportação de dados no Protheus utilizando arquivos de texto plano (como .TXT ou .CSV). Basicamente, ele funciona como uma ponte: você mapeia as colunas do seu arquivo para os campos do sistema através de um layout, e o MILE entrega esses dados para serem processados.

Ponto de Atenção: O MILE não grava dados diretamente no banco de "qualquer jeito". Ele utiliza a inteligência do sistema para garantir que todas as validações de negócio sejam respeitadas.

Como ele funciona com ExecAuto e MVC? 🛠️

Para que o MILE consiga "conversar" com o Protheus, ele utiliza o que chamamos de Adapters. Existem dois tipos principais de integração:

1. MsExecAuto (Rotinas Automáticas)

O MILE utiliza as rotinas automáticas padrão do sistema (como a MATA410 para pedidos de venda ou MATA010 para produtos). Ele pega os valores do seu arquivo e os "injeta" em uma ExecAuto, que se encarrega de validar saldos, riscos e gatilhos antes de gravar.

2. MVC (Model-View-Controller)

Nas rotinas mais modernas, o MILE utiliza diretamente o Modelo de Dados (Model) da aplicação. Isso permite que você use as mesmas regras de negócio da tela visual, mas de forma segregada e automática, sem interface. O MILE pode até gerar o layout automaticamente a partir de um fonte MVC.

Os 3 Tipos de Modelos de Execução 📋

Dependendo da complexidade da rotina que você está automatizando (especialmente via ExecAuto), o MILE oferece três tipos de modelos estruturais:

Modelo Descrição Exemplos Comuns
Modelo 1 Tabela Simples: Ideal para cadastros que envolvem apenas uma entidade por registro. Clientes (SA1), Fornecedores (SA2) e Produtos (SB1).
Modelo 2 1 Tabela com Cabeçalho e Itens: Usado quando a rotina exige uma "capa" e várias linhas de detalhe, muitas vezes na mesma tabela ou lógica. Lançamentos Contábeis (CT2) e Movimentações Múltiplas (MATA241).
Modelo 3 2 Tabelas Diferentes: Utilizado em rotinas complexas onde o cabeçalho e os itens residem em tabelas físicas distintas. Estruturas de Produtos onde se separa a gestão do pai e dos componentes.
Dica Didática: Ao configurar o Modelo 2 ou 3, você precisará definir canais MASTER (cabeçalho) e DETAIL (itens) no layout do MILE para que o sistema saiba quem é o "pai" e quem são os "filhos" na importação.

Conclusão

O MILE é uma ferramenta poderosa para evitar customizações desnecessárias. Ao dominar seus adapters e entender qual modelo de dados sua rotina utiliza, você transforma processos manuais lentos em integrações robustas e rápidas.