Power Builder - imagen en reporte dw

   
Vista:

imagen en reporte dw

Publicado por Alejandro (72 intervenciones) el 25/02/2011 21:21:54
Amigos tengo un problema, se los comento a ver si me pueden dar alguna manito, tengo mi tabla en SQL ya creada id, nombre, path este almacena la ruta de una imagen, la cual es bien grande, el problema es que cuando intento mostrar esta tabla en un reporte DW, no me muestra la imagen, pero si puedo con una más pequeña, ustedes saben a que debe este error?. saludos amigos, espero me puedan ayudar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:imagen en reporte dw

Publicado por Luis (44 intervenciones) el 28/02/2011 09:58:50
Hola Alejandro,

¿como gestionas el mostrarla?

Si la cargas usando un blob, el tamaño máximo de bloque es de 32765 bytes, que imagino es lo que te pasa, para ello, maneja bloques de este tamaño, te pongo un ejemplo:

---------------------------------------------------------------------------------------------

Blob lblb_blob_parcial
Blob lblb_blob_total
Long ll_longitud
Integer li_bytes_leidos
Integer li_fichero
Integer li_i
Integer li_j
Pointer OldPointer

//Reloj de arena
OldPointer = Setpointer(Hourglass!)
//y se desactiva que se redibuje para no ver saltos
p_1.SetRedraw(FALSE)

//longitud del fichero a cargar
ll_longitud = FileLength("c:\ruta_donde_está_la_imagen\nombre_de_la_imagen.bmp") //podría ser también jpg.

//Si el tamaño supera los 32765 bytes
// Abrá que acumular tantas veces
// como el número de bytes que tenga la imagen entre 32765

If ll_longitud > 32765 Then
If Mod(longitud, 32765) = 0 Then
li_j = ll_longitud / 32765
Else
li_j = ( ll_longitud / 32765 ) + 1
End If
Else
li_j = 1
End If

//Se abre el fichero para leerlo.
li_fichero = FileOpen("c:\windows\estadio1g.bmp", StreamMode!, Read!, LockRead!)
//Se recoge la imagen en un blob
For li_i To li_j
li_bytes_leidos = FileRead( li_fichero, lblb_blob_parcial )
lblb_blob_total = lblb_blob_total + lblb_blob_parcial
Next
//Cerramos el fichero
FileClose( li_fichero )
//Pintamos la imagen, permitimos redibujar y reestablecemos el puntero del ratón
p_1.SetPicture(lblb_blob_total)
p_1.SetRedraw( True )
SetPointer( oldPointer )

---------------------------------------------------------------------------------------------

Espero te sirva,
saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:imagen en reporte dw

Publicado por Alejandro (72 intervenciones) el 28/02/2011 14:25:36
Ok Luis voy a realizarlo como tu dices y te comento...gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar