Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/07/2012, 19:02
Avatar de stuart_david3
stuart_david3
 
Fecha de Ingreso: agosto-2011
Mensajes: 215
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Pasar imagen de una página a un crystal report como parametro o como sea p

Eh visto que lo hacen con data set, pero el problema es que la imagen no la estoy tomando de ninguna base de datos, ¿hay alguna manera de pasarla como parámetro de una imágen de otra página? Lo he intentado mediante su url, tengo una página donde tengo una imágen:

Código ASP:
Ver original
  1. <asp:Image ID="Image1" runat="server" ImageUrl="~/ver.jpg" />

En otra página la recibo en el evento load de la página de esta manera (junto con otro parametro de textbox, pero solo para ver que si los pase):

Código vb:
Ver original
  1. Imports CrystalDecisions.Web
  2. Imports CrystalDecisions.CrystalReports.Engine
  3. Imports CrystalDecisions.Shared
  4. Partial Class Imagen
  5.     Inherits System.Web.UI.Page
  6.     Public Function StringAsUtf8Bytes(ByVal strData As String) As Byte()
  7.  
  8.         Dim bytes() As Byte
  9.  
  10.         ' get unicode string as bytes
  11.        bytes = Encoding.UTF8.GetBytes(strData)
  12.  
  13.         ' return byte data
  14.        Return bytes
  15.  
  16.     End Function
  17.     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  18.         If Not Page.PreviousPage Is Nothing Then
  19.             Dim SourceTextBox As TextBox
  20.             SourceTextBox = CType(PreviousPage.FindControl("TextBox1"),  _
  21.                 TextBox)
  22.             Dim SourceImage As Image
  23.             SourceImage = CType(PreviousPage.FindControl("Image1"),  _
  24.                 Image)
  25.             If Not SourceTextBox Is Nothing Then
  26.                 TextBox1.Text = SourceTextBox.Text
  27.             End If
  28.             If Not SourceImage Is Nothing Then
  29.                 Image1 = SourceImage
  30.             End If
  31.  
  32.         End If
  33.         Dim rep As ReportDocument = New ReportDocument
  34.         rep.Load(Server.MapPath("VerImagen.rpt"))
  35.         Dim ParamAnio As ParameterDiscreteValue = New ParameterDiscreteValue
  36.         ParamAnio.Value = TextBox1.Text
  37.         Dim Imagen As ParameterDiscreteValue = New ParameterDiscreteValue
  38.         Imagen.Value = Image1.ImageUrl
  39.         Dim hola = StringAsUtf8Bytes(Imagen.Value.GetString)
  40.         rep.ParameterFields(0).CurrentValues.Add(ParamAnio)
  41.         rep.ParameterFields(1).CurrentValues.Add(hola.ToString)
  42.         Me.CRVReemplazos.ReportSource = rep
  43.         Me.CRVReemplazos.DataBind()
  44.     End Sub
  45. End Class

Y bueno si puedo mostrar la URL en el parámetro que puse en mi Crystal Report, pero a la hora de querer mostrar la imagen en base a esta URL, pues no me la muestra y me manda este error:

No se encuentra el miembro público 'GetString' en el tipo 'String'.

La verdad no se si sea la manera correcta, pero relacionando lo que he leído eh llegado a esto.

¿Es correcto que ponga un parámetro y en este muestre la imagen?, es decir, no hay parametros dde tipo Image ¿cierto?

Pues espero y me puedan ayudar por que nada más no me sale ... Gracias de antemano =)...