none
error linea de codigo RRS feed

  • Pregunta

  • Server Error in '/' Application.

    Parameterized Query '(@usuario nvarchar(4000))select equipo,modelo,marca,ip,nserie,ma' expects parameter @usuario, which was not supplied.

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Data.SqlClient.SqlException: Parameterized Query '(@usuario nvarchar(4000))select equipo,modelo,marca,ip,nserie,ma' expects parameter @usuario, which was not supplied.

    Source Error:

    Line 57:       Dim cmd As New SqlCommand(query1, conexion)
    Line 58:       cmd.Parameters.AddWithValue("@usuario", (txtnuser.SelectedItem))
    Line 59:       Dim reader As SqlDataReader = cmd.ExecuteReader
    Line 60:       If reader.Read() Then
    Line 61:         txtmcad.Text = (reader("macad"))

    Source File: C:\Documents and Settings\Administrator\Desktop\reporteador1.2\reporteador1.2\Reportesn.aspx.vb    Line: 59
    tengo este error en mi codigo que puedo hacer

    ING Dan Montes IT infraestructura
    jueves, 18 de agosto de 2011 16:55

Respuestas

Todas las respuestas

  • Hola

    Muy probablemente txtnuser.SelectedItem sea null

    Intenta quemando el valor que según sabes tiene que devolver datos!


    Ingphillip's Prog
    Recetas ASP.NET

    Follow @Ingphillip
    jueves, 18 de agosto de 2011 16:58
  • lo cambie por selected value y no me arroja los datos este es mi codigo

     Using conexion As New SqlConnection(ConfigurationManager.ConnectionStrings("conect").ToString())
                conexion.Open()
                Dim query1 As String = "select equipo,modelo,marca,ip,nserie,macad,cuenta from inventario where usuario=@usuario"
                Dim cmd As New SqlCommand(query1, conexion)
                cmd.Parameters.AddWithValue("@usuario", (txtnuser.SelectedValue))
                Dim reader As SqlDataReader = cmd.ExecuteReader
                If reader.Read() Then
                    txtmcad.Text = (reader("macad"))
                    txtip.Text = (reader("ip"))
                    txtmcr.Text = (reader("marca"))
                    txtmdl.Text = (reader("modelo"))
                    txtequipo.Text = (reader("equipo"))
                    txtns.Text = (reader("nserie"))
                    txtcuenta.Text = (reader("cuenta"))
                End If

            End Using


    ING Dan Montes IT infraestructura
    jueves, 18 de agosto de 2011 17:01
  • Es por que el DropDownList no tiene valor, seguramente cuando se hace el postback, lo cargas nuevamente y de esta forma el valor seleccionado se pierde.

    Debes cargar el DropdownList así:

    En el evento Page_Load

    if(!IsPostBack)

    {

         //Acá se carga.

     }

    Si no es por esto, pon un punto de interrupción en el mismo evento que te digo y sigue el flujo, para ver donde el selectedvalue se convierte en "".

     

     


    Ingphillip's Prog
    Recetas ASP.NET

    Follow @Ingphillip
    jueves, 18 de agosto de 2011 17:04
  • hola

    no has probado poniendo en el parametro un valor fijo? solo para descartar que si tu controlas el valor que pasas traiga resultados

    si lo hace entocnes es el valor del combo el del problema, pero ya sabes de dodne vienea

    usa

    cmd.Parameters.AddWithValue("@usuario", valorfijo)

    y valida que funcione

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 18 de agosto de 2011 17:06
  • es que es valor fijo si no que son variables como en ese drop se cargan datos de la base de datos y el usuario selecciona un dato x y se deben de llenar los textbox automaticamente

     


    ING Dan Montes IT infraestructura
    jueves, 18 de agosto de 2011 17:09
  • claro ya se que son variable ssegun la seleccion

    pero solo para probar y descartar de dodne viene el problema, si pones un valor que tu controlas y sabes hay registros que este cargue el valor en el textbox

    ya si ahi no lo hace bien entonces es un problema mas profundo, sino solo es el valor que devuelve el combo cuando aplica el filtro

    es solo para probar y entender dodne viene el problema

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 18 de agosto de 2011 17:21
  • ya lo probe con un valor fijo y si fuinciona
    ING Dan Montes IT infraestructura
    jueves, 18 de agosto de 2011 17:32
  • perfectro eso es un avance importante

    entocnes haz lo siguiente

    pon en un label el valor que toma el combo, esto en el evento del combo cuadno cambias de seleccion

    Labal1.Text = CStr(txtnuser.SelectedValue)

    y valida que el valor toma, deberia ser valido con tus satos de la tabla

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 18 de agosto de 2011 17:41
  • 1 - Cargas de forma correcta el DropDownList?,

    2 - Hiciste el degug paso a paso, para saber que pasa con el valor seleccionado del DropDownList?

    3 - Depuraste con paso a paso la parte en que se hace el SQLCommand?, paso a paso deberías ver que está enviando el DropDownlist

     


    Ingphillip's Prog
    Recetas ASP.NET

    Follow @Ingphillip
    jueves, 18 de agosto de 2011 17:43
  • ya vi cual era mi erro en otro codigo  estaba tomando  el dato erroneo en el query de esa forma no mostrabalos datos


    ING Dan Montes IT infraestructura
    jueves, 18 de agosto de 2011 17:52