Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 16
Vales08 Va por buen camino
PD: pasar registros desde un dbgrid a otro dbgrid con botones..

Me olvide de comentarles que trabajo con delphi 7, sql manager..
Uso ibdataset, ibquerys, ibdatasourse para cada dataset y query, ibtransaction.. todo en un DataModule
Responder Con Cita
  #2  
Antiguo 18-05-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.015
Poder: 22
oscarac Va por buen camino
en la parte inferior de esta pagina encontraras temas similares
por lo pronto revisa aqui
saludos
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #3  
Antiguo 18-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 16
Vales08 Va por buen camino
Ya he revisado, pero eh probado y nada.. no me funiciona. para lo que quiero no me sirve..
muchas gracias igual.
Responder Con Cita
  #4  
Antiguo 19-05-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Vales08.

Para hacer lo que buscas creo que tendrías que tener:
.- Una tabla MEDICOS.
.- Una tabla COBERTURAS.
.- Una tabla COBERT_X_MEDICO.

Donde la tabla COBERT_X_MEDICO está en relación Master/detail con MEDICOS por el campo ReferMedico / Medico_ID.

Para ejemplificar tu caso usemos:
.- DBGridMedicos.
.- DBGridCoberturas.
.- DBGridDetalle.

En DBGridCoberturas ponemos la propiedad: Options -> dgMultiSelect a True, así podrás elegir una, varias o todas las coberturas (Ctr+click o Shift+Flecha abajo).

Luego la asignación la podes hacer mediante Drag&Drop o en el evento OnClick de un TButton, esta última forma es la que uso para el ejemplo.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  for i:= 0 to GridCoberturas.SelectedRows.Count -1 do
  begin
    GridCoberturas.DataSource.DataSet.GotoBookmark(Pointer(GridCoberturas.SelectedRows.Items[i]));
    GridDetalle.DataSource.DataSet.Append;
    GridDetalle.DataSource.DataSet.FieldByName('ReferMedico').AsInteger:=
      GridMedicos.DataSource.DataSet.FieldByName('Medico_id').AsInteger;
    GridDetalle.DataSource.DataSet.FieldByName('Cobertura').AsString:=
      GridCoberturas.DataSource.DataSet.FieldByName('Cobertura').AsString;
    GridDetalle.DataSource.DataSet.Post;
  end;
end;

DBGridCoberturas, sólo debería mostrarse para que el usuario pueda realizar la elección de las posibles coberturas y luego cerrarse. Cuando quieras mostrar las coberturas que trabaja un médico usas un DBGrid u otro componente que haga referencia a la tabla COBERT_X_MEDICO y te las mostrará.

Espero haber interpretado lo que querías hacer...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 19-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 16
Vales08 Va por buen camino
Hola, como andas?
Eres muy bueno en interpretacion, explicacion y en delphi jaja..
Justamente la funcionalidad que quiero es esta que me has dado...
Lo aplicare lo antes posible y te dare una respuesta de si me ha sido util o no.. pero seguramente que si xq yo a las tablas ya las tengo echas y el codigo y todo esta muy bien explicado..

muchas gracias.-
En cuanto lo tenga te confirmare si me ha sido util, pero es lo que queria..

Saludos.-
Responder Con Cita
  #6  
Antiguo 19-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 16
Vales08 Va por buen camino
Lo unico que veo es que yo no necesito una grilla de medicos xq presisamente eso es lo que estoy por dar de alta o cargar... a tal prfesiona que estoy ingresando con sus datos tengo q seleccionarle las coberturas..
No se si me explico..
a lo que yo entiendo q haces es poner una grilla medicos para identificar a que medico le asigno las coberturas.. o estoy entendiedno mal??
Responder Con Cita
  #7  
Antiguo 19-05-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Vales08.

No, no estas entendiendo mál, tu interpretación es correcta, eso funcionaría para una modificación del médico y no para un ingreso. Lo hice así para simplificar el ejemplo.

En tu caso deberías cambiar la línea:
Código Delphi [-]
GridDetalle.DataSource.DataSet.FieldByName('ReferMedico').AsInteger:=
      GridMedicos.DataSource.DataSet.FieldByName('Medico_id').AsInteger;

Por:
Código Delphi [-]
GridDetalle.DataSource.DataSet.FieldByName('ReferMedico').AsInteger:= DataSet.FieldByName('Medico_id').AsInteger;
Pero no es tán simple, te encontrás con el problema de tener que asignar un identificador que todavía no tenés ya que el médico todavía no se ha guardado. Es decir que vas a tener que hacer un Post en la tabla Médicos sin tener seguramente, todos sus campos ingresados. Una forma de solucionarlo es usando CachedUpdates.
Si mál no recuerdo trabajas con componentes IBX, estos tienen una pequeña complicación a la hora de usar CachedUpdates y tablas en relacion master/detail: Tenes que desactivar el DataSource del detail antes de guardar y volverlo a conectar luego de haber guardado.

Es decir que quedaría:
Código Delphi [-]
....
(* Detalle de apertura de las tablas tbMedicos y tbDetCober (coberturas x médico) *)
begin
   DModule.tbDetCober.CachedUpdates:= True;
   DModule.tbMedicos.CachedUpdates:= True;
   DModule.tbDetCober.Open;
   DModule.tbMedicos.Open;
end;
...
(* En algún punto antes de ejecutar Button1Click debés hacer: *)
  DModule.tbMedicos.Post;
...
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  for i:= 0 to GridCoberturas.SelectedRows.Count -1 do
  begin
    GridCoberturas.DataSource.DataSet.GotoBookmark(Pointer(GridCoberturas.SelectedRows.Items[i]));
    with DModule do
    begin
      tbDetCober.DataSource:= nil; (* desconectar DataSource *)
      tbDetCober.Append;
      tbDetCober.FieldByName('REFMEDICO').AsInteger:= tbMedicos.FieldByName('MEDICO_ID').AsInteger;
      tbDetCober.FieldByName('COBERTURA').AsString:= tbCoberturas.FieldByName('COBERTURA').AsString;
      tbDetCober.Post;  (* guardar *)
      IBdatabase1.ApplyUpdates([tbDetCober]); (* aplicar updates *)
      tbDetCober.DataSource:= DModule.dsMedicos; (* reconectar DataSource *)
    end;
  end;
end;

Si hay algo en lo que no me expliqué bién, decimelo y te adjunto un código de ejemplo.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 19-05-2011 a las 09:20:18.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Pasar Datos De Dbgrid A Otro Helg17 Tablas planas 7 27-03-2009 10:16:37
Pasar informacion de un dbgrid a otro schaka Conexión con bases de datos 3 11-02-2008 10:15:32
Pasar lineas de in dbgrid a otro dbgrid look OOP 3 21-09-2007 23:16:29
Agregar registros a un DBGRID provenientes de otro Formulario JoanKa Varios 2 19-05-2006 01:58:09
Pasar datos desde un DBGrid jdangosto OOP 2 19-02-2005 16:55:37


La franja horaria es GMT +2. Ahora son las 02:11:14.


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