Tratamentos de datas e criação de Logs
Bom dia pessoal
Como faço para uma variavel receber o data no formato AAMMDD..não pode ter nenhum outro caracter
e como eu crio um arq de log?
obrigado
Como faço para uma variavel receber o data no formato AAMMDD..não pode ter nenhum outro caracter
e como eu crio um arq de log?
obrigado
$grandaum$
Curtidas 0
Respostas
Paullsoftware
02/05/2006
1 - [quote:a311be8307=´$Grandaum$´]
use uma variável do tipo string, e sempre que for re-utiliza-la como data use a converção [b:a311be8307]FormatDateTime[/b:a311be8307]
2 - [quote:a311be8307=´$Grandaum$´]
existe várias maneiras de fazer isso eu gosto de trabalhar com applicationEvents e no OnException coloque:
espero ter ajudado :wink:
Como faço para uma variavel receber o data no formato AAMMDD..não pode ter nenhum outro caracter
[/quote:a311be8307]use uma variável do tipo string, e sempre que for re-utiliza-la como data use a converção [b:a311be8307]FormatDateTime[/b:a311be8307]
2 - [quote:a311be8307=´$Grandaum$´]
e como eu crio um arq de log?
[/quote:a311be8307]existe várias maneiras de fazer isso eu gosto de trabalhar com applicationEvents e no OnException coloque:
var NomeDoLog: string; Arquivo: TextFile; begin NomeDoLog := ChangeFileExt(Application.Exename, ´.log´); AssignFile(Arquivo, NomeDoLog); if FileExists(NomeDoLog) then Append(arquivo) else ReWrite(arquivo); try WriteLn(arquivo, ´****************** ´+DateTimeToStr(Now)+ ´ ****************** ´); Writeln(arquivo, ´Erro Ocorrido: ´); Writeln(arquivo,E.Message); Writeln(arquivo, ´Janela: ´+ Screen.ActiveForm.Name + ´ Controle Ativo: ´+Screen.ActiveControl.Name); WriteLn(arquivo, ´----------------------------------------------------------------------´); MessageDlg(´Ocorreu o seguinte erro:´+e.Message,mtError,[mbOK],0);//aqui você pode persolizar a mensagem de erro finally CloseFile(arquivo) end;
espero ter ajudado :wink:
GOSTEI 0
Edilcimar
02/05/2006
Ano,Mes,Dia : Word;
Arquivo : TextFile;
MeuTexto : String;
DecodeDate(Now, Ano, Mes, Dia)
MeuTexto := IntToStr(Ano)+IntToStr(Mes)+IntToStr(Dia);
Para criar o log
AssignFile(Arquivo,MeuTexto);
Arquivo : TextFile;
MeuTexto : String;
DecodeDate(Now, Ano, Mes, Dia)
MeuTexto := IntToStr(Ano)+IntToStr(Mes)+IntToStr(Dia);
Para criar o log
AssignFile(Arquivo,MeuTexto);
GOSTEI 0
$grandaum$
02/05/2006
1 - [quote:a0656394a1=´$Grandaum$´][quote:a0656394a1]Como faço para uma variavel receber o data no formato AAMMDD..não pode ter nenhum outro caracter
[/quote:a0656394a1]use uma variável do tipo string, e sempre que for re-utiliza-la como data use a converção [b:a0656394a1]FormatDateTime[/b:a0656394a1]
2 - [quote:a0656394a1=´$Grandaum$´]
e como eu crio um arq de log?
[/quote:a0656394a1]existe várias maneiras de fazer isso eu gosto de trabalhar com applicationEvents e no OnException coloque:
var NomeDoLog: string; Arquivo: TextFile; begin NomeDoLog := ChangeFileExt(Application.Exename, ´.log´); AssignFile(Arquivo, NomeDoLog); if FileExists(NomeDoLog) then Append(arquivo) else ReWrite(arquivo); try WriteLn(arquivo, ´****************** ´+DateTimeToStr(Now)+ ´ ****************** ´); Writeln(arquivo, ´Erro Ocorrido: ´); Writeln(arquivo,E.Message); Writeln(arquivo, ´Janela: ´+ Screen.ActiveForm.Name + ´ Controle Ativo: ´+Screen.ActiveControl.Name); WriteLn(arquivo, ´----------------------------------------------------------------------´); MessageDlg(´Ocorreu o seguinte erro:´+e.Message,mtError,[mbOK],0);//aqui você pode persolizar a mensagem de erro finally CloseFile(arquivo) end;
espero ter ajudado :wink:[/quote:a0656394a1]
ele tah apresentando um erro nessa linha
Writeln(arquivo,E.Message);
Undeclared Indentifier.´E´
oq seria issu?
ele cria algum txt para mim como q eu vou ler o arq depois??
obrigado pela ajuda
GOSTEI 0
$grandaum$
02/05/2006
1 - [quote:6c51f06cfc=´$Grandaum$´][quote:6c51f06cfc]Como faço para uma variavel receber o data no formato AAMMDD..não pode ter nenhum outro caracter
[/quote:6c51f06cfc]use uma variável do tipo string, e sempre que for re-utiliza-la como data use a converção [b:6c51f06cfc]FormatDateTime[/b:6c51f06cfc]
2 - [quote:6c51f06cfc=´$Grandaum$´]
e como eu crio um arq de log?
[/quote:6c51f06cfc]existe várias maneiras de fazer isso eu gosto de trabalhar com applicationEvents e no OnException coloque:
var NomeDoLog: string; Arquivo: TextFile; begin NomeDoLog := ChangeFileExt(Application.Exename, ´.log´); AssignFile(Arquivo, NomeDoLog); if FileExists(NomeDoLog) then Append(arquivo) else ReWrite(arquivo); try WriteLn(arquivo, ´****************** ´+DateTimeToStr(Now)+ ´ ****************** ´); Writeln(arquivo, ´Erro Ocorrido: ´); Writeln(arquivo,E.Message); Writeln(arquivo, ´Janela: ´+ Screen.ActiveForm.Name + ´ Controle Ativo: ´+Screen.ActiveControl.Name); WriteLn(arquivo, ´----------------------------------------------------------------------´); MessageDlg(´Ocorreu o seguinte erro:´+e.Message,mtError,[mbOK],0);//aqui você pode persolizar a mensagem de erro finally CloseFile(arquivo) end;
espero ter ajudado :wink:[/quote:6c51f06cfc]
ele tah apresentando um erro nessa linha
Writeln(arquivo,E.Message);
Undeclared Indentifier.´E´
oq seria issu?
ele cria algum txt para mim como q eu vou ler o arq depois??
obrigado pela ajuda
GOSTEI 0
$grandaum$
02/05/2006
1 - [quote:8aa500d9a5=´$Grandaum$´][quote:8aa500d9a5]Como faço para uma variavel receber o data no formato AAMMDD..não pode ter nenhum outro caracter
[/quote:8aa500d9a5]use uma variável do tipo string, e sempre que for re-utiliza-la como data use a converção [b:8aa500d9a5]FormatDateTime[/b:8aa500d9a5]
2 - [quote:8aa500d9a5=´$Grandaum$´]
e como eu crio um arq de log?
[/quote:8aa500d9a5]existe várias maneiras de fazer isso eu gosto de trabalhar com applicationEvents e no OnException coloque:
var NomeDoLog: string; Arquivo: TextFile; begin NomeDoLog := ChangeFileExt(Application.Exename, ´.log´); AssignFile(Arquivo, NomeDoLog); if FileExists(NomeDoLog) then Append(arquivo) else ReWrite(arquivo); try WriteLn(arquivo, ´****************** ´+DateTimeToStr(Now)+ ´ ****************** ´); Writeln(arquivo, ´Erro Ocorrido: ´); Writeln(arquivo,E.Message); Writeln(arquivo, ´Janela: ´+ Screen.ActiveForm.Name + ´ Controle Ativo: ´+Screen.ActiveControl.Name); WriteLn(arquivo, ´----------------------------------------------------------------------´); MessageDlg(´Ocorreu o seguinte erro:´+e.Message,mtError,[mbOK],0);//aqui você pode persolizar a mensagem de erro finally CloseFile(arquivo) end;
espero ter ajudado :wink:[/quote:8aa500d9a5]
ele tah apresentando um erro nessa linha
Writeln(arquivo,E.Message);
Undeclared Indentifier.´E´
oq seria issu?
ele cria algum txt para mim como q eu vou ler o arq depois??
obrigado pela ajuda
GOSTEI 0
$grandaum$
02/05/2006
Ano,Mes,Dia : Word;
Arquivo : TextFile;
MeuTexto : String;
DecodeDate(Now, Ano, Mes, Dia)
MeuTexto := IntToStr(Ano)+IntToStr(Mes)+IntToStr(Dia);
Para criar o log
AssignFile(Arquivo,MeuTexto);
Me desculpe mas eu naum entendi como uma variavel vai receber esse valor com a data jah transformada.......
GOSTEI 0
Edilcimar
02/05/2006
esta variável meutexto, é para receber o aaaammdd e depois será usada para criar o arquivo log, basta usar no arquivo com rewrite ou append
GOSTEI 0
Paullsoftware
02/05/2006
aqui ta compilando normalmente...
procure pelo componente [b:f2cb5fd564]ApplicationEvents1[/b:f2cb5fd564] procure pelo Evento OnException e coloque o código informado...
vamos tertar...
só pra testar podemos forçar uma excerção coloque um Edit e um botão clique duas dezes sobre ele e coloque:
depois que for gerada a exceção será criado um arquivo de log dentro da página do seu projeto com o nome do seu exe.log
procure pelo componente [b:f2cb5fd564]ApplicationEvents1[/b:f2cb5fd564] procure pelo Evento OnException e coloque o código informado...
procedure TForm1.ApplicationEvents1Exception(Sender: TObject; E: Exception); var NomeDoLog: string; Arquivo: TextFile; begin NomeDoLog := ChangeFileExt(Application.Exename, ´.log´); AssignFile(Arquivo, NomeDoLog); if FileExists(NomeDoLog) then Append(arquivo) else ReWrite(arquivo); try WriteLn(arquivo, ´****************** ´+DateTimeToStr(Now)+ ´ ****************** ´); Writeln(arquivo, ´Erro Ocorrido: ´); Writeln(arquivo,E.Message); Writeln(arquivo, ´Janela: ´+ Screen.ActiveForm.Name + ´ Controle Ativo: ´+Screen.ActiveControl.Name); WriteLn(arquivo, ´----------------------------------------------------------------------´); MessageDlg(´Ocorreu o seguinte erro:´+e.Message,mtError,[mbOK],0);//aqui você pode persolizar a mensagem de erro finally CloseFile(arquivo) end; end;
vamos tertar...
só pra testar podemos forçar uma excerção coloque um Edit e um botão clique duas dezes sobre ele e coloque:
IntToStr(Edit1.text);
depois que for gerada a exceção será criado um arquivo de log dentro da página do seu projeto com o nome do seu exe.log
GOSTEI 0