• Domingo 22 de Diciembre de 2024, 23:45

Autor Tema:  No Se Puede Inicializar Los Enlaces De Datos  (Leído 3592 veces)

UserCode

  • Miembro MUY activo
  • ***
  • Mensajes: 338
    • Ver Perfil
No Se Puede Inicializar Los Enlaces De Datos
« en: Domingo 25 de Marzo de 2007, 19:01 »
0
hola comunidad, escribo este post debido a un problema de enlace de un datagrid, primera vez que veo que Google no tiene ni un link al aviso "No se puede inicializar los enlaces de datos" lo cual es el error que saca un form con un datagrid.

Tengo un programita que se conecta a una BD SQL Server 7 que está en otro pc, es SQL Server 7 porque la topología de la red es de par a par, no hay servidor ni ningun pc con windows server, aunque desde el punto de vista para el programa, él si verá entre el programa y la Bd una arquitectura cliente/servidor, pero con una Bd que SQL Server que funcione en sistema operativo de escritorio, como el windows xp.

El programita si se conecta a la Bd, debido al realizar operaciones de regisros, consultas, edicion, etc. Pero tengo una ventanita que tiene un DataGrid, al tratar de cargar esta ventanita, el programa se tarda un ratico, y luego saca un aviso que dice:
"No se puede inicializar los enlaces de datos"

Este es el código Load del Form que tiene el DataGrrid:
Código: Text
  1.  
  2. Private Sub Form_Load()
  3.     Rs.Requery
  4.     If Rs.RecordCount > 0 Then
  5.         Rs.MoveLast
  6.         TxtNumReg.Text = Rs.RecordCount
  7.     End If
  8.     Set DataGrid1.DataSource = Adodc1
  9.     Adodc1.ConnectionString = "Driver={SQL Server};Server=JCDZ;Database=BDAgenda;Uid=sa;Pwd=;"
  10.     Adodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula"
  11.     Adodc1.CommandType = adCmdText
  12.     Adodc1.Refresh
  13.  
  14.  

El DataGrid está conectado o enlazado a la Bd y la tabla por un control Ado, el código de conexión a la Bd no lo tiene este Form debido a que el Form Padre ya tiene la conexión ella, en todo caso este es el código de la conexión a la Bd que tengo en un modulo y llamo desde el Load del Form Padre:
Código: Text
  1.  
  2. Public Function BDSQLConex()
  3.     If BD.Errors.Count = 0 Then
  4.         BD.Open "Driver={SQL Server};Server=JCDZ;Database=BDAgenda;Uid=sa;Pwd=;"
  5.         Rs.Open "SELECT * FROM Agenda ORDER BY Cedula", BD, adOpenKeyset, adLockOptimistic, adCmdText
  6.     Else
  7.         Rs.Close
  8.         BD.Close
  9.     End If
  10. End Function
  11.  
  12.  
Otra cosa, es que el Form con el DataGrid si carga los datos localmente, es decir, ejecutando el programa en la PC que tiene la BD, localhost, pero desde otra PC, es que sucede este problema, sé que el asunto está en el Load del Form que tiene el DataGrid pero no he logrado ver aun qué es lo que falte de código en la conexión del Adodc1 para que el DataGrid muestre los registros de la tabla.  Alguna observación a comentar sobre este problema? no sea que yo esté mirando donde no es. :unsure:
Si esto es Leído por accidente, induzca al vomito

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: No Se Puede Inicializar Los Enlaces De Datos
« Respuesta #1 en: Domingo 25 de Marzo de 2007, 20:19 »
0
Hola

Antes de todo

Primero se cambia el tipo de comando y luego se modifica el RecordSource
Asi ....

Código: Text
  1.  
  2. Adodc1.CommandType = adCmdText
  3. Adodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula"
  4.  
  5.  

en vez de asi...
Código: Text
  1. Adodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula"
  2. Adodc1.CommandType = adCmdText
  3.  
  4.  

y para lo de tu duda prueba cambiando el cursor
Código: Text
  1.  
  2. Adodc1.CursorLocation = adUseClient
  3.  

<!--xc1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>XCODE </td></tr><tr><td id='XCODE'><!--exc1-->Private Sub Form_Load()
    
         Rs.Requery
         If Rs.RecordCount > 0 Then
            Rs.MoveLast
            TxtNumReg.Text = Rs.RecordCount
   End If
  
  
      Adodc1.ConnectionString = "Driver={SQL Server};Server=JCDZ;Database=BDAgenda;Uid=sa;Pwd=;"
    
      Adodc1.CursorLocation = adUseClient
      Adodc1.CommandType = adCmdText  
      Adodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula"

  
      Set DataGrid1.DataSource = Adodc1
      Adodc1.Refresh

end sub<!--xc2--></td></tr></table><div class='postcolor'><!--exc2-->


Espero te sirva

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

UserCode

  • Miembro MUY activo
  • ***
  • Mensajes: 338
    • Ver Perfil
Re: No Se Puede Inicializar Los Enlaces De Datos
« Respuesta #2 en: Domingo 25 de Marzo de 2007, 20:55 »
0
hola amigo F_Tanori  :good:

Muchas gracias por las correcciones, puse lo que estaba debajo del query antes y agregue la otra linea que indicas, bueno en localhost siempre todo bien, para una pc de prueba aparte, volví a hacer el ejecutable, correr la compilacion del instaladorTest, e instalar nuevamente, pero el problema sigue igual.

Realmente me ha costado mucho buscar informacion de "No se puede inicializar los enlaces de datos" con respecto al DataGrid, seguiré buscando, en todo caso, cualquier cosa a comentar, aqui tamos, que igual si logro salir de esto, posteo  :comp:
Si esto es Leído por accidente, induzca al vomito