Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Ayuda con next y prior........

Hola como andan todos?? Acá me surgió un problemita, resulta que tengo una tabla Observaciones donde guardo las observaciones de los clientes.
Los campos mas relevantes son ID_Observación,ID_Cliente,Observación , donde ID_Observación es clave primaria.

Para listar las observaciones agrego esta consulta en el form create:

Código SQL [-]
 with QueryDataModule.ObservacionClienteZQuery do 
               begin 
                 If active then close; 
                 SQL.Clear; 
                 SQL.Add('Select * from observacion_cliente where observacion_cliente.ID_Cliente='+r+''); 
                 Open; 
               end;

Esto funciona muy bien, después tengo en el form dos botones uno para ver la observacion siguiente y otro para la anterior con este código:

Código Delphi [-]
QueryDataModule.ObservacionClienteZQuery.Next; 
         ListarObservacionClienteMemo.Text:=QueryDataModule.ObservacionClienteZQuery.FieldByName('Observacion  ').AsAnsiString; 
         DiaLabel.Caption := FormatDateTime('dddd yyyy/mm/dd', QueryDataModule.ObservacionClienteZQuery.FieldByName('Fecha').AsDateTime); 
         HoraLabel.Caption:= FormatDateTime('hh:nn:ss', QueryDataModule.ObservacionClienteZQuery.FieldByName('Fecha').AsDateTime); 
         PrioridadDBLookupListBox.KeyValue:=QueryDataModule.ObservacionClienteZQuery.FieldByName('ID_Priorida  d').Value;

El problema surge cuando quiero modificar una observación cuando hago un next o prior no se como recuperar el valor del registro actual donde se encuentra posicionado el puntero. Se entiende???? Espero que me puedan ayudar! Graciass por adelantado!
Responder Con Cita
  #2  
Antiguo 25-01-2011
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Hola,
me parece que lo que buscas es RecNo. Echale un vistazo a la ayuda de Delphi a ver si es eso exactamente. Saludos.
Responder Con Cita
  #3  
Antiguo 25-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Hola coso suena feo llamarte coso,gracias por responder!!

Estuve viendo lo de Recno esta medio confuso me parece que es para Sql server, yo estoy usando Mysql.

Voy a seguir buscando, si alguien sabe algo se lo voy a agradecer.

Saludos!
Responder Con Cita
  #4  
Antiguo 25-01-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
cómo estás haciendo la modificación de la observación?
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #5  
Antiguo 25-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Hola Chris como andas? La estaba haciendo de este modo:

Código SQL [-]
procedure TListarObservacionesForm.ActualizarActivadoPngSpeedButtonClick( 
  Sender: TObject); 
 
 
 
 
begin 
 
               with QueryDataModule.ObservacionClienteZQuery do 
               begin 
                 If active then close; 
                 SQL.Clear; 
                 SQL.Add('Select * from observacion_cliente where observacion_cliente.ID_Cliente='+r+''); 
                 Open; 
               end; 
 
 
               ob:=QueryDataModule.ObservacionClienteZQuery.FieldByName('ID_Observacion').Value; 
 
              with QueryDataModule.ObservacionClienteZQuery do 
               begin 
                 If active then close; 
                   SQL.Clear; 
                   SQL.Add('Update observacion_cliente set '); 
                   SQL.Add('Observacion='''+ListarObservacionClienteMemo.Text+''', '); 
                   SQL.Add('ID_Prioridad=:Priori'); 
                   ParamByName('Priori').Value:=PrioridadDBLookupListBox.KeyValue; 
                   SQL.Add('Where observacion_cliente.ID_Observacion='+ob+''); 
                   ExecSQL; 
               end; 
 
 
 
end;



Osea con instrucciones Sql, nada de poner la tabla en modo edit.
Este codigo esta mal, la primera consulta select lo hacia pensando que me iba a dar el ID_Observacion, después de hacer un prior o next, obviamente que no lo hace y después quería guardarlo en una variable pero al cerrar el Query pierdo el valor de esta variable.

Ya que estoy y aunque esto no solucione el problema, pero se podría guardar el valor de la variable después de cerrar el Query?

Bueno sigo buscando la manera de saber en que registro me encuentro después de un prior o next.

Saludos!
Responder Con Cita
  #6  
Antiguo 25-01-2011
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Cita:
Hola coso suena feo llamarte coso
no pasa nada lo escogi yo con mis motivos, ya se que por alla puede sonar algo despreciativo saludos. PD: RecNo es una propiedad de TCustomDataSet, de la que probablemente deriva ZQuery, independientemente de la base de datos utilizada. Saludos.
Responder Con Cita
  #7  
Antiguo 26-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Hola coso, gracias por tu ayuda. Estuve viendo lo de RecNo, ahora supongamos que obtengo el RecNo, después cuando hago el update eso tendría que estar en la clausula where, no tendrias algun ejemplo de una sentencia usando el RecNo. Desde ya muchas gracias!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Interceptar [Prior,Next] al evento OnDataChange geolife Conexión con bases de datos 4 23-03-2009 18:08:00
Instalar Ayuda (.HLP) en la Ayuda de Delphi? MasterXP Varios 6 12-04-2006 06:57:49
Ayuda para crear ayuda... Gabriel2 Varios 2 10-06-2005 00:15:18
metodo prior flaca Varios 1 13-12-2004 21:23:33
ayuda con strtofloat, ayuda punto flotante TURING Varios 5 30-04-2004 08:03:59


La franja horaria es GMT +2. Ahora son las 11:39:08.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi