Programación General > Visual Basic 6.0 e inferiores
No Se Puede Inicializar Los Enlaces De Datos
(1/1)
UserCode:
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 --- Private Sub Form_Load() Rs.Requery If Rs.RecordCount > 0 Then Rs.MoveLast TxtNumReg.Text = Rs.RecordCount End If Set DataGrid1.DataSource = Adodc1 Adodc1.ConnectionString = "Driver={SQL Server};Server=JCDZ;Database=BDAgenda;Uid=sa;Pwd=;" Adodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula" Adodc1.CommandType = adCmdText Adodc1.Refresh
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 --- Public Function BDSQLConex() If BD.Errors.Count = 0 Then BD.Open "Driver={SQL Server};Server=JCDZ;Database=BDAgenda;Uid=sa;Pwd=;" Rs.Open "SELECT * FROM Agenda ORDER BY Cedula", BD, adOpenKeyset, adLockOptimistic, adCmdText Else Rs.Close BD.Close End IfEnd Function 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:
F_Tanori:
Hola
Antes de todo
Primero se cambia el tipo de comando y luego se modifica el RecordSource
Asi ....
--- Código: Text --- Adodc1.CommandType = adCmdTextAdodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula"
en vez de asi...
--- Código: Text ---Adodc1.RecordSource = "SELECT * FROM Agenda ORDER BY Cedula"Adodc1.CommandType = adCmdText
y para lo de tu duda prueba cambiando el cursor
--- Código: Text --- Adodc1.CursorLocation = adUseClient
<!--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
UserCode:
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:
Navegación
Ir a la versión completa