Transferência de dados através de arquivos .txt - Parte II
Ainda que a troca de informações entre sistemas modernos utilizem XML, sistemas legado ainda utilizam arquivos texto para o mesmo pretexto. Logo os sistemas modernos devem gerar arquivos texto para se comunicar com sistemas legados.
Transferência de dados através de arquivos .txt - Parte II
Layout
Agora que já temos informações a serem transferidas, é necessária a elaboração de algumas regras para gerar o arquivo texto. Essas regras, que de agora por diante chamaremos apenas de layout, tem que ser compreendida pelos dois aplicativos(o que gerou o arquivo e que irá receber).
Sendo assim vamos criar nosso layout.
1. Regras de formatação de campos
1.1. Campos numéricos (Tipo N) fracionados deverão ser preenchidos por completo, sem nenhum tipo de sinal, sem vírgula e pontos, alinhado a direita e com suas posições a esquerda preenchidas por zeros:
Ex1: R$ 1.050,55 com tamanho 15,2(13 caracteres da parte inteira e 2 da decimal) no layout deverá aparecer 000000000105055
Ex2: R$ 78,00 com tamanho 15,2(13 caracteres da parte inteira e 2 da decimal) no layout deverá aparecer 000000000007800
1.2. Campos inteiros (Tipo I) serão similares aos campos numéricos fracionados, apenas não utilizando as casas decimais.
1.3. Campos com datas (Tipo D) tem que estar no formato AAAAMMDD:
Ex1: 31/12/2005 tem que ser informado 20051231
Ex2: 01/02/2006 tem que ser informado 20060201
1.4. Campos com tempo (Tipo T) tem que estar no formato HHMMSS:
Ex1: 10:30h tem que ser informado 103000
Ex2: 13:25:55h tem que ser informado 132555
1.5. Campos alfanuméricos (Tipo A) serão alinhados a esquerda com espaço em branco a direita até ser atingido seu tamanho máximo:
Ex1: José da Silva com tamanho 50 deverá “José da Silva ” – sem as aspas
Ex2: Celular XR-60 com tamanho 50 deverá aparecer “Celular XR-60 ” – sem as aspas
2. Regras para tipos de registros
2.1. Todos os registros deverão ter obrigatoriamente 195 posições.
2.2. O primeiro dígito indicará o tipo de registro que contém na linha e o cinco últimos a posição do registro no arquivo.
Ex1: “100001111.111.111-11Jose da Silva Rua da Flores, 123 Romeirao Juazeiro do Norte CE1970123100002” – O primeiro dígito é o número 1 o que indica que é um Registro Tipo 1, os cinco últimos números são 00002 informando que o registro está na segunda linha do arquivo
Ex2: “21234567890123Telefone XT-72 000000000008399 00006” - O primeiro dígito é o número 2 indicando que é um Registro Tipo 2, os cinco últimos números são 00006 informando que o registro está na sexta linha do arquivo
2.3. O registro deverá ser finalizado com carriage return/line feed (CR/LF).
2.4. O arquivo deverá iniciar obrigatoriamente com o Registro Tipo 0 e ser finalizado com o Registro Tipo 9.
2.5. O arquivo só poderá ter apenas um Registro Tipo 0 e um Registro Tipo 9, os Registro Tipo 1 e Registro Tipo 2 pode aparece nenhuma ou varias vezes por arquivo.
3. Descritiva dos registros
3.1. Registro Tipo 0
3.1.1. Ocorre uma vez no arquivo, deve ser o primeira registro. Inicialização do arquivo. Registro obrigatório.
|
Campo |
Descritiva |
Tamanho |
Tipo |
Pos. Inic. |
Pos. Final |
|
Tipo |
Valor fixo “0” |
1 |
I |
1 |
1 |
|
DtGera |
Data da geração do arquivo |
8 |
D |
2 |
9 |
|
HsGera |
Hora da geração do arquivo |
6 |
T |
10 |
15 |
|
Versão |
Versão do layout. Valor fixo “1.0.0” |
5 |
A |
16 |
20 |
|
Brancos |
Espaços em branco |
170 |
A |
21 |
190 |
|
Linha |
Número da linha no arquivo |
5 |
I |
191 |
195 |
3.2. Registro Tipo 1
3.2.1. Ocorre nenhuma ou varias vezes no arquivo. Registro com os dados capturados da tabela cliente.
|
Campo |
Descritiva |
Tamanho |
Tipo |
Pos. Inic. |
Pos. Final |
|
Tipo |
Valor fixo “1” |
1 |
I |
1 |
1 |
|
Codigo |
Código do cliente |
5 |
I |
2 |
6 |
|
CPF |
Número do CPF do cliente |
14 |
A |
7 |
20 |
|
Nome |
Nome do cliente |
50 |
A |
21 |
70 |
|
Ender |
Endereço do cliente |
50 |
A |
71 |
120 |
|
Bairro |
Bairro do cliente |
30 |
A |
121 |
150 |
|
Cidade |
Cidade do cliente |
30 |
A |
151 |
180 |
|
UF |
Estado do cliente |
2 |
A |
181 |
182 |
|
DtNasc |
Data de nascimento do cliente |
8 |
D |
183 |
190 |
|
Linha |
Número da linha no arquivo |
5 |
I |
191 |
195 |
3.3. Registro Tipo 2
3.3.1. Ocorre nenhuma ou varias vezes no arquivo. Registro com os dados capturados da tabela produto.
|
Campo |
Descritiva |
Tamanho |
Tipo |
Pos. Inic. |
Pos. Final |
|
Tipo |
Valor fixo “2” |
1 |
I |
1 |
1 |
|
Codigo |
Código do produto |
13 |
A |
2 |
14 |
|
Descr |
Descrição do produto |
50 |
A |
15 |
64 |
|
Valor |
Valor do produto |
15,2 |
N |
65 |
79 |
|
Brancos |
Espaços em branco |
111 |
A |
80 |
190 |
|
Linha |
Número da linha no arquivo |
5 |
I |
191 |
195 |
3.4. Registro Tipo 9
3.4.1. Ocorre uma vez no arquivo, deve ser o último registro. Finaliza o arquivo. Registro obrigatório.
|
Campo |
Descritiva |
Tamanho |
Tipo |
Pos. Inic. |
Pos. Final |
|
Tipo |
Valor fixo “9” |
1 |
I |
1 |
1 |
|
Reg1 |
Quantidade de Registros Tipo 1 no arquivo |
5 |
I |
2 |
6 |
|
Reg2 |
Quantidade de Registros Tipo 2 no arquivo |
5 |
I |
7 |
11 |
|
Brancos |
Espaços em branco |
179 |
A |
12 |
190 |
|
Linha |
Número da linha no arquivo |
5 |
I |
191 |
195 |
4. Posição dos registros dentro do arquivo
|
Registro Tipo 0 |
|
|
Registro Tipo 1 |
|
|
Registro Tipo 2 |
|
Registro Tipo 9 |
|
Artigo criado por http://www.cassic.com.br/ |
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo