Cita:
Empezado por duilioisola
Vale, entiendo tu problema.
Debes copiarlo a tu unit y luego ponerlo en la definicion de la clase TFormConsulta dentro de la parte private o public. - private: solo se podrá utilizar dentro de la clase (a efectos prácticos, no podrás llamarlo desde otros sitios)
- public: otros objetos podrán llamarlo mediante TFormConsulta.Filtrar(...).
Ejemplo para un formulario llamado "Form1" que en su parte privada define el procedimiento Filtrar().
Si quieres más información deberás aprender qué significa interface (donde se define lo que hay en la unidad) / implementation (donde se implementa el codigo que ejecuta cada cosa definida).
Código Delphi [-]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
procedure Filtra(Desde, Hasta: TDateTime);
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Filtra(Desde, Hasta: TDateTime);
begin
[...]
end;
end.
|
Muchas gracias por tu paciencia, efectivamente lo hice tal cual como tu me explicaste, pero tengo un problema con
Código Delphi
[-][dcc64 Error] UnitConsulta.pas(242): E2003 Undeclared identifier: 'RecodeTime'
posiblemente yengo que declarar el recordtime en algun lado.
Código Delphi
[-]procedure TFormConsulta.Filtra(Desde, Hasta: TDateTime);
begin
Desde := RecodeTime(Desde, 0, 0, 0, 0);
Hasta := RecodeTime(Hasta, 23, 59, 59, 999);
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * from Tiket');
ADOQuery1.SQL.Add('where FechaCre between :Fecha1 and :Fecha2');
ADOQuery1.Parameters.ParamByName('Fecha1').Value := Desde;
ADOQuery1.Parameters.ParamByName('Fecha2').Value := Hasta;
ADOQuery1.Open;
end;