[Lazarus-es] edicion

Lissy Amador 01_lamador en soporteavanzado.com
Lun Nov 22 23:05:54 CET 2010


para la busqueda que haces, solo es de un parametro o de varios?

eje. 
un boton buscar y dos campos nombre  y apellido, puede ser que
que el usuario se recuerde del nombre o del apellido,
yo decia algo así:
 si nombre esta vacio entonces no haga nada y pase al siguiente, de lo contrario haga la busqueda
 si apellido  esta vacio no haga nada y pase al siguiente, de lo contrario haga la busqueda

Puede ser que sea
 if nombre=: ' ' then
  next else
 zquery.SQL.Text := 'SELECT * FROM nombres WHERE nombre =:s';
  zquery1.ParamByName('sandra').asString := edit1.text;
  zquery1.Open;
  if zquery1.EOF then begin
   showMessage('Nombre NO Encontrado');
   end else begin
    edit1.text := zquery1.FieldByName('apellido').AsString ;
    edit3.text := zquery1.FieldByName('id').AsString ; 

***Aqui seguiría el siguiente búsqueda, pero aún no se como implentar  la siguiente busqueda
como escribir en codigo que pueda entender lazarus pase a la siguiente busqueda?


----- Mensaje original -----
De: "Paola Bruccoleri" <pbruccoleri en adinet.com.uy>
Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org>
Enviados: Lunes, 22 de Noviembre 2010 15:22:48
Asunto: Re: [Lazarus-es] edicion


> Te endiendo tu ejemplo, pero no se como resolver mi problema, devo de
> hacer una busqueda y luego poder modificar el parametro buscado.
> tienes alguna idea?
a ver si este ejemplo te sirve:
el qryMesas tiene esta instrucción en la propiedad sql: select * from 
mesas where codigo = :codmesa, que yo la tengo especificada en el componente

lo que hago es busco un determinado registro de la tabla mesas y si lo 
encuentro, actualizo los campos: impresa, codcliente, serie, comp, 
tipocomprobante
Uso 2 querys, uno para buscar y otro para hacer el update.


       qryMesas.ParamByName('codmesa').AsInteger:= 
frmMesas.dsMesas.DataSet.FieldByName('codigo').AsInteger;
       qryMesas.Open;
       if not qryMesas.IsEmpty then
         begin
           try
              cSql:= 'update mesas set impresa = ''S'', codcliente 
='+sCodCliente+', serie='''+cSerie+''', comp='+IntToStr(nComp)+', 
tipocomprobante='+IntToStr(nTipoComprobante)+ ' where 
codigo='+frmMesas.dsMesas.DataSet.FieldByName('codigo').AsString;
              DBMain.qryTool.SQL.Text:= cSql;
              DBMain.qryTool.ExecSQL;
           except
             MessageDlg('Error', 'Hay error en los datos', mtWarning, 
[mbOk], 0);
             DBMain.fdb.Rollback;
           end;
         end;

Supongo que algo de eso es lo que estás buscando
chauuuuuuuuuuu


_______________________________________________
Lazarus-es mailing list
Lazarus-es en lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es




More information about the Lazarus-es mailing list