puedo imprimir un bitmap en TReport ?

Post Reply
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

puedo imprimir un bitmap en TReport ?

Post by Armando »

Amigos:

Es posible imprimir una imagen (.Bmp o .Jpg) en un reporte hecho con la clase TReport
en una columna especifica?

Por ejemplo

Code: Select all | Expand


    REPORT oReporte CAPTION cTitulo PREVIEW ;
        HEADER ALLTRIM(oApp:cRazonSocial),;
        "",;
        cTitulo CENTER;
        TITLE "Fecha: "+Date2Txt(DATE()),;
        "Hoja No:"+STR(oReporte:nPage,3);
        FONT oFont1,oFont2,oFont3;
        PEN open1,oPen2

        COLUMN TITLE "Concepto "        DATA oRsSal:Fields("DET_CPT"):Value         SIZE 24 LEFT
        COLUMN TITLE "Imagen"           DATA PUEDO DEFINIR AQUI LA IMAGEN?      SIZE 09 RIGHT
    END REPORT
 



o Así?

Code: Select all | Expand


oReporte:Say(nCol, miBitmap,,,)
 


Algún ejemplo?

He visto ejemplos en el foro y en la carpeta samples pero es para imprimirlo como logotipo
en los encabezados pero a mi me interesa que sea en una columna, como si fuera un dato
mas del renglón.

Saludos al foro
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Marcelo Via Giglio
Posts: 1077
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia
Has thanked: 1 time

Re: puedo imprimir un bitmap en TReport ?

Post by Marcelo Via Giglio »

Hola,

prueba así:

Code: Select all | Expand

oReport:sayBitmap( [X], [y], ["file.bmp"], [width], [height], RPT_CMETERS )

 
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: puedo imprimir un bitmap en TReport ?

Post by Armando »

Marcelo:

Agradecido con tu respuesta, he intentado con oReporte:SayBitMap() pero
la verdad es que es muy complicado, al menos para mi, calcular la ubicación
del bitmap en el reporte pues las coordenadas que se indican están en CMS
o INCHES, yo esperaba que las coordenadas fueran nRow,nCol.

He logrado pintar los bitmaps con oReporte:SayBitMap() pero no quedan
exactamente sobre el renglón, no se ven muy estéticos pero es lo más que
puedo hacer.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Antonio Linares
Site Admin
Posts: 42521
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 31 times
Been thanked: 76 times
Contact:

Re: puedo imprimir un bitmap en TReport ?

Post by Antonio Linares »

Armando,

Puedes mostrar una imagen de como se ve ahora ? gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: puedo imprimir un bitmap en TReport ?

Post by Armando »

Master:

Con mucho agrado

Image

Observa el BMP cerca de la lupa y veras que se va saliendo del renglón.

Y este es el código

Code: Select all | Expand


    REPORT oReporte CAPTION cTitulo PREVIEW ;
        HEADER ALLTRIM(oApp:cRazonSocial),;
        "",;
        cTitulo CENTER;
        TITLE "Fecha: "+Date2Txt(DATE()),;
        "Hoja No:"+STR(oReporte:nPage,3);
        FONT oFont1,oFont2,oFont3;
        PEN open1,oPen2

        COLUMN TITLE "Descripción" DATA oRsMat:Fields("MAT_DES"):Value     SIZE 35 LEFT
        COLUMN TITLE "Clave"            DATA oRsMat:Fields("MAT_MAT"):Value     SIZE 15 LEFT
        COLUMN TITLE "U.M."         DATA oRsMat:Fields("MAT_UDM"):Value     SIZE 04 LEFT
        COLUMN TITLE "Unidades"     DATA SdoUni()                                   SIZE 10 RIGHT PICTURE "@Z 9,999,999.999" TOTAL
        COLUMN TITLE "Costo"            DATA SdoVal()                                   SIZE 11 RIGHT PICTURE "@Z 99,999,999.99" TOTAL
        COLUMN TITLE "Obs"          DATA IIF(lMinimo,DasBmp(oReporte)," ")  SIZE 03 CENTER
    END REPORT

...
...
...
...

STATIC FUNCTION DasBmp(oReporte)
    oReporte:SayBitmap(oReporte:nRow()/210,19.15,"C:\AppSap\Resource\RedBtn.Bmp",.25,.25,RPT_CMETERS)
RETURN(NIL)
 


Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Antonio Linares
Site Admin
Posts: 42521
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 31 times
Been thanked: 76 times
Contact:

Re: puedo imprimir un bitmap en TReport ?

Post by Antonio Linares »

Armando,

Si varías 210 en oReporte:nRow()/210 imagino que puedes corregir la posición del bitmap.

Por otra parte puedes usar los métodos Pix2Cmtr(), Pix2Mmtr() y Pix2Inch() de oReporte:oDevice para cambiar al tipo de escala que necesites.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: puedo imprimir un bitmap en TReport ?

Post by Armando »

Antonio:

Gracias por la sugerencia, pruebo y te aviso.

El valor 210 lo tomé de la diferencia entre un renglón y el siguiente.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Marcelo Via Giglio
Posts: 1077
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia
Has thanked: 1 time

Re: puedo imprimir un bitmap en TReport ?

Post by Marcelo Via Giglio »

Hola,

la clase report ya tiene una opción para incorporar imagenes en una columna, creo que es eso lo que estas buscando

Code: Select all | Expand

#xcommand COLUMN [ <oRptCol> ] ;
                [ TITLE <bTitle, ...> ] ;
                [ AT <nCol> ] ;
                [ DATA <bData, ...> ] ;
                [ SIZE <nSize> ] ;
                [ <pict: PICT, PICTURE> <cPicture, ...> ] ;
                [ FONT <uFont> ] ;
                [ [ <lCum: CUMULATIVE> ] <total: TOTAL> [ FOR <bTotalExpr> ]  ] ;
                [ <ColFmt:LEFT,CENTER,CENTERED,RIGHT> ] ;
                [ <lShadow:SHADOW> ] ;
                [ <lGrid:GRID> [ <nPen> ] ] ;
                [ <memo: MEMO, MULTILINE> ] ;
                [<img:IMAGE> [ IMGDATA <bimg> ] [HEIGHT <h> [<imgpix:PIXEL>] ] [ ALPHALEVEL <nAlpha>] ] ;
                [ [<styl:LINE,BAR>] CHARTDATA <chdata> [HEIGHT <h2> [<chtpix:PIXEL>] ] ;
                [ MAXVAL <chtmax>] [COLOR <clr,...>] ] ;
                [ <valign:TOP,VCENTER,BOTTOM> ] ;
 
Post Reply