Re: RES: [delphi-br] Erro Estranho DateTime(mudei)

2005-09-16 Por tôpico Gabriel Filho
Bom dia amigo...


Tenho três funções q desenvolvi aqui no trabalho, veja se te ajuda:



Function CalcTime(Const TempoInic,TempoFim : TdateTime): string;
var
Calc : real;
begin
Calc:=Tempoparareal(TimeToStr(TempoFim))-Tempoparareal(TimeToStr(TempoInic));
if Calc  0 then Calc:=Calc+24;
Result:=RealparaTempo(Calc,2);
end;

Function TempoparaReal(Const Tempo:string ):Real;
Var
P_1,P_2,P_3:string;

begin
P_1:=copy(Tempo,0,Pos(':',Tempo)-1);
P_3:= copy(Tempo,Pos(':',Tempo)+1,length(Tempo));
P_2:=copy(P_3,0,Pos(':',P_3)-1);
P_3:= copy(P_3,Pos(':',P_3)+1,length(P_3));


Result:= StrToInt(P_1)+(StrToInt(P_2))/60 +
(StrToInt(P_3)/3600);
end;

Function RealparaTempo(Const RealNum:Real; NumZerosHora:integer):String;
Var
Zeros,Hora,Minuto,Segundo:string;
Aux:variant;
i:integer;
begin
for i:=1 to NumZerosHora do
Zeros := Zeros+'0';

Aux:=Int(RealNum);
Hora:= FormatFloat(Zeros,Aux);
Minuto:= FloatToStr(Frac(RealNum));
Aux:= Int(StrToFloat(Minuto)*60);
Minuto:=FormatFloat('00',Aux);
Aux:= Frac(Frac(RealNum)*60);
Segundo:= FormatFloat('00',Round(Aux*60));
if StrToInt(Segundo)  59 then
begin
Segundo:='00';
Minuto:=FormatFloat('00',StrToInt(Minuto)+1);
end;

if StrToInt(Minuto)  59 then
begin
Minuto:='00';
Hora:=FormatFloat(Zeros,StrToInt(Hora)+1);
end;

Result:= Hora+':'+Minuto+':'+Segundo;

end;


[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[delphi-br] Erro Estranho DateTime

2005-09-15 Por tôpico Rodrigo Mota
Galera tenho essa função, que retorna a diferença de hora e tal. Ela
funciona
 
function TRelfrmHoras.DifHora(Inicio, Fim: String): String;
{Retorna a diferença entre duas horas}
Var H1, H2, Total: TDateTime;
begin
  H1 := StrToTime(Inicio);
  H2 := StrToTime(Fim);
  Total := H2 - H1;
  Result := TimeToStr(Total);
end;
 
 
Estou usando ela no evento do quick rep BeforePrint
 
lblTempo.Caption :=
DifHora(queryRelHora.DataSetField.DataSet.FieldByName('ext_hrfim').Text,
queryRelHora.DataSetField.DataSet.FieldByName('ext_hrini').Text);
 
esta dando um Access Violation.violentoestou usando a TSqlQuery
do Dbexpress e db SQLServer os dois campos
são Varchar(5)
 
quem puder ajudar...ja agradeço qq sugestão
 
Rodrigo Mota
 


[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





RES: [delphi-br] Erro Estranho DateTime

2005-09-15 Por tôpico Filipe Xavier Ramalho
Pq vc não faz assim?

if (not queryRelHora.DataSetField.DataSet.FieldByName('ext_hrfim').isnull)
and (not queryRelHora.DataSetField.DataSet.FieldByName('ext_hrini').isnull)
then
  lblTempo.Caption :=
IntToStr(HoursBetween(queryRelHora.DataSetField.DataSet.FieldByName('ext_hrf
im').AsDateTime,queryRelHora.DataSetField.DataSet.FieldByName('ext_hrini').A
sDateTime);

  -Mensagem original-
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
nome de Rodrigo Mota
  Enviada em: quinta-feira, 15 de setembro de 2005 10:44
  Para: delphi-br@yahoogrupos.com.br
  Assunto: [delphi-br] Erro Estranho DateTime


  Galera tenho essa função, que retorna a diferença de hora e tal. Ela
  funciona

  function TRelfrmHoras.DifHora(Inicio, Fim: String): String;
  {Retorna a diferença entre duas horas}
  Var H1, H2, Total: TDateTime;
  begin
H1 := StrToTime(Inicio);
H2 := StrToTime(Fim);
Total := H2 - H1;
Result := TimeToStr(Total);
  end;


  Estou usando ela no evento do quick rep BeforePrint

  lblTempo.Caption :=
  DifHora(queryRelHora.DataSetField.DataSet.FieldByName('ext_hrfim').Text,
  queryRelHora.DataSetField.DataSet.FieldByName('ext_hrini').Text);

  esta dando um Access Violation.violentoestou usando a TSqlQuery
  do Dbexpress e db SQLServer os dois campos
  são Varchar(5)

  quem puder ajudar...ja agradeço qq sugestão

  Rodrigo Mota



  [As partes desta mensagem que não continham texto foram removidas]



  --
   FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

  Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

  Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]



Yahoo! Grupos, um serviço oferecido por:
  PUBLICIDADE





--
  Links do Yahoo! Grupos

a.. Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

b.. Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
Serviço do Yahoo!.



[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




RES: [delphi-br] Erro Estranho DateTime

2005-09-15 Por tôpico Andreano Lanusse
Rodrigo,
 
Access Violation ocorre quando você tenta acessar um objeto que não está criado.
 
Muito provavelmente o DataSetField ou DataSet está sem associação.
 
Debuga a aplicação e me diga em que linha que ocorre o erro.
 
[]'s
Andreano Lanusse
System Engineer
Borland Latin America
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED]  - www.borland.com.br 
blocked::http://www.borland.com.br/ 

 

A Borland Software é líder global em soluções independentes de plataforma para 
o Software Delivery Optimization, auxiliando nossos clientes a resolverem as 
restrições no desenvolvimento de aplicações nos dias de hoje, para maximizar o 
valor do negócio de seu software.




De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Rodrigo 
Mota
Enviada em: quinta-feira, 15 de setembro de 2005 10:44
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Erro Estranho DateTime


Galera tenho essa função, que retorna a diferença de hora e tal. Ela
funciona

function TRelfrmHoras.DifHora(Inicio, Fim: String): String;
{Retorna a diferença entre duas horas}
Var H1, H2, Total: TDateTime;
begin
  H1 := StrToTime(Inicio);
  H2 := StrToTime(Fim);
  Total := H2 - H1;
  Result := TimeToStr(Total);
end;


Estou usando ela no evento do quick rep BeforePrint

lblTempo.Caption :=
DifHora(queryRelHora.DataSetField.DataSet.FieldByName('ext_hrfim').Text,
queryRelHora.DataSetField.DataSet.FieldByName('ext_hrini').Text);

esta dando um Access Violation.violentoestou usando a TSqlQuery
do Dbexpress e db SQLServer os dois campos
são Varchar(5)

quem puder ajudar...ja agradeço qq sugestão

Rodrigo Mota



[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED] ou [EMAIL PROTECTED]




Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE

 
http://br.rd.yahoo.com/SIG=12frbmh34/M=365837.7000707.7924794.2369893/D=brclubs/S=2137111264:HM/Y=BR/EXP=1126799098/A=2950750/R=2/id=noscript/SIG=10tift5qr/*http://br.movies.yahoo.com/
 



Links do Yahoo! Grupos


*   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/
  
*   Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] 
  
*   O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço 
do Yahoo! http://br.yahoo.com/info/utos.html . 




[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





RES: [delphi-br] Erro Estranho DateTime(mudei)

2005-09-15 Por tôpico Rodrigo Mota
Dei uma mudada para diminuir os códigos, 
FUNÇÃO###
function TRelfrmHoras.DifHora(Inicio, Fim: String): String;
{Retorna a diferença entre duas horas}
Var H1, H2, Total: TDateTime;
begin
  H1 := StrToTime(Inicio);
  H2 := StrToTime(Fim);
  Total := H2 - H1;
  Result := TimeToStr(Total);
end;
PROCEDURE BEFOREPRINT
procedure TRelfrmHoras.qrRepBeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
  var Hr1, Hr2: String;
 Var i: Integer;
begin
for i:= 0 to queryRelHora.RecordCount do
begin
if queryRelHora.Fields[4].AsString = '1' then
  begin
lblAtendimento.Caption := 'Visita';
   // ShowMessage('visita');
  end else begin
  //ShowMessage('remoto'); //  NÃO ESTA MUDANDO...SOH APARECE REMOTO NA
IMPRESSAO
  lblAtendimento.Caption := 'Remoto';
  end;
  Hr1 := queryRelHora.Fields[7].AsString; //ext_hrini
  Hr2 := queryRelHora.Fields[8].AsString; //ext_hr
  // ShowMessage(Hr1);
   lblTempo.Caption := DifHora(Hr2,Hr1); // AGORA DA UM ERRO DE
CONVERSAO(ECONVERTERROR)
  queryRelHora.Next;
 
end;
 
 
 
Rodrigo Mota
 
-Mensagem original-
De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
Em nome de Andreano Lanusse
Enviada em: quinta-feira, 15 de setembro de 2005 14:31
Para: delphi-br@yahoogrupos.com.br
Assunto: RES: [delphi-br] Erro Estranho DateTime
 
Rodrigo,

Access Violation ocorre quando você tenta acessar um objeto que não está
criado.

Muito provavelmente o DataSetField ou DataSet está sem associação.

Debuga a aplicação e me diga em que linha que ocorre o erro.

[]'s
Andreano Lanusse
System Engineer
Borland Latin America
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED]  - www.borland.com.br
blocked::http://www.borland.com.br/ 



A Borland Software é líder global em soluções independentes de
plataforma para o Software Delivery Optimization, auxiliando nossos
clientes a resolverem as restrições no desenvolvimento de aplicações nos
dias de hoje, para maximizar o valor do negócio de seu software.




De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
Em nome de Rodrigo Mota
Enviada em: quinta-feira, 15 de setembro de 2005 10:44
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Erro Estranho DateTime


Galera tenho essa função, que retorna a diferença de hora e tal. Ela
funciona

function TRelfrmHoras.DifHora(Inicio, Fim: String): String;
{Retorna a diferença entre duas horas}
Var H1, H2, Total: TDateTime;
begin
  H1 := StrToTime(Inicio);
  H2 := StrToTime(Fim);
  Total := H2 - H1;
  Result := TimeToStr(Total);
end;


Estou usando ela no evento do quick rep BeforePrint

lblTempo.Caption :=
DifHora(queryRelHora.DataSetField.DataSet.FieldByName('ext_hrfim').Text,
queryRelHora.DataSetField.DataSet.FieldByName('ext_hrini').Text);

esta dando um Access Violation.violentoestou usando a TSqlQuery
do Dbexpress e db SQLServer os dois campos
são Varchar(5)

quem puder ajudar...ja agradeço qq sugestão

Rodrigo Mota



[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED] ou [EMAIL PROTECTED]




Yahoo! Grupos, um serviço oferecido por:  
PUBLICIDADE

http://br.rd.yahoo.com/SIG=12frbmh34/M=365837.7000707.7924794.2369893/D
=brclubs/S=2137111264:HM/Y=BR/EXP=1126799098/A=2950750/R=2/id=noscript/S
IG=10tift5qr/*http://br.movies.yahoo.com/
http://br.rd.yahoo.com/SIG=12frbmh34/M=365837.7000707.7924794.2369893/D
=brclubs/S=2137111264:HM/Y=BR/EXP=1126799098/A=2950750/R=2/id=noscript/S
IG=10tift5qr/*http:/br.movies.yahoo.com/  



Links do Yahoo! Grupos


*  Para visitar o site do seu grupo na web, acesse:
  http://br.groups.yahoo.com/group/delphi-br/

*  Para sair deste grupo, envie um e-mail para:
  [EMAIL PROTECTED]
mailto:[EMAIL PROTECTED] 

*  O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
Serviço do Yahoo! http://br.yahoo.com/info/utos.html . 




[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED] ou [EMAIL PROTECTED]





Yahoo! Grupos, um serviço oferecido por:


PUBLICIDADE
 
http://br.rd.yahoo.com/SIG=12fl0cgbq/M=365837.7000707.7924794.2369893/D
=brclubs/S=2137111264:HM/Y=BR/EXP=1126812602/A=2950750/R=2/id=noscript/S
IG=10tift5qr/*http:/br.movies.yahoo.com/ 

 
http://br.i1.yimg.com/br.yimg.com/i/br/ads6/0829_lrec_cinema_calendario
.gif 
 
  _  

Links do Yahoo! Grupos
* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/
  
* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
mailto:[EMAIL

RES: [delphi-br] Erro Estranho DateTime

2005-09-15 Por tôpico Erick Sasse
 Access Violation ocorre quando você tenta acessar um objeto 
 que não está criado.

Ou quando tenta acessar um objeto que já foi destruido.

--
Erick Sasse
www.ericksasse.com.br
 






___ 
Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos emoticons e 
muito mais. Instale agora! 
www.yahoo.com.br/messenger/


-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html