Se tiene una tabla con archivos PDF almacenados en un campo blob, se requiere hacer la descarga desde estos campos blob.
Para el ejemplo se tiene la siguiente estructura de la tabla:
Nombre de la Tabla: reportespdf
ReportesPdfSec N(5) * Autonumerico
ReportesPdfNombre C(40)
ReportesPdfArchivo Blob;
Seguidamente cada la fila de grilla permitirá hacer un link al procedimiento para descargar el archivo PDF.
En el Evento Load, debe tener lo siguiente:
Event Load&DescargarPdf.Link = DESCARGASPDF.Link(ReportesPdfSec)EndEvent
El procedimiento para descargar es el siguiente:
Setear sus propiedades:
MAIN PROGRAM = TRUE
CALL PROTOCOL = HTTP.
Crear las variables &HttpResponse, &ReportePdfSec
Reglas:
parm(In: &ReportePdfSec);
Source:
&HttpResponse.AddHeader(‘Content-type’, ‘application/download’)
// Leer Archivo de Reportes PDF
For Each ReportesPdfSec
Where ReportesPdfSec = &ReportesPdfSec
Defined By ReportesPdfNombre
&HttpResponse.AddHeader(‘Content-Disposition’, ‘attachment; filename=’ + ReportesPdfNombre)
Return
// Leer Archivo de Reportes PDF
For Each ReportesPdfSec
Where ReportesPdfSec = &ReportesPdfSec
Defined By ReportesPdfNombre
&HttpResponse.AddHeader(‘Content-Disposition’, ‘attachment; filename=’ + ReportesPdfNombre)
EndFor&HttpResponse.AddFile(ReportesPdfArchivo)
Return
3 comentarios:
Gracias Genio!!!!
funciona, gracias!!
Mi estimado, consulta:
- &DescargarPdf que tipo de variable sería, o a que tipo esta referenciado?
Publicar un comentario