Árvore de páginas

Configuração Mile para o Módulo Faturamento

Produto:

Microsiga Protheus®

Versões:

12.1.25 e posteriores 

Ocorrência:

Configuração Mile para o Prestadores de Serviços

Ambiente:

SIGATEC - Prestadores de Serviços

Passo a passo:

    O que é o MILE?

    O MILE é o acrônimo para Model Integrator Layout Engine. O intuito desta ferramenta é facilitar a importação/exportação de dados para o sistema através do uso de rotinas automáticas (MSExecAuto) e/ou rotinas desenvolvidas em MVC utilizando arquivos em formato texto (TXT).

    Conceito básico da ferramenta

     A ideia básica é mapear as informações que serão importadas ou exportadas em um layout . Esse layout trabalha no conceito de canais, é feita a leitura do arquivo texto e através do layout enviasse os dados para serem processados pelo adapter.      

    1- O que é um Canal ?

    O canal pode ser utilizado para definir que informações estão sendo trabalhadas, por exemplo, em uma importação de pedido de vendas há informações de cabeçalho e de ítens, as informações que compõem o cabeçalho podem estar em um canal e as de ítens em outro canal.
    Exemplo:

    Neste exemplo o canal "01", (no começo da linha) poderia ser o cabeçalho e o "02" os ítens.
    O canal é uma informação que deve constar no arquivo texto e que define uma separação ou tipagem para os dados que estão sendo trabalhados.

    Um layout pode possuir um, vários ou nenhum canal.

    2- O que é uma Unidade de Informação?

    Dentro de um arquivo texto iremos importar/exportar várias informações, mas cada layout se refere a um contexto (notas, pedidos, clientes, etc.). Dentro de cada contexto, cada conjunto de informações é uma unidade de informação.
    Por exemplo, em um arquivo de pedidos de venda podem existir vários pedidos com vários canais, mas vamos importar/exportar 1 pedido a cada vez, nessa idéia, cada pedido é uma unidade de informação. Se vamos importar clientes, cada um dos clientes que será importado (independente de quantos canais tenha o layout) será uma unidade de informação e assim por diante.

    3 - O que é um Adapter?

    Adapter é a aplicação responsável por processar as informações que foram obtidas a partir do arquivo texto.

    O que é um Layout?

    Layout é a configuração que permite, ao se ler um arquivo texto, identificar os dados contidos naquele arquivo e fazer o seu relacionamento com as informações dos adapters.

    1- Composição do layout

    Um layout pode ser configurado através da aplicação de manutenção de layouts (CFGA600) que se encontra no módulo do Configurador (SIGACFG) nas opções Ambiente / Aceleradores / MILE / Layouts
    A seguir detalhamos a composição de um layout.


    2- Geral

    Contêm dados gerais do layout


    Possui os campos:

    Layout: Código do Layout

    Descrição: Descrição do layout
    Tipo de Adapter: Tipo de Adapter. Veja ítem 1.4 - O que é um Adapter

    1=MSExecAuto - Tratamento por rotina automática (MSExecAuto) (a rotina deve possuir esta característica)
    2=MVC - Tratamento por rotina em MVC
    3=Função - Tratamento por função específica. Neste caso os dados serão lidos pela ferramenta e passados para função. Para mais detalhes veja ítem 9 - Trabalhando com uma função específica.


    Adapter: Nome do Adapter.

    Quando o tipo de adapter é:
    MSExecAuto: Informa-se o nome da função de rotina automática (MSExecAuto).
    MVC: Informa-se nome do FONTE (.pr?) que contêm o modelo de dados (MODELDEF).
    Função: Informa-se o nome da função que irá receber os dados lidos


    Tabela principal: Alias da tabela principal utilizada na importação. A área corrente é apontada para este alias antes de se efetuar a importação.
    Ordem: Ordem da tabela principal utilizada na importação. A ordem da tabela principal é apontada para esta ordem antes de se efetuar a importação.
    Versão do Layout: Versão do layout. Campo livre para informar a versão do layout.


    Formatação do Arquivo

    Contêm dados sobre o formato do arquivo texto.

    Possui os campos:

    Arquivo TXT: Formato do arquivo texto

    1=Fixo: Dados com largura fixa
    2=Separador:- Dados usam algum separador entre si


    Separador: Se o formato do arquivo texto for por separador, informar o caracter separador utilizado. Os caracter aceitos são:

    | Pipe
    ; Ponto-e-vírgula
    , Vírgula
    / Barra
    - Traço
     Tab Tabulação ( Chr(9) )

    Atenção

    Se os dados contiverem algum dos símbolos dos separadores, os mesmo não serão importados corretamente.


    Separador
     Decimal: Tipo de separador de casas decimais dos dados numéricos.

    1=Ponto              Ex. 12345.67

    2=Vírgula            Ex. 12345,67 


    Atenção

    Se o tipo de separador de casas decimais não estiver correto, os dados não serão importados corretamente. Se os dados possuírem separadores de milhares, isto deve ser tratado no próprio layout utilizando o campo Execução.


     Entrada MultiCanal: Informa se o arquivo texto possui vários canais.

    Tratamentos e validações

    Contêm os nomes de funções específicas que podem ser definidas para tratamentos pontuais dos dados lidos.

    Detalhes no link : MILE - Model Integrator Layout Engine


    Adapters de Rotina Automática

    Contêm definições de características específicas para adapters que são uma rotina automática (MSExecAuto).

    Possui os campos:


    Tipo MSExecAuto: Se o tipo de adapter for uma rotina automática (MSExecAuto), informar o modelo do rotina automática. São suportados 3 modelos:

    1=Modelo 1 (Tabela simples)
    2=Modelo 2 (1 Tabela com cabeçalho/ítens)
    3=Modelo 3 (2 Tabelas diferentes cabeçalho/ítens)

    Outros modelos não são suportados.

    Detalhes Opcional: Quando o adapter é uma rotina automática (MSExecAuto), define se os detalhes dessa rotina automática são opcionais. Este campo deve ser preenchido conforme cada rotina automática, pois algumas aceitam esta característica e outras não.

    Importante

    A operação executada para adapters de rotina automática (MSExecAuto) sempre será apenas INCLUSÃO.

    Adapters em MVC

    Contêm definições de características específicas para adapters em MVC.

    Possui os campos:


    Operações Importação: Para adapters em MVC, define quais operações serão consideradas na importação.


    Apenas Inclusão: Todos dados sempre serão tratados como uma nova inclusão.
    Inclusão/Alteração: Será verificada a chave única do modelo e determinado se o dado é uma inclusão ou alteração, se a chave não for encontrada será uma inclusão, se for encontrada, será uma alteração.

    Método de Alteração: Define o método para efetuar as alterações.

    Alteração Direta: Os dados serão alterados diretamente no modelo.
    Excluir/Incluir: É feita a exclusão dos dados pelo adapter em MVC e em seguida uma nova inclusão.


    Para configurar Canais sugerimos a leitura do link MILE - Model Integrator Layout Engine


    Exemplo do TECA040

    Criamos um exemplo de aplicação no TECA040 (arquivos no link abaixo) com os campos padrões do Pedido de Vendas.

    Para importar :

    1) Abra o arquivo XML do link pelo Modulo Configurador

    2) Importe o arquivo TXT dentro do Pedido de Vendas

     


    Importante

    Substitua os Códigos do TXT com códigos existentes na base (código de cliente, código de produto, entre outros)


    Exemplo:


    É possível validar o recebimento do registro no Modulo Configurador


    Exemplo de erro de recepção

    Neste caso acima data no arquivo txt estava sem // para separar.


    Acesso o Modulo Configurador, entra no Mile posiciona encima do layout e Outras Ações >> LOG.


    Consulta o LOG da Ultima Operação.




    Documentação complementar:

    MILE - Model Integrator Layout Engine