Delphi - como hago una Rutina Auxiliar

 
Vista:

como hago una Rutina Auxiliar

Publicado por Julian Andres (13 intervenciones) el 26/04/2011 13:05:15
Hola como andan todos???...estoy un poco desesperado....les explico mi consulta:
Tengo 4 Formularios, uno para Altas, Otro para Bajas, Otro para Modificaciones y otro para Listados y en casa cada uno de los Formularios Pongo este codigo


procedure TForm14.Button2Click(Sender: TObject);
Var Descripcion,Clave,nombre,Siglas:String;
begin
edit2.Clear;
ListBox2.Clear;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:='Select Clave,nombre,sigla,descripcion From Provincias WHERE (clave = ' + edit1.Text +') order by Clave';
ADOQuery1.Open;
ADOQuery1.Active:=true;
If Not ADOQuery1.EOF Then
Begin
Clave:=ADOQuery1.Fields[0].AsString;
Nombre:=ADOQuery1.Fields[1].AsString;
Siglas:=ADOQuery1.Fields[2].AsString;
Descripcion:=ADOQuery1.Fields[3].AsString;
ListBox1.Show;
ListBox1.Items.Add('Clave :');
ListBox1.Items.Add(Clave);
ListBox1.Items.Add('Nombre :');
ListBox1.Items.Add(Nombre);
ListBox1.Items.Add('----------------------------');
End
Else
Begin
Adoquery1.ExecSQL;
ShowMessage('ERROR, La Clave Ya Existe');
edit1.Clear;
end;
end;




Y quiero saver como poder hacer una Rutina con este Codigo y poder invocarlo caundo quiera y de donde quiera, pasandole los parametros correspondientes......COMO LO HAGO? EN DONDE LO HAGO?
Muchas gracias!
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

como hago una Rutina Auxiliar

Publicado por skull leader (80 intervenciones) el 26/04/2011 16:10:53
No entiendo muy bien lo que pretendes, según lo que entiendo, quieres encapsular metodos que repites...

puedes hacerlo de la siguiente forma:

1) una Unit donde tengas todo en forma de funciones
2) en un DataModule, ahi mantienes todos tus controles de acceso a datos, y ahi mismo defines metodos propios para limpiar el resto de las formas de código repetido.

siempre es sano reutilizar lo ya hecho, para ya no repetir.

recuerda hacer los prototipos de tus funciones
function Alta(arg1,arg2: integer): integer;

etc.
recuerda que para agregar, ya sea un unit y/o un datamodule, es en File->New y el diálogo que te muestra, seleccionas lo que vayas a necesitar.

espero te sirva
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como hago una Rutina Auxiliar

Publicado por Julian Andres (13 intervenciones) el 26/04/2011 21:28:51
Gracias!!! y si..pienso hacerlo en una Unit con funciones y procedimientos pasando los parametros y var, pero lo que no se como hacer es como poner en la Unit el ADOQueryConnection y el ADOQuery para poder hacer el SELEC y despues invocar al PRocedimiento o Funcion desde los Formularios de ABML??..como hago??? jajaja..Help!!! jajaj
espero su ayuda.. muchas gracias y pordon por las molestias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como hago una Rutina Auxiliar

Publicado por skull leader (80 intervenciones) el 26/04/2011 21:57:56
si incluirás toda la conexión, entonces debes agregar un modulo de datos (datamodule, en File -> New -> Datamodule)

ahi pegas los componentes que necesites.

recuerda incluirlo en las uses de las formas donde lo necesites (tus ABML), esto es muy simple.

consejo: en tu modulo de datos, no hagas ADOQuery1.SQL.Text := 'bla, bla, bla';
hazlo desde la propiedad SQL en el componente.

esto te servirá bien.
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar