Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-10-2010
martinartaza martinartaza is offline
Miembro
NULL
 
Registrado: oct 2010
Posts: 77
Poder: 14
martinartaza Va por buen camino
Seleccionar datos de un dbgrid, no de un dataset

Hola que tal foro.
Lo que ando necesitando es lo siguiente:

Seleccionar datos de la fila seleccionada de un datagrid. Sé hacer esto cuando la grilla esta relacionada con la propiedad a un dataset, pero en este caso pasa lo siguiente.
Motivo por el cualno puedo usar el Dataset
Estoy parchando el código de un gran proyecto (más de 100 tablas) que dejo otra persona y la manera de llenar la grilla lo hace atreves de funciones, que crea en tiempo de ejecución un componente Tdataset, en conclusión no entiendo bien lo que hace y me llevaría mucho tiempo entenderlo, el problema no es ese, todo los formularios están funcionando igual y lo que yo tengo que hacer es ampliar el programa en base de lo que está echo, y me ayudaría mucho si simplemente pueda recuperar los datos de la grilla y no de un dataset que nunca se bien donde está, porque estos data set, lo mete dentro de proceso de botones, algo como
Código Delphi [-]
procedure TFormdAjeno.ButtonBuscarClick(Sender: TObject);
procedure AnalizarConsulta(t_Consulta: TPSQLQuery);
     begin
     //arma la consulta y asigna el datasource a la consulta
     end;
begin
// el funcionamiento del boton buscar aca dentro llama a analizarconsulta y
....
end;

Y como si esto fuera poco, cada boton tiene un analizarconsulta (pero con distintos nombre y forma de funcionar y cada formulario lo hace de manera tan complicada y distintas formas rebuscada pero ni siquiera hay una convicción de nombres.


Lo que intente.
Código Delphi [-]
eProveedor.text := otroform.sugrilla.datasource.Fieldbyname('Proveedor').asstring;

bueno, eh probado ese tipo de cosas, como recuperar el dataset, atraves de la griila y eh buscado por internet y no encuentro, tal vez no busque bien.

Desde ya foro muchas gracias por haberse tomado la molestia de leer esto.
Responder Con Cita
  #2  
Antiguo 02-10-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Código Delphi [-]
var MiDataSet:TDataset;
Begin
  MiDataSet := otroform.sugrilla.datasource.dataset;
  
  //ahora accedes a lo que quieras del dataset usando MiDataSet como puente.

Como lo hizo la otra persona es lo correcto pues separa completamente la grilla de la manipulación de los datos. El enfoque que quieres hacer es incorrecto pues la grilla no contiene los datos, solo los muestra.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 02-10-2010
Avatar de Hisumi
Hisumi Hisumi is offline
Registrado
NULL
 
Registrado: oct 2010
Ubicación: Cuba
Posts: 1
Poder: 0
Hisumi Va por buen camino
Explicate

Hermano no soy de los mejores pero me defiendo en ADO(Delphi) hace poco terminie un proyecto de ostia. Explicate bien lo que nesecitas, que no entiendo lo que escribiste.
If lo que nesecitas es buscar algo en el registro completo del DBGrid Then dime para mandarte un poco de codigo, else especifica mejor lo que quieres

OK

Chao.
Responder Con Cita
  #4  
Antiguo 03-10-2010
martinartaza martinartaza is offline
Miembro
NULL
 
Registrado: oct 2010
Posts: 77
Poder: 14
martinartaza Va por buen camino
Talking El lunes en el trabajo pruebo tu solucion AzidRain

Hola AzidRain, viendo tu código y que es muy probable que funcione me da vergüenza llamarme programador, una solución tan simple como usar una variable intermedia cuando se quiere cambiar los valores de 2 variables. Sabia que me estaba aguando en un vaso de agua pero sinceramente no podía salir de ese vasito de agua.

Muchísima gracias por tu respuesta, el Lunes lo veo.
Responder Con Cita
  #5  
Antiguo 04-10-2010
martinartaza martinartaza is offline
Miembro
NULL
 
Registrado: oct 2010
Posts: 77
Poder: 14
martinartaza Va por buen camino
Funciona perfectamente

Hola, la solución funciona de manera perfecta, para sacar los datos uso, Fields[0].asstring o lo que corresponda, ya que tampoco se el nombre de las columnas, creo que el nuevo código va a ser mucho más limpio.
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
DBGRID ¿como seleccionar fila y obtener datos de la fila ? JXJ Varios 5 18-04-2017 02:50:14
2 DBGrid para 1 Dataset jphv Conexión con bases de datos 2 11-04-2009 22:05:28
Se puede usar un DBGrid sin ningun Dataset rgstuamigo OOP 4 06-02-2009 23:07:17
Ver DataSet en un DBGrid Cecilio Conexión con bases de datos 4 08-09-2007 18:14:32
Seleccionar una linea de un dbgrid y mostrar todos los datos... hook Varios 1 15-04-2005 13:38:49


La franja horaria es GMT +2. Ahora son las 14:19: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