none
Referencia a objeto no establecida como instancia de un objeto. =( RRS feed

  • Pregunta

  • Hola que tal, yo nuevamente aunque no me han podido resolver ninguna de mis preguntas hago el ultimo intento...

    Hice un reporte en Crystal y todo muy bien, este es el codigo con el que funciona

    Protected Sub imprimir()Dim conString As String = "server=fierros;uid=FIERROS;pwd=SdrFrrs" Dim dsSan As New DataSet2() Dim dsPase As New DataSet() Dim id As String id = Me.TextBoxPase.Text Dim query_pase As String Dim query_san As String query_pase = "QUERY" query_san = "QUERY" Dim conn As New OracleConnection(conString) subrptDoc.Load(Server.MapPath("pruebasan.rpt")) Dim saAd As New OracleDataAdapter() saAd.SelectCommand = New OracleCommand(query_san, conn) saAd.Fill(dsSan, "sanidad") rptDoc.Load(Server.MapPath("rptPase.rpt")) Dim pAd As New OracleDataAdapter() pAd.SelectCommand = New OracleCommand(query_pase, conn) pAd.Fill(dsPase, "Pase") rptDoc.Subreports.Item("pruebasan.rpt").SetDataSource(dsSan) rptDoc.SetDataSource(dsPase) Dim CrExportOptions As ExportOptions Dim CrDiskFileDestinationOptions As New DiskFileDestinationOptions() Dim CrFormatTypeOptions As New PdfRtfWordFormatOptions() CrDiskFileDestinationOptions.DiskFileName = "C:\TEMP\pase" + id CrExportOptions = rptDoc.ExportOptions With CrExportOptions .ExportDestinationType = ExportDestinationType.DiskFile .ExportFormatType = ExportFormatType.PortableDocFormat .DestinationOptions = CrDiskFileDestinationOptions .FormatOptions = CrFormatTypeOptions End With rptDoc.ExportToHttpResponse(ExportFormatType.PortableDocFormat, Response, True, "pase" + id) rptDoc.Close()

    End Sub

    Lo exporta a .PDF sin problemas...

    Ahora intento hacer que se muestre en una ventana nueva, para que no tengan que estar guardando y abriendo el archivo para poder imprimirlo dentro de un boton puse el sig. cada que se hace clic

    Response.Redirect("Reporte_pase.aspx?Pase=" + id)

    Y en la nueva pag Reporte_pase.aspx

    Partial Class Reporte_pase
    
        Inherits System.Web.UI.Page
        Private subrptDoc As ReportDocument
        Private rptDoc As ReportDocument
    
    
        Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
            imprimir()
        End Sub
    
        Protected Sub imprimir()
    
            Dim conString As String = "server=fierros;uid=FIERROS;pwd=SdrFrrs"
            Dim dsSan As New DataSet2()
            Dim dsPase As New DataSet()
            Dim id As String
            id = Request.QueryString("Pase")
    
            Dim query_pase As String
            Dim query_san As String
    
            query_pase = "QUERY"
    
            query_san = "QUERY"
    
            Dim conn As New OracleConnection(conString)
    
            subrptDoc.Load(Server.MapPath("pruebasan.rpt"))
            Dim saAd As New OracleDataAdapter()
            saAd.SelectCommand = New OracleCommand(query_san, conn)
            saAd.Fill(dsSan, "sanidad")
    
            rptDoc.Load(Server.MapPath("rptPase.rpt"))
            Dim pAd As New OracleDataAdapter()
            pAd.SelectCommand = New OracleCommand(query_pase, conn)
            pAd.Fill(dsPase, "Pase")
            rptDoc.Subreports.Item("pruebasan.rpt").SetDataSource(dsSan)
            rptDoc.SetDataSource(dsPase)
    
            CrystalReportViewer1.ReportSource = rptDoc
    
        End Sub

    Cuando ejecuto el proyecto corre normal, cliqueo el boton de imprimir


    Si pudieron ayudarme a encontrar mi problema, siquiera en el proyecto me marca algun error



    Enrique Moreno Velo | Chihuahua, Chih. México


    miércoles, 18 de enero de 2017 19:36

Todas las respuestas

  • El problema está en la variable subrptDoc, que la has declarado al principio de la página pero no la has inicializado, por lo que en el momento de llamar al .Load vale Nothing y por eso sale el error.

    Revisa la página original (la que funcionaba) y busca todas las ocurrencias de subrptDoc. En algún sitio, posiblemente en el Page_load, tendrás el código que inicializa la variable. Cópialo a la nueva página, y debería funcionar.

    miércoles, 18 de enero de 2017 19:50
  • Hola, gracias ya cheque el codigo fue lo primero que se me ocurrio pero solo lo declaro al inicio y funciona correctamente

    Enrique Moreno Velo | Chihuahua, Chih. México

    miércoles, 18 de enero de 2017 20:05