LiMaO 0 Denunciar post Postado Agosto 2, 2007 preciso fazer um programa seguindo isso:ler um arquivo sdf do banco de dados, nele estao contidos produtos cadastrados nos bancos...esse arquivo sdf é dividido em varias partes, da coluna 14 a 26 é o codigo de barras do produto, da coluna 27 a 56 a descrição do produto...preciso fazer um programa que leia essas colunas e mostrasse na tela o produto e o codigo de barras...alguem pode me ajudar por favor??? Compartilhar este post Link para o post Compartilhar em outros sites
Carlos Edu 0 Denunciar post Postado Agosto 2, 2007 Bao tarde Dr.Seguinte o cód abaixo deve resolver.você deve declarar o arq.var arq: TextFile; Vamos precisar também de uma variável tipo string para armazenar cada linha lida do arquivo: var linha: String; Antes de se iniciar a leitura do arquivo, precisamos associar a variavel TextFile com um arquivo fisicamente armazenado no disco: AssignFile ( arq, 'C:\AUTOEXEC.BAT' ); >> este é o seu arquivo o end onde ele esta. Reset ( arq ); A rotina AssignFile faz a associação enquanto Reset abre efetivamente o arquivo para leitura. AssignFile corresponde à Assign do Turbo Pascal. Em seguida é necessário fazer uma leitura ao arquivo, para isto utilizaremos a procedure ReadLn: ReadLn ( arq, linha ); O comando acima lê apenas uma linha de cada vez, assim precisamos de um loop para efetuar várias leituras até que o arquivo acabe. Para verificar o fim do arquivo, utilizaremos a função Eof: while not Eof ( arq ) do Agora uma rotina quase completa para fazer a leitura de um arquivo texto. Esta rotina recebe como parâmetro o nome do arquivo que será lido: procedure percorreArquivoTexto ( nomeDoArquivo: String ); var arq: TextFile; linha: String; begin AssignFile ( arq, nomeDoArquivo ); Reset ( arq ); ReadLn ( arq, linha ); while not Eof ( arq ) do begin { Processe a linha lida aqui. } { Para particionar a linha lida em pedaços, use a função Copy. } Acima você devera separa as posiçoes que precisa. Tipo 'copy(linha,1,26)'ReadLn ( arq, linha ); end; CloseFile ( arq ); end; Espero ter ajudado. Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Agosto 2, 2007 Eu já tinha visto isso na net, mas ainda assim não consigo fazer...eu sei como criar e ler o arquivo texto, mas como eu mostro ele na tela de um form?por ex em um DBEdit?:/ Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Agosto 2, 2007 Basta enviar para um Edit o conteudo da variavel Linha ... Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Agosto 8, 2007 Estou conseguindo fazer a leitura e escrita de arquivos txt, mas como eu faço para ler determinada coluna do arquivo?O meu arquivo aqui tem cerca de 23 mil linhas como eu vejo determinada parte dessa linha para mostra-la em um DBGrid? Compartilhar este post Link para o post Compartilhar em outros sites
bdexterholland 0 Denunciar post Postado Agosto 8, 2007 Variáveis do tipo string aceitam referenciar os caracteres por índices, ex.: nome: string;begin nome := 'William de Oliveira Ferreira'; showmessage (nome[12]);end; Compartilhar este post Link para o post Compartilhar em outros sites
bdexterholland 0 Denunciar post Postado Agosto 8, 2007 o pascal tem também a função copy que tem a seguinte sintaxe: copy (<origen>, <a partir>, <quantos>); exemplo: nome : string;begin nome := 'William de Oliveira Ferreira'; showmessage (copy(nome, 12, 8); Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Agosto 10, 2007 o pascal tem também a função copy que tem a seguinte sintaxe:copy (<origen>, <a partir>, <quantos>);exemplo: nome : string;begin nome := 'William de Oliveira Ferreira'; showmessage (copy(nome, 12, 8); Valeu!To conseguindo com o copy :DAgora to com outro problema :/Eu preciso puxar esse arquivo pro sistema, por exemplo, a pessoa digita la no edit do cupom fiscal "1", eu tenho que ir no diretório onde está esse arquivo e puxar o 1º arquivo para usa-lo, nisso eu tenho um DBGrid no form e quero que todos os produtos contidos nesse arquivo texto apareçam no DBGrid...Eu tenho que importar esse arquivo para uma tabela para aparecer no DBGrid?Se sim, como faço para importar arquivos textos para tabelas?Eu ja procurei em outros lugares, mas todos da algum erro como identificador nao encontrado, sendo que estou apenas abrindo a tabela.:/ Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Agosto 17, 2007 eae alguem pode me ajudar? Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Agosto 17, 2007 Pq naum usa um Banco de Dados pra isso??? seria mto mais facil pra manipular os dados ...num DBGrid axo que naum é possivel naum ... com um pouco de sacrificio e mto trabalho você podera exibir isto num ListView por exemplo .... Compartilhar este post Link para o post Compartilhar em outros sites
Minarini 0 Denunciar post Postado Agosto 17, 2007 olha se você esta trabalhando com TEF esse não é o melhor jeito pq eu trabalho com tef e minha rotina funciona perfeitamente se você esta trabalhando com tef_dial e tef_disk eu tenho uma boa solução pra você. Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Agosto 17, 2007 Pq naum usa um Banco de Dados pra isso??? seria mto mais facil pra manipular os dados ...num DBGrid axo que naum é possivel naum ... com um pouco de sacrificio e mto trabalho você podera exibir isto num ListView por exemplo ....nao faço, pq as informaçoes que preciso estao em um arquivo txt Compartilhar este post Link para o post Compartilhar em outros sites
Minarini 0 Denunciar post Postado Agosto 17, 2007 é sistema de frente de caixa? Compartilhar este post Link para o post Compartilhar em outros sites
bdexterholland 0 Denunciar post Postado Agosto 17, 2007 o pascal tem também a função copy que tem a seguinte sintaxe:copy (<origen>, <a partir>, <quantos>);exemplo: nome : string; begin nome := 'William de Oliveira Ferreira'; showmessage (copy(nome, 12, 8); Valeu!To conseguindo com o copy :D Agora to com outro problema :/Eu preciso puxar esse arquivo pro sistema, por exemplo, a pessoa digita la no edit do cupom fiscal "1", eu tenho que ir no diretório onde está esse arquivo e puxar o 1º arquivo para usa-lo, nisso eu tenho um DBGrid no form e quero que todos os produtos contidos nesse arquivo texto apareçam no DBGrid...Eu tenho que importar esse arquivo para uma tabela para aparecer no DBGrid?Se sim, como faço para importar arquivos textos para tabelas?Eu ja procurei em outros lugares, mas todos da algum erro como identificador nao encontrado, sendo que estou apenas abrindo a tabela.:/Bom, importar do dbgrid eu não sei exatamente, mas podemos importar para um grid comum...o pascal (delphi) tem uma função chamada findfirst que é usado para encontrar o primeiro arquivo dentro de um diretório mas eu não conheço a sintaxe, na veradade, eu nunca fiz uso dela, olha no help do delphi para maiores informações. Agora, já com o nome do arquivo e o arquivo sendo um arquivo de texto, podemos abrir e ler o seu conteúdo......Para abrir um arquivo de texto, precisamos declarar uma variável para representar esse arquivo no programa e manipularemos essa variável como se fosse o arquivo realmente...var arq_texto : textfile; frase: string;begin assignfile (arq_texto,'c:\arquivo.txt'); rewrite (arq_texto); // o comando rewrite (re)cria o arquivo, ou seja, se o arquivo não exite, cria um novo, se já existe, apaga o arquivo e cria um novo // se não quiser recriar o arquivo, use um reset para abrir o arquivo em somente-leitura ou appendfile para abrir com o ponteiro no fim do arquivo write (arq_texto, 'Bola de futebol'); closefile (arq_texto); reset (arq_texto); read (arq_texto, frase); showmessage (frase);end;Bom, o básico é isso, tem tempo que não mexo com manipulação de arquivos deste jeito, portanto eu posso ter errado a sequencia dos parâmetros ou ter confundido os nomes de algumas procedures mas se estiver errado, pode procurar algo parecido...mais ajuda é só falar... Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Agosto 17, 2007 é sistema de frente de caixa?sim Compartilhar este post Link para o post Compartilhar em outros sites
LiMaO 0 Denunciar post Postado Setembro 6, 2007 desculpe reviver o tópico, mas é que preciso saber como fazer esse programa:/alguem mais sabe como faze-lo?precisaria jogar um txt em uma tabela para a pessoa escolher os produtos em um dbgrid para troca e logo após isso modificar esse txt no mesmo local onde foi pego o produto...ex: coluna 27-50 nome do produto é pego na tabela e jogado no dbgrid, após escolha de quais produtos serao trocados esses produtos modificam esse arquivo txt no mesmo local onde foi pego o produto, reescreve por cima das colunas 27-50 Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Setembro 6, 2007 Teria de fazer da mesma forma, lê, altera e salva o txt, no caso se pudesse usar XML seria muito mais simples e prático... Compartilhar este post Link para o post Compartilhar em outros sites