Ajuda Formatação de arquivo TXT.. para Exportação
Olá Amigos. estou com duvida na geração de um arquivo TXT..
como precisa ficar formatado
0000000011108010976000157L. E. G. ROCCO & CIA LTDA 010920092709200916022012084
Proble é o seguinte
o Campo Razão social ao todo pode ter 35 posições na hora de salvar a stringList
eu carrego todos os dados e concateno assim
S.Add(numSequencialCabecalho + tipoRegCabecalho + tipoIdentificadorEmpregador + CNPJCPF +
CEI + RAZAOSOCIALNOME + dataInicialRegistros + dataFinalRegistros + dataGeracao + horaGeracao);
^
|
Do jeito que esta agora .. fica tudo junto ... como faço pra reservar as 35 pisições
para a Razão social .. e so depois imprimir os itens seguintes como no layout
desde ja agradeço.
como precisa ficar formatado
0000000011108010976000157L. E. G. ROCCO & CIA LTDA 010920092709200916022012084
Proble é o seguinte
o Campo Razão social ao todo pode ter 35 posições na hora de salvar a stringList
eu carrego todos os dados e concateno assim
S.Add(numSequencialCabecalho + tipoRegCabecalho + tipoIdentificadorEmpregador + CNPJCPF +
CEI + RAZAOSOCIALNOME + dataInicialRegistros + dataFinalRegistros + dataGeracao + horaGeracao);
^
|
Do jeito que esta agora .. fica tudo junto ... como faço pra reservar as 35 pisições
para a Razão social .. e so depois imprimir os itens seguintes como no layout
desde ja agradeço.
Eduardo
Curtidas 0
Respostas
Deivison Melo
16/02/2012
Porquê não cria duas funções de alinhamento e as usa de acordo com sua necessidade, onde você poderá completar com espaços em branco a esquerda ou a direta, assim completando a posição.
Exemplo:
/*Funcao para completar com espaços em branco a esquerda - Inicio*/
function PadL(const S: string; const ComprimentoFinal: integer;
const Complemento: string): string;
var
Texto: string;
begin
Texto := S;
while Length(Texto) < ComprimentoFinal do
Texto := Texto + Complemento;
Result := Copy(Texto, 1, ComprimentoFinal);
end;
/*Funcao para completar com espaços em branco a esquerda - fim*/
/*Funcao para completar com espaços em branco a direita - inicio*/
function PadR(const S: string; const ComprimentoFinal: integer;
const Complemento: string = ): string;
var
Texto: string;
begin
Texto := S;
while Length(Texto) < ComprimentoFinal do
Texto := Complemento + Texto;
Result := Copy(Texto, 1, ComprimentoFinal);
end;
/*Funcao para completar com espaços em branco a direita - fim*/
link de tópico de onde peguei essas informações:
http://www.activedelphi.com.br/forum/viewtopic.php?t=67650&sid=c11428e25c6e5ccca73deed9a1814f6f
Qualquer coisa estou à disposição!
Emanoel Deivison
Recife - PE
Exemplo:
/*Funcao para completar com espaços em branco a esquerda - Inicio*/
function PadL(const S: string; const ComprimentoFinal: integer;
const Complemento: string): string;
var
Texto: string;
begin
Texto := S;
while Length(Texto) < ComprimentoFinal do
Texto := Texto + Complemento;
Result := Copy(Texto, 1, ComprimentoFinal);
end;
/*Funcao para completar com espaços em branco a esquerda - fim*/
/*Funcao para completar com espaços em branco a direita - inicio*/
function PadR(const S: string; const ComprimentoFinal: integer;
const Complemento: string = ): string;
var
Texto: string;
begin
Texto := S;
while Length(Texto) < ComprimentoFinal do
Texto := Complemento + Texto;
Result := Copy(Texto, 1, ComprimentoFinal);
end;
/*Funcao para completar com espaços em branco a direita - fim*/
link de tópico de onde peguei essas informações:
http://www.activedelphi.com.br/forum/viewtopic.php?t=67650&sid=c11428e25c6e5ccca73deed9a1814f6f
Qualquer coisa estou à disposição!
Emanoel Deivison
Recife - PE
GOSTEI 0
Alisson Santos
16/02/2012
Olá Amigos. estou com duvida na geração de um arquivo TXT..
como precisa ficar formatado
0000000011108010976000157L. E. G. ROCCO & CIA LTDA 010920092709200916022012084
Proble é o seguinte
o Campo Razão social ao todo pode ter 35 posições na hora de salvar a stringList
eu carrego todos os dados e concateno assim
S.Add(numSequencialCabecalho + tipoRegCabecalho + tipoIdentificadorEmpregador + CNPJCPF +
CEI + RAZAOSOCIALNOME + dataInicialRegistros + dataFinalRegistros + dataGeracao + horaGeracao);
^
|
Do jeito que esta agora .. fica tudo junto ... como faço pra reservar as 35 pisições
para a Razão social .. e so depois imprimir os itens seguintes como no layout
desde ja agradeço.
como precisa ficar formatado
0000000011108010976000157L. E. G. ROCCO & CIA LTDA 010920092709200916022012084
Proble é o seguinte
o Campo Razão social ao todo pode ter 35 posições na hora de salvar a stringList
eu carrego todos os dados e concateno assim
S.Add(numSequencialCabecalho + tipoRegCabecalho + tipoIdentificadorEmpregador + CNPJCPF +
CEI + RAZAOSOCIALNOME + dataInicialRegistros + dataFinalRegistros + dataGeracao + horaGeracao);
^
|
Do jeito que esta agora .. fica tudo junto ... como faço pra reservar as 35 pisições
para a Razão social .. e so depois imprimir os itens seguintes como no layout
desde ja agradeço.
Gostaria de saber para que tipo de layout está criando esse arquivo.
parece ser um arquivo de remessa para o banco.
Se puder informar qual o tipo de layout poderei auxiliar sim.
GOSTEI 0
Eduardo
16/02/2012
Opa Alison estou em caso to sem a documentação mas é para geração do arquivo AFDT de um sistema de tratamento de Ponto
esse arquivo vão todas as batidas dos funcionários. tratadas e não tradas pelo sistema.. desde já agradeço
esse arquivo vão todas as batidas dos funcionários. tratadas e não tradas pelo sistema.. desde já agradeço
GOSTEI 0