Mostrar Datos de Class Library

26/07/2004 - 16:34 por Mauricio Henao Romero | Informe spam
Hola a todos.

Quisiera hacer una consulta de tipo URGENTE.

Veran, tengo un proyecto de tipo Class Library, donde
tengo funciones como:
Public Sub IngresoTabla
Public Sub EditaTabla
Public Overloads Function MuestraTabla as As SqlDataReader
Public Sub BorraTabla

Como ven, Este proyecto tiene todos los movimientos
basicos para realizar en una tabla.

Por otro lado (en carpeta aparte), tengo un proyecto VB de
tipo WebApp.

Alli tengo un formulario, ese formulario tiene un boton
con el siguiente codigo:

Private Sub Page_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load
Response.Buffer = True
Dim dr As SqlDataReader
Try
dr = objDatos.MuestraTabla
Catch ex As Exception
Mensaje(ex.Message)
Exit Sub
End Try
TextBox1.Text = Trim(dr.GetString(0))
End Sub

La pregunta es:
Donde estoy fallando ?
Se supone que el formulario (en su evento LOAD) deberia
llamar la funcion MuestraTabla, alli deberia hacer lo
siguiente:

Public Overloads Function MuestraTabla() As SqlDataReader
_sentenciaSQL = "exec StoreProcedure"
objCommand.CommandText = _sentenciaSQL
objCommand.CommandType =
CommandType.StoredProcedure
Dim dr As SqlDataReader = objCommand.ExecuteReader
Return dr
End Function

Pero no me esta mostrando nada.
Como hago entonces, para que desde una Class Library
(Imports MiClass), pueda mostrar los datos del
procedimiento en en TextBox ?

Se que a lo mejor pueda ser una tonteria, pero no doy mas :
(

A todos, mil y mil gracias.

Preguntas similare

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
26/07/2004 - 17:43 | Informe spam
Donde estoy fallando ?



Te falta ubicar el datareader en el primer registro y cargarlo.

...
dr.Read()
TextBox1.Text = Trim(dr.GetString(0))
...

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
Respuesta Responder a este mensaje
#2 Mauricio Henao Romero
26/07/2004 - 18:11 | Informe spam
Hola Eduardo, no me funciona, el Browser me envia ERROR
404.


Mi codigo en el WebForm es:

Imports DConfig
Imports System.Text
Imports System.Data.SqlClient

Private Sub Page_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load
Response.Buffer = True
Dim dr As SqlDataReader
ltlAlert.Text = "alert('Buscar los datos
existentes y mostrarlos')"
Try
dr = objDatos.MostrarTblParametros
Catch ex As Exception
Mensaje(ex.Message)
Exit Sub
End Try
dr.Read()
TextBox1.Text = Trim(dr.GetString(0))
End Sub

La clase DConfig contiene el siguiente codigo:

Imports System.Data.SqlClient

Public Overloads Function MostrarTblParametros() As
SqlDataReader
_sentenciaSQL = "Exec Store Procesure"
objCommand.CommandText = _sentenciaSQL
objCommand.CommandType =
CommandType.StoredProcedure
Dim dr As SqlDataReader = objCommand.ExecuteReader
Return dr
End Function


Pero no funciona.

Que mas me recomiendas ?

Donde estoy fallando ?



Te falta ubicar el datareader en el primer registro y


cargarlo.


dr.Read()
TextBox1.Text = Trim(dr.GetString(0))


Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo


.

Respuesta Responder a este mensaje
#3 Eduardo A. Morcillo [MS MVP VB]
26/07/2004 - 18:18 | Informe spam
Hola Eduardo, no me funciona, el Browser me envia ERROR
404.



El error 404 es que no se encuentra el archivo en el servidor, asi que debes
estar navegando a la pagina equivocada.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
Respuesta Responder a este mensaje
#4 Mauricio Henao
26/07/2004 - 18:34 | Informe spam
Hola Eduardo.

Eso mismo pensaba yo, pero cuando ignoro el codigo, todo
funciona bien, el ingreso que tengo y lo demas funciona
bien.

Haciendo un Try..Catch, me saca la siguiente Excepcion:

"Object reference not set to an instance of an object."

El codigo de mi Class es:
Imports System.Data.SqlClient
Public Overloads Function MostrarTblParametros() As
SqlDataReader

objCommand.CommandType = CommandType.StoredProcedure
objCommand.CommandText = "SpCe_BuscarConfig"
Dim dr As SqlDataReader = objCommand.ExecuteReader
Return dr

End Function



Luego, en el Load del formulario tengo ya:

Private Sub Page_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load

Response.Buffer = True
Dim dr As SqlDataReader
Try
dr = objDatos.MostrarTblParametros
Catch ex As Exception
Mensaje(ex.Message)
Exit Sub
End Try
dr.Read()
TextBox1.Text = Trim(dr.GetString(0))
End Sub

Gracias de Nuevo.
Un saludo desde Colombia.



Hola Eduardo, no me funciona, el Browser me envia ERROR
404.



El error 404 es que no se encuentra el archivo en el


servidor, asi que debes
estar navegando a la pagina equivocada.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo


.

Respuesta Responder a este mensaje
#5 Eduardo A. Morcillo [MS MVP VB]
26/07/2004 - 18:57 | Informe spam
Veo tres cosas que pueden causar ese error.

1) objCommand no referncia una instancia de SqlCommand.
2) objDatos no referencia ninguna instancia.
3) MostrarTblParametros falla con una excepcion y por lo tanto dr no tiene
ninguna instancia pero igualemente es usado.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida