ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Atualizar banco + txt, ao clicar no botão

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
lucas_spohr
Aprendiz
Aprendiz


Registrado: Quinta-Feira, 30 de Novembro de 2006
Mensagens: 115
Localização: Horizontina - RS

MensagemEnviada: Ter Nov 20, 2007 11:29 am    Assunto: Atualizar banco + txt, ao clicar no botão Responder com Citaçã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
Ver o perfil de Usuários Enviar Mensagem Particular
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Ter Nov 20, 2007 6:53 pm    Assunto: Responder com Citação

Cara, pelo que entendi, vc quer atualizar o seu banco de dados e um arquivo texto ao mesmo tempo, seria isso ???
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
lucas_spohr
Aprendiz
Aprendiz


Registrado: Quinta-Feira, 30 de Novembro de 2006
Mensagens: 115
Localização: Horizontina - RS

MensagemEnviada: Qua Nov 21, 2007 1:49 pm    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB