Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
Abrir desde un grid un campo Memo

Bueno mi duda es la siguiente.

Tengo un TDBGrid en un form el cual esta ligado a una TB en la cual hay varios campos



ID.

Empresa.

Asunto.

Fecha.

Notas.



En el TDBGrid se muestran los todos los campos salvo el de Notas.

La manera que uso para ver el campo de notas es un Form.

Pero lo estoy llamando a trabes de un botón y poniéndole el código ID para poder localizarlo.



Bueno lo que me gustaría saber es como desde el Grid haciendo un doble toque en una celda puedo abrir el form Notas en el DataSet correspondiente.
Responder Con Cita
  #2  
Antiguo 06-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Agrega las columnas al DBGrid con el editor de columnas (doble click sobre el grid) En la columna correspondiente al campo memo pones la propiedad ButtonStyle en cbsEllipsis. Al entrar a la celda aparecerá el botoncito '...' y ya sea dando click ahí o doble click sobre la celda se generará el evento EditButtonClick del DBGrid. En este evento abres tu formulario paa ver las notas.

// Saludos
Responder Con Cita
  #3  
Antiguo 06-07-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
Si bueno pero como le paso al DataSet la nota en concreto que deseo visualizar.

De todas maneras soy bastante nuevo en esto y no tengo estudios de programacion. sino que lo estoy haciendo todo por libros y comparaciones.
por eso ruego que se me espliquen las cosas de manera sencilla o con ejemplos
Muchas gracias
Responder Con Cita
  #4  
Antiguo 06-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por ramonibk
Si bueno pero como le paso al DataSet la nota en concreto que deseo visualizar.
Es que la nota en concreto ya la tienes "seleccionada". Al entrar a la celda en custión el DataSet ya se coloca él mismo en el registro correspondiente. Por ejemplo, para probar yo puse el siguiente evento OnEditButtonClick:

Código Delphi [-]
procedure TForm1.DBGrid1EditButtonClick(Sender: TObject);
begin
  ShowMessage(Table1['notas']);
end;


De hecho, si en el formulario donde quieres mostrar las notas pones un DBMemo conectado al mismo dataset, el dbmemo mostrará automáticamente las notas adecuadas.

// Saludos
Responder Con Cita
  #5  
Antiguo 06-07-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
Si esto parece que me funciona.
y doy las gracias por la ayuda.
la cual me biene muy bien por que de esta manera hay usuarios que no podran tener acceso mas que a la lectura
de todas maneras mi idea era mas bien poder abrir el fotmulario con el cual se introducen las notas.
en este caso alguin podria decirme como hacerlo.
Responder Con Cita
  #6  
Antiguo 06-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Lo de ShowMessage era sólo un ejemplo. En ese mismo evento, en lugar de ShowMessage abres tu formulario:

FormularioDeNotas.Show

Y como ya te dije, si en FormularioDeNotas tienes un DBMemo enlazado al mismo DataSource que el DBGrid entonces ya no tienes que hacer más nada. Al ábrirse FormularioDeNotas el DBMemo automáticamente mostrará las notas.

// Saludos
Responder Con Cita
  #7  
Antiguo 06-07-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
Parece que no funciona cuando lo que llamo es um form.
lo que estoy pensando es que si puede ser devido a que cada form tira de sus propias tablas.
me explico: cada uno de los form que tengo en el prollecto esta con tirando de una tabla que se encuentra en el mismo form.
entonces me imajino que lo que tendre que hacer es pasarle los parametros a la DataSource del Form de notas.
o bien hacer que le form de notas tire de la tabla del form princimal.
Responder Con Cita
  #8  
Antiguo 06-07-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Lo que te dice Román tiene que funcionar perfectamente, lo que ocurre es que en este segundo form debieras hacer un "Uses" del form desde el cual llamas para poder vincular el control DbMemo a la Tabla ubicada en dicho formulario.

Incluso sin utilizar un segundo formulario te puede funcioanar, colocas el DbMemo sobre la rejilla y le pones la propiedad visible a falso cuando pulses en el botón de elipsis lo haces visible y arreglado.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #9  
Antiguo 06-07-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
Si pero como se genera un User del form ????
Responder Con Cita
  #10  
Antiguo 06-07-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
No es un User sino indicarle que vas a utilizar el otro Form para leer datos de él.

File - Use Unit. Esto lo haces desde el formulario en que vas a presentar el campo Memo, para poder vincularlo con la tabla que está en el formulario anterior.

Aunque si haces doble clic en el Ttable que tienes en el formulario anterior y eres capaza de arrastras el campo memo al nuevo formulario esto quedaría hecho automáticamente.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #11  
Antiguo 07-07-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
Bueno. Después de muchas pruebas.

Por fin he visto lo que pasaba.

o por lo menos he conseguido que funcione.

lo que sucede es que si en cada form hay una tabla. le tienes que pasar los datos al DataSet que la controla. por eso no me funcionaba.

Pero si ambos están form están tirando de la misma tabla el enlace es automático y no da ningún problema.
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


La franja horaria es GMT +2. Ahora son las 13:09:46.


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