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/ |