 |
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
lucas_spohr Aprendiz

Registrado: Quinta-Feira, 30 de Novembro de 2006 Mensagens: 115 Localização: Horizontina - RS
|
Enviada: Ter Nov 20, 2007 11:29 am Assunto: Atualizar banco + txt, ao clicar no botão |
|
|
Ae pessoal! blz?
Precisaria do seguinte...
Para funcionar o terminal de consultas, em uma certa máquina o programinha deverá ficar sempre aberto. Os preços dos produtos, são atualizados pelo ERP. Digamos que, para teste, eu queira atualizar um preço pelo IBExpert. Altero, ENTER, Commit. Produto alterado. Como o programinha do terminal ficará sempre aberto, automaticamente, o preço do produto no projeto do terminal, não se atualizará automaticamente, sem que alguém clique num botão, para Atualizar.
No OnCreate do meu DataModule, tenho a seguinte rotina:
CdsProdutos.Open;
AssignFile(f,ExtractFilePath(ParamStr(0)) + 'pricetab.txt');//Indica o arquivo que irá ser gravado
Rewrite(f);//Indica que o arquivo será criado ou reescrito (caso já exista)
//Aqui você coloca o seu laço
CdsProdutos.First;
While not CdsProdutos.eof do
Begin
Write(f, CdsProdutos.FieldByName('Barra').AsString + '|');//Escreve e continua na mesma linha
Write(f, CdsProdutos.FieldByName('Descricao').AsString + '|');//Escreve e continua na mesma linha
WriteLn(f,CdsProdutos.FieldByName('Preco').AsString +'|');//Escreve e salta para a próxima linha
CdsProdutos.Next;
end;
CloseFile(f);//Esvazia o buffer e joga no arquivo de texto
No botão atualizar, como que eu poderia fazer?
Seria, no caso... Atualizar o banco e reescrever no TXT, os produtos novamente...
Desde já agradeço.
Muito obrigado! |
|
Voltar ao Topo |
|
 |
Ghost_Rider Colaborador

Registrado: Segunda-Feira, 6 de Outubro de 2003 Mensagens: 4437
|
Enviada: Ter Nov 20, 2007 6:53 pm Assunto: |
|
|
Cara, pelo que entendi, vc quer atualizar o seu banco de dados e um arquivo texto ao mesmo tempo, seria isso ??? |
|
Voltar ao Topo |
|
 |
lucas_spohr Aprendiz

Registrado: Quinta-Feira, 30 de Novembro de 2006 Mensagens: 115 Localização: Horizontina - RS
|
Enviada: Qua Nov 21, 2007 1:49 pm Assunto: |
|
|
cara, consegui!
apenas adaptei o código do OnCreate do DataModule... Segue, pra quem interessar:
procedure TForm1.BtnImgAddClick(Sender: TObject);
var
f: textfile;
begin
Dados.CdsProdutos.Close;
Dados.CdsProdutos.Open;
if FileExists(ExtractFilePath(Application.ExeName)+'pricetab.txt') then
DeleteFile(ExtractFilePath(Application.ExeName)+'pricetab.txt');
AssignFile(f,ExtractFilePath(Application.ExeName) + 'pricetab.txt');
//AssignFile(f,ExtractFilePath(Application.ExeName) + 'pricetab.txt');
Rewrite(f);
Dados.CdsProdutos.First;
While not Dados.CdsProdutos.eof do
Begin
Write(f, Dados.CdsProdutos.FieldByName('Barra').AsString + '|');
Write(f, Dados.CdsProdutos.FieldByName('Mercadoria').AsString + '|');
WriteLn(f,Dados.CdsProdutos.FieldByName('Preco').AsString +'|');
Dados.CdsProdutos.Next;
end;
CloseFile(f);
MontaTabela(ExtractFilePath(ParamStr(0)) + 'pricetab.txt',Form1.StringGrid1);
end;
O principal, foi o "MontaTabela", que traz os registros do TXT para o StringGrid!
vlw... t+ |
|
Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|