CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Que Hay De Mal En Este Codigo, No Entiendo O.o
(1/1)
UserCode:
hola buenas como estan, que estan haciendo como los cogio el año.. bien? a que bueno, aqui yo resucitando despues de la comelona y bebeson de fin de año, bueno a empezar un nuevo año...
Me gustaria saber que podria estar mal en este codigo, ya que es algo que estoy digamos, aprendiendo de un tutorial que tengo desde hace un tiempo y no habia podido vuelto a retomar por estar haciendo otras cosas (una web hehehe) y que por cierto veo que es el mismo que pusieron que dicen que tarda mucho en descargarse el pdf.
Este es el codigo:
Las declaraciones:
--- Código: Text --- Imports SystemImports System.DataImports System.Data.SqlClient
Las variables:
--- Código: Text --- Private conex As New SqlConnection Private objDataAdapter As SqlDataAdapter Private objDataSet As DataSet
La conexion a una BD SQL Server2000:
--- Código: Text --- conex = New SqlConnection conex.ConnectionString = "server=(local);" & _ "database=BDTLF;uid=sa;pwd=;" Me.objDataAdapter = New SqlDataAdapter("SELECT * FROM TR_TLF", conex) Dim comando As SqlCommandBuilder = New SqlCommandBuilder(objDataAdapter) Me.objDataSet = New DataSet conex.Open()
Un codigo ahi para guardar los datos del Form a la tabla de la BD:
--- Código: Text --- Dim objDataRow As DataRow objDataRow = Me.objDataSet.Tables("TR_TLF").NewRow objDataRow("TxtNomb") = Me.TxtNomb.Text objDataRow("TxtNombre") = Me.TxtNombre.Text objDataRow("TxtTelefCel") = Me.TxtCel.Text objDataRow("TxtTelefHab") = Me.TxtHab.Text objDataRow("TxtTelefTrab") = Me.TxtTrab.Text objDataRow("TxtFax") = Me.TxtFax.Text objDataRow("TxtDireccion") = Me.TxtDireccion.Text Me.objDataSet.Tables("TR_TLF").Rows().Add(objDataRow) MessageBox.Show("Registro Guardado") conex.Close()
La ultima seccion de código, la de guardar, da el error el cual es este aviso:
--- Citar ---An unhandled exception of type 'System.NullReferenceException' ocurred in Project.exe
Additional information: Object reference not set to an intance of an object.
--- Fin de la cita ---
El error es en esta linea:
objDataRow = Me.objDataSet.Tables("TR_TLF").NewRow
Bueno he retomado esto que estaba haciendo sé que habia puesto un post sobre el tema ya hace un tiempo atras y me gusto este codigo pero da ese error y no sé porque y ver si alguien sabe.
muchas gracias y Feliz año nuevo para todos :hola:
Güorker:
Hola,
ese error se debe a que el dataset que has declarado está vacio. Tu has hecho el "new" del DataSet y solo con eso el dataset está vacio, no tiene tablas ni nada. Por eso cuando intentas acceder a una tabla del dataset te dice que no está inicializado.
Lo que deberías hacer es el llenar el Dataset mediante la sentencia Fill del DataAdapter en vez de hacer "New".
Saludos
UserCode:
gracias compadre voy a investigar mejor sobre eso que me indicas :comp:
Por cierto para quien le interesa una interfaz mas atractiva o profesional, al menos no aun en Skin para las vetanas pero si al menos para unos iconos para botones o toolbar mejores para .net aqui esta un link que podria ser de interes:
http://www.crystalxp.net/galerie/fr.cat.1.htm
Navegación
Ir a la versión completa