Histórico da Página
Configura os layouts dos arquivos textos que são carregados para o Microsiga Protheus. Dessa forma, seus dados são gravados em arquivos XML e armezados na pasta definida no parâmetro MV_LAYMILE.
É utilizado o conceito de canais para a entrada dos dados do texto, de maneira que, eles podem estar separados em mais de uma linha ou em mais de um canal. Mesmo que o arquivo texto não possua canais, cada linha é um registro e no layout haverá um canal default.
Exemplo 1
Arquivo texto para carga de clientes. Cada linha é um registro no cadastro de clientes:
000001|CLIENTE TESTE 1|12345678901234|100.00
000001|CLIENTE TESTE 2|23456789012345|350.00
Exemplo 2
A|000001|CLIENTE TESTE 1|12345678901234|100.00
B|RUA DO ENDERECO CLIENTE 1, 9999|BAIRRO
C|RUA DO ENDERO COBRANCA CLIENTE 1, 999|BAIRRO
A|000001|CLIENTE TESTE 2|23456789012345|350.00
B|RUA DO ENDERECO CLIENTE 2, 1111|BAIRRO
C|RUA DO ENDERO COBRANCA CLIENTE 1, 111|BAIRRO
Visualmente é possível perceber que na linha iniciada com A estão alguns dados do cliente e nas linhas iniciadas em B e C estão o endereço e endereço de entrega, respectivamente. A informação do cliente está em mais de uma linha, ou seja, está em mais de um canal, dessa forma, quando há vários canais, é preciso algum identificador para eles (nesse caso, está na 1ª posição da linha: A, B e C).
Ambos exemplos podem ser carregados usando a ferramenta, basta fazer um layout para cada um, sendo que, no caso do Exemplo 1, mesmo ele não tendo um layout, é definido um canal default.
Divisão Geral
Apresenta os dados gerais do layout com os seguintes campos:
Layout | Código do layout. |
Descrição | Descrição do layout. |
Tipo Adapter | Tipo de aplicação que faz o tratamento dos dados. Pode ser: 1 MSExecAuto: o tratamento é feito por uma rotina automática. 2 MVC: o tratamento é feito por um modelo MVC. 3 Função: o tratamento é feito por uma função especifica. No caso de MSExecAuto e MVC os dados são lidos e enviados aos adapters que fazem a carga. Na Função os dados são apenas lidos e passados à função que deve fazer todo tratamento de validação e persistência dos dados. A função especificada recebe como parâmetros: · lManual: define se a execução é manual ou por Job. · aLayOut: dados do layout. · cArqTXT: nome do arquivo texto. · nCtLineFrom: referência da linha inicial dos dados no TXT (Para LOG). · nCtLineTo: referência da linha final dos dados no TXT (Para LOG). · aSaidas: dados lidos TXT conforme saídas. · cPrePro: nome da rotina de pré processamento definida. · cPosPro: nome da rotina de pós processamento definida. · cTdaPro: nome da rotina de tratamento dos dados definida. Se a Função for uma FUNCTION os parâmetros são passados diretamente para a função. Se for uma USER FUNCTION são passados por PARAMIXB. |
Adapter | Rotina que faz o tratamento dos dados do texto. |
Arquivo TXT | Tipo do arquivo texto. Pode ser: 1 Fixo: os dados no texto tem posição fixa. 2 Separador: os dados no texto são informados com um caracter separador. |
Separador | Caracter separador se o campo Arquivo TXT apresentar a opção Separador. |
Tipo de ExecAuto | Tipo de rotina automática quando o campo Adapter apresentar a opção 1 MSExecAuto. Pode ser: 1 Modelo 1: apenas uma tabela. 2 Modelo 2: cabeçalho e item da mesma tabela. 3 Modelo 3: cabeçalho e item de tabelas diferentes. |
Separador Inicial | Indica se a linha tem separador no inicio. |
Tabela Principal | Tabela principal a ser utilizada na rotina automática ou aplicação MVC. |
Ordem | Ordem da Tabela Principal. |
Origem do Canal | Se o campo Arquivo TXT for 1 Fixo, deve ser informada a posição inicial e final onde está a informação do canal no texto. Exemplo: 0001-0002 (da posição 1 a posição 2). Se o campo Arquivo TXT for 2 Separador, deve ser informada a posição do campo onde está a informação do canal no texto. Exemplo: 0001 (1º campo da linha). Em layout que não possui canais, deve ser informado 0000-0000 ou 0000 conforme o campo Arquivo TXT. |
Pré Execução | Função que é acionada antes da execução da rotina automática. |
Pós Execução | Função que é acionada após a execução da rotina automática. |
Trat. Dados | Função que pode tratar os dados depois de carregados. |
Formato Data | Indica o formato da data no texto. Pode ser: 1 dd/mm/aa. 2 aaaammdd. |
Entrada Multicanal | Indica se o arquivo de texto possui vários canais. |
Detalhes Opcional | Indica se no caso da rotina automática do tipo Modelo 2 ou Modelo 3, os itens (detalhes) são opcionais. |
| Determina se o separador pode ser utilizado entre aspas na string. Por exemplo, considerado | como delimitador: Campo1|Campo2|”camp3|ainda|é|o|campo3”|Campo4 Executando assim: Campo1 Campo2 camp3|ainda|é|o|campo3 Campo4 |
Reavaliar o Modeldef a cada registro? | Reavaliação do modelo definido a cada linha. (Onera a performance de execução)END |
Divisão Canais
Apresenta a identificação dos canais:
Novo Canal | Inclui um novo canal onde deve ser informado o identificados do canal. Ex. A, 001, ABC etc. Esse identificador deve ser igual ao que está nos canais do texto. |
Excluir Canal | Exclui um canal. |
Observação: Só pode haver um canal principal. Os canais podem ser criados em uma hierarquia.
Divisão Detalhes do Canal
Apresenta os detalhes de cada canal definido:
Descrição | Descrição do canal. |
ID Destino | ID do destino (saída) dos dados do canal. Quando o campo Tipo Adapter for: 1 MSExecAuto: ele pode ser MASTER/DETAIL para Modelo 2 e Modelo 3 e MASTER quando for Modelo 1. 2 MVC: ele pode ser os Ids de componentes do MVC. 3 Função: mesmo não sendo utilizado pela função, é necessário informar MASTER. |
Ocorrência | Indica a ocorrência do canal. Pode ser: 1 Única: o canal ocorre apenas uma vez para cada conjunto de informações. 2 Várias: o canal ocorre várias vezes para cada conjunto de informações. |
Pós Execução | Indica a rotina em que é executada a leitura do canal. A função especificada recebe como parâmetros: · lManual: define se a execução é manual ou por Job. · aLayOut: dados do layout. · aDados: dados do canal. · aDados TXT: dados lidos. Se a Função for uma FUNCTION os parâmetros são passados diretamente para a função. Se for uma USER FUNCTION são passados por PARAMIXB. |
Divisão Saídas
Apresenta os Ids de saídas definidos. Ele é preenchido conforme a criação dos canais.
Procedimentos disponíveis para manipulação do Layout
Incluir
- Ao acessar o cadastro de Layouts, clique em Incluir.
- São apresentadas as opções Importação e Exportação.IF V117
Importante: É possível realizar a exportação via TXT (Hierarquico e/ou Delimitado) com a configuração do Layout sugerido automaticamente pelo sistema, sendo possível alterá-lo, se necessário. Em Ações Relacionadas na opção Ativar/Desativar Layout é possível desativar ou ativar o layout de exportação/importação na rotina referida na opção Ações Relacionadas em Outros. |
END
- Informe um nome e os dados que pertencem ao layout.
- Confira e confirme. O sistema grava as informações e cria o layout.IF V12
- Observe o campo Pergunte inicial, nele informe o grupo de pergunta.
- Em algum campo do layout coloque o parâmetro MV_PARA01 utilizando-o no
- Confirme a alteração depois acesse o módulo que possui este layout e abra a rotina correspondente.
- Acesse Ações Relacionadas / Outros/ Importar.
- A tela de importação apresenta a opção de parâmetros se o layout
- Ao concluir o processamento é apresentada mensagem com o tempo utilizado desde o inicio até o término.END
Alterar
- Ao acessar o cadastro de Layouts, clique em Alterar.
- Altere os dados que pertencem ao layout e confirme.
- O sistema grava as informações e altera o layout.
Excluir
- Ao acessar o cadastro de Layouts, clique em Excluir e confirme.
...
Veja também
...