Clipper/FiveWin - problemas informe fw dbskip?? ayuda

 
Vista:
sin imagen de perfil

problemas informe fw dbskip?? ayuda

Publicado por marcela (86 intervenciones) el 09/03/2011 04:57:16
Hola a todos los del foro.
tengo un problema con un informe en fivewin.parece sencillo pero se me complico.
para ello la idea es que mientras recorre. la base de datos
haga certificados para poderlos imprimir.pero solo genera uno solo.
no se donde colocar el skipe. o page o endpage.para q genere y visualice
todos los registros.en clipper puro lo hacia asi y funcionaba.

aca envio
codigo por si alquien me ayuda.y muchas gracias por su tiempo.-como siempre.


dbGoTop()
oDbf:Seek( dtos(ofec1))

PRINTER oPrn PREVIEW


DO WHILE .not. Eof()

PAGE

oPrn:CmSay( 4.5, 7.17, " CERTIFICADO DE RECEPCION " , oFntgrande )
oPrn:CmSay( 10.5, 4.7, "Generador :" + oDbf:nomchofer , oFntNormal )
oPrn:CmSay( 11.0, 4.7, "Rut :" + oDbf:rut , oFntNormal )


ENDPAGE

dbSkip()
enddo

ENDPRINT
RETURN NIL
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

problemas informe fw dbskip?? ayuda

Publicado por marcelo (52 intervenciones) el 16/03/2011 15:39:03
marcela, probá asi:


dbGoTop()
oDbf:Seek( dtos(ofec1))

DO WHILE .not. Eof()
MiReporte()
dbSkip()
enddo
retu nil

function MiReporte()
PRINTER oPrn PREVIEW
PAGE
oPrn:CmSay( 4.5, 7.17, " CERTIFICADO DE RECEPCION " , oFntgrande )
oPrn:CmSay( 10.5, 4.7, "Generador :" + oDbf:nomchofer , oFntNormal )
oPrn:CmSay( 11.0, 4.7, "Rut :" + oDbf:rut , oFntNormal )
ENDPAGE
ENDPRINT
RETURN NIL
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
sin imagen de perfil

problemas informe fw dbskip?? ayuda

Publicado por marcela (86 intervenciones) el 16/03/2011 21:38:49
hola. gracias . prove el codigo.pero no me sirve ya que aparece a cada rato ya existe una ventana de
previsualizacion. es to es debido a q la funcion reporte abre y cierra un listado cada vez que recorre la base de datos. lo que nececito yo es un informe completo q salgan en un solo previuw. y no lo puedo hacer aun. espero q me ayuden.. y saludos y muchas gracias por tu tiempo.
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

problemas informe fw dbskip?? ayuda

Publicado por marcelo (52 intervenciones) el 21/03/2011 20:32:56
ahora entiendo lo que buscas...

el problema es que estas imprimiendo en las filas 4.5; 10.5 y 11.0 y por eso no sale todo en una misma hoja.

deberias crear una variable nRow y que aumente luego de cada skip.

algo asi, p.ej.

oPrn:CmSay( nRow, 7.17, " CERTIFICADO DE RECEPCION " , oFntgrande )
nRow=nRow+3
oPrn:CmSay( nRow, 4.7, "Generador :" + oDbf:nomchofer , oFntNormal )
nRow=nRow+3
oPrn:CmSay( nRow, 4.7, "Rut :" + oDbf:rut , oFntNormal )

fijate el los ejemplos de SAMPLES\LABELS, ahi imprime varios informes con formato etiqueta e incluso con un controlador del largo de hoja para hacer el salto de pagina.

Espero que te sirva.
Marcelo
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
sin imagen de perfil

problemas informe fw dbskip?? ayuda

Publicado por marcela mosela ramos (86 intervenciones) el 21/03/2011 23:19:55
estimado marcelo.gracias por tu ayuda .pero talvez yo no explique bien mi problema
el codigo q me das es para tener varios registros en 1 sola hoja.
yo quiero tener un solo registro por hoja. despues q muestre el sgte. registro
y asi sucesivamente,.o sea cada registro de mi base en una sola hoja.
y que trabaje con previw.
si yo tengo 30 registros en mi base de datos
que sean 30 hojas. cada registro con titulo y nombre de la persona.
espero ahora q me haya expresado bien.
gracias. muchas gracias por su tiempo.
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

problemas informe fw dbskip?? ayuda

Publicado por marcelo (52 intervenciones) el 22/03/2011 00:59:18
aca lo tenes, te hace un preview de 8 hojas con tres renglones en cada hoja.
cualquier duda escribime a mi casilla.
saludos
marcelo

#include "FiveWin.ch"

//----------------------------------------------------------------------------//

function GenerateLabels()

local oPrinter, oFont
local nWidth, nHeight, nMargin, nLblWidth, nLblHeight
local n,nRow

PRINTER oPrinter ;
NAME "Fivewin Labels" PREVIEW

DEFINE FONT oFont NAME "Times New Roman" SIZE 0, -14 ;
OF oPrinter

CursorWait()

for n = 1 to 8 &&LA CANTIDAD DE REGISTROS, HACE UN PREVIEW DE OCHO PAGINAS
oPrinter:StartPage()
nRow = oFont:nHeight
oPrinter:SAY( nRow, 10,"primer DATO QUE IMPRIMO en pagina: "+STR(n) )
nRow += 1.5 * oFont:nHeight
oPrinter:SAY( nRow, 10,"segundo DATO QUE IMPRIMO en pagina: "+STR(n) )
nRow += 1.5 * oFont:nHeight
oPrinter:SAY( nRow, 10,"tercer DATO QUE IMPRIMO en pagina: "+STR(n) )
oPrinter:EndPage()
next



CursorArrow()

oPrinter:Preview()
oFont:End()

return nil

//----------------------------------------------------------------------------//
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