Club Delphi  
    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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-09-2014
principiodual principiodual is offline
Miembro
NULL
 
Registrado: ago 2014
Posts: 26
Poder: 0
principiodual Va por buen camino
Duda con DBnavigator y bases de datos.

Buenas tardes a todos, tengo una pequeña duda que ojala me pudieran orientar, de ante mano muchas gracias, sobretodo por la gran ayuda de mi problema anterior, he aprendido mucho en el poco tiempo que llevo en esta comunidad.

Mi problema es el siguiente, conecto un dbnavigator a un dbgrid, para trabajar el agregar, modificar y eliminar y todo bien, mientras la tabla con la que conecto el dbgrid tenga o traiga datos, pero si por ejemplo le aplico un Delete a la tabla y la limpio toda, al ir al aplicativo no me da la opción mediante el dbnavigator de llenar la tabla en el dbgrid, sino que todo viene vació(me refiero al dbgrid, logicamente ya que la tabla esta vacía), pero se me inhabilita el dbnavigator... ¿como pudiera hacer para que aunque el dbgrid no traiga ningún dato, solo porque la tabla esté vacía en la base de datos, aún así, funcione el db navigator y pueda añadir un primer registro desde el programa que hice y no recurrir a llenar un registro en la bd y despues si poder trabajar el resto llenado desde el programa?

Muchas gracias a todos.
Responder Con Cita
  #2  
Antiguo 15-09-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Se supone que tienes el botón 'insertar' en el dbnavigator, ¿no?
Responder Con Cita
  #3  
Antiguo 15-09-2014
principiodual principiodual is offline
Miembro
NULL
 
Registrado: ago 2014
Posts: 26
Poder: 0
principiodual Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Se supone que tienes el botón 'insertar' en el dbnavigator, ¿no?
si amigo, la cuestion es que el bdnavigator aparece como desactivado cuando la tabla a la que hace conexión el dbgrid está vacía y el dbgrid viene vacio, pero mientras haya por lo menos un dato en la tabla y el dbgrid lo traiga, la barra dbnavigator estará activada y podrá insertar, eliminar y todo lo demás.
Responder Con Cita
  #4  
Antiguo 15-09-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y el dataset (la tabla) está activo/abierto?
Responder Con Cita
  #5  
Antiguo 16-09-2014
principiodual principiodual is offline
Miembro
NULL
 
Registrado: ago 2014
Posts: 26
Poder: 0
principiodual Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Y el dataset (la tabla) está activo/abierto?
si amigo, así tengo el código donde trabajo el dbnavigator.

Código Delphi [-]
procedure TForm3.cargaDBGRID;
begin
StrSQL:='';

StrSQL:='SELECT * FROM GEINVZLA_TB_CUENTAS;';

  Cn002  := TADOConnection.Create(nil);
  adotComponents := TADOQuery.Create(nil);
  //Conexion a la Base de datos
  Conectado2:=Open_DB (Cn002 , 5 , ServerDB, NameDB2, '', PasswordDB, '' );


  //si hay conexion continue con el proceso
  if Conectado2 then
  Begin

    //Se Abre el DataSet de la factura
    Conectado2:= Open_ADO_Qry(Cn002,adotComponents,StrSQL,false);

    // Verifica si se Abrio el DataSet

  adotComponents.Open;
  adotComponents.Edit;
  adotComponents.Insert;

   if Conectado2 then
    Begin
      with adotComponents do begin
        while not Eof do
        Begin
          dsComponents.DataSet:= adotComponents;
          with DBGrid1 do begin
              TabOrder := 0;
              TitleFont.Color := clWindowText;
              TitleFont.Height := -14  ;
              TitleFont.Name := 'MS Sans Serif';
              TitleFont.Style := [fsBold]   ;
              DataSource := dsComponents  ;
                 end;
           DBNavigator1.DataSource:=dsComponents;
           DBGrid1.DataSource:=dsComponents;
           Next;
        End;
        First;
      End;
    End;
  End;
End;

Última edición por ecfisa fecha: 16-09-2014 a las 00:13:29. Razón: Agregar etiquetas [Delphi]
Responder Con Cita
  #6  
Antiguo 16-09-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
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 principiodual.

Por favor cuando incluyas código en tus mensajes usa las etiquetas para darle legibilidad. Uso:



Ya las agregué en tu mensaje.

Saludos y gracias por tu colaboración
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 16-09-2014
principiodual principiodual is offline
Miembro
NULL
 
Registrado: ago 2014
Posts: 26
Poder: 0
principiodual Va por buen camino
Amigo ya lo resolví y disculpa si no identifico el código, no me agarra el éditor de codigo en respuesta... pero público aquí como me funciona por si a alguién mas le paso algo así y muchas gracias, porque con tus preguntas me hiciste analizar mejor el código y poderme dar cuenta de mi error... Aquí está el código como me funciona... el primer error es que uso la misma variable Conectado2 veces, cree otra var que se llama Conectado3 y saque la carga del dbgrid y el dbnavigator fuera del ciclo controlado por el Conectado3, quedando así.

Última edición por principiodual fecha: 16-09-2014 a las 00:28:19.
Responder Con Cita
  #8  
Antiguo 16-09-2014
principiodual principiodual is offline
Miembro
NULL
 
Registrado: ago 2014
Posts: 26
Poder: 0
principiodual Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola principiodual.

Por favor cuando incluyas código en tus mensajes usa las etiquetas para darle legibilidad. Uso:



Ya las agregué en tu mensaje.

Saludos y gracias por tu colaboración
Gracias por la acotación, estoy por opera y no me agarra las etiquetas, voy a abrir la página por Mozilla a ver si es el navegador y publicar el código como me funciona, por si alguién mas le llegase pasar lo mismo que a mi tenga la solución... Gracias
Responder Con Cita
  #9  
Antiguo 16-09-2014
principiodual principiodual is offline
Miembro
NULL
 
Registrado: ago 2014
Posts: 26
Poder: 0
principiodual Va por buen camino
aquí está el código como me funciona, ahora si puede agregar aún el dbgrid venga vacio ya sea porque la tabla a la que se conecta no tiene datos y pueda ser llenado directo desde el aplicativo o programa.

Código Delphi [-]
procedure TForm3.cargaDBGRID;
begin
StrSQL:='';

StrSQL:='SELECT * FROM GEINVZLA_TB_CUENTAS;';

  Cn002  := TADOConnection.Create(nil);
  adotComponents := TADOQuery.Create(nil);
  //Conexion a la Base de datos
  Conectado2:=Open_DB (Cn002 , 5 , ServerDB, NameDB2, '', PasswordDB, '' );


  //si hay conexion continue con el proceso
  if Conectado2 then
  Begin

    //Se Abre el DataSet de la factura
    Conectado3:= Open_ADO_Qry(Cn002,adotComponents,StrSQL,false);

 

  adotComponents.Open;
  adotComponents.Edit;
  adotComponents.Insert;

  dsComponents.DataSet:= adotComponents;       
  DBGrid1.DataSource:=dsComponents;
  DBNavigator1.DataSource:=dsComponents;


   if Conectado3 then
    Begin
      with adotComponents do begin

        while not Eof do
        Begin
        
          with DBGrid1 do begin
              TabOrder := 0;
              TitleFont.Color := clWindowText;
              TitleFont.Height := -14  ;
              TitleFont.Name := 'MS Sans Serif';
              TitleFont.Style := [fsBold]   ;
              DataSource := dsComponents  ;
                 end;
           Next;
        End;
        First;
      End;
    End;
  End;
End;

Cita:
Muchas gracias Casimiro Notevi y Ecfisa, como siempre un sitio web muy eficiente y colaborador con todos nosotros. Buenas tardes.
P.D= El navegador Opera no acepta las etiquetas del formato de respuesta que usan en el sitio web, tuve que usar Mozilla, no se si sea cuestión de opera o de Club Delphi.

Última edición por principiodual fecha: 16-09-2014 a las 00:45:59.
Responder Con Cita
  #10  
Antiguo 16-09-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
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 principiodual.

No he probado con el navegador Opera pero voy a revisarlo.

Saludos y muchas gracias por avisarnos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #11  
Antiguo 16-09-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
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 de nuevo.

Acabo de descargar el Opera (ver.: Stable 24.0.1558.53) y no me ha dado problemas (te estoy escribiendo este mensaje desde él)
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  Caption:= '';
  for i:= 0 to 9 do
    Caption:= Caption + IntToStr(i);
end;
Tal vez sea causa de algún plugin o alguna configuración que hayas echo en el navegador ...

Saludos

Edito: Muchas gracias por publicar como lo solucionaste.
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 16-09-2014 a las 01:24:25.
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
Como sincronizar datos entre bases datos cliente a servidor (asincronicamente) Efren2006 OOP 6 29-03-2013 12:36:11
Insertar datos entre bases de datos diferentes franjero Firebird e Interbase 1 19-06-2012 09:32:42
Pasaje de datos entre bases de datos Mauro Daniel Conexión con bases de datos 1 04-05-2008 16:28:24
Como pasar datos de una hoja de Excel a Bases de Datos de Paradox Goyo OOP 1 06-02-2007 02:57:20
Como puedo introducir datos en una tabla acces sin el DBNavigator??? Bitbanner Conexión con bases de datos 3 09-02-2005 08:03:14


La franja horaria es GMT +2. Ahora son las 04:07:06.


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