Antonio, Usando PreView en reportes finaliza la App ......
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
Antonio, Usando PreView en reportes finaliza la App ......
Hola Antonio y foro :
No me habia percatado de ese detalle, hasta ahora que estuve checando algunos reportes, al usar el preview me muestra todo OK, pero al salir del mismo y querer seguir trabajando, pum !!! cierra la aplicacion de un solo golpe y sin ningun tipo de aviso.
- Ya estuve haciendo pruebas, si mando imprimir directo, todo OK, no termina la App.
- Ya desactive la clase UtilPrn que tambien uso en los reportes, la clase de Menu5C que entra en un "pequeño conflicto" con el menu del preview y nada, con y sin estas clases hace lo mismo.
- Ya cheque la documentacion de la clase, y no encuentro nada raro contra el codigo.
- Ya susitui el archivo prev32.dll que tenia, con el que trae el build de Abril 06 y nada.... igual
Comento que estos reportes, tal cual estan, trabajaban a la perfeccion con 16bits.
Anexo links para ver unos video de lo que sucede :
NOTA : En los video aparece "basurita" debido a la calidad de los mismos, pero en pantalla todo se ve OK.
Caso 1 :
Desde una pestaña de un folder, al generar el preview, me permite seguir usando las otras pestañas,pero al querer seleccionar alguna del folder "padre" ....... zas !!!
http://hyperupload.com/download/015f535 ... 1.avi.html
Caso 2 :
Desde un dialogo, que es donde permito configurar la impresion de los documentos del cliente, usando la opcion de prueba..... zas !!!
http://hyperupload.com/download/02cc1fa ... 2.avi.html
Y aqui esta un poco de codigo :
Function PRNCRTGRP( nMode, aPrntrDts, cKurUsr, cCrtTxt, lVwDts, lOrdX )
LOCAL oPrn, nLine := 7.5, nQ, nRw, nCl, oFntH, oFntD, oFntF, oBrush, oUtil, cLX
LOCAL cEmpHdr, cStrF, aHdrX := { "RELACION DE VENTAS [ORDEN] ", ;
"CONCENTRADO DE VENTAS AGRUPADAS POR PRODUCTO", "CONCENTRADO DE VENTAS POR USUARIO", ;
"RELACION DE VENTAS COSTEADAS" }
LOCAL nPags := 1, cL1, cL2, cLH, cStrLine, cLY, oCorteX, aRepObj, aRepVrs, aHdrDts
cEmpHdr := AllTrim( DeCrypt( AllTrim( EMPDTSP->ENC ), GnMyXDts(7) ) )
IF nMode == 1
aHdrX[1] += IIF( lOrdX, "DOCUMENTO ", "CAPTURA " )
IF lVwDts
aHdrX[1] += " [OTROS DATOS]"
ENDIF
ENDIF
cL1 := PadC( "IMPRESION DEL CORTE DEL DIA : " + ChgDat2Str( Date() ), 78 )
cL2 := PadC( aHdrX[nMode], 78 )
cStrF := " IMPRESO POR : " + cKurUsr + Space(10) + "EL : " + ChgDat2Str( Date() ) + ;
Space(10) + "A LAS : " + Time() + Space(10) + "PAG : " + AllTrim( Str( nPags ) )
DO CASE
CASE nMode == 1
cLH := " FOLIO No. PARTE DESCRIPCION UNITARIO UNS IMPORTE"
CASE nMode == 2
cLH := " GRUPO No. PARTE DESCRIPCION UNS IMPORTE"
CASE nMode == 3
cLH := " FOLIO NOMBRE DEL CLIENTE TIPO HORA IMPORTE"
CASE nMode == 4
cLH := " FOLIO UNS IMPORTE FACTURA UNS IMPORTE FECHA PROVEEDOR"
ENDCASE
IF aPrntrDts[8]
PRINT oPrn TITLE "CORTE DEL DIA" PREVIEW TO aPrntrDts[6]
ELSE
PRINT oPrn TO aPrntrDts[6]
ENDIF
DEFINE FONT oFntH NAME "Arial" SIZE 0,-16 BOLD OF oPrn
DEFINE FONT oFntD NAME "Courier New" SIZE 0,-12 OF oPrn
DEFINE FONT oFntF NAME "Arial" SIZE 0,-8 OF oPrn
DEFINE BRUSH oBrush COLOR CLR_WHITE
//DEFINE UTILPRN oUtil OF oPrn
oPrn:SetPortrait()
nRw := oPrn:nVertRes() / 66
nCl := oPrn:nHorzRes() / 80
oCorteX := TTxtFile():New( cCrtTxt )
aHdrDts := { cL1, cL2, cLH }
aRepObj := { oUtil, oFntH, oFntD, oFntF, oBrush } // Objetos Del Reporte
aRepVrs := { cEmpHdr, aHdrDts } // Varibles NO Modificables
PRNREPHDR( 0, aRepObj, aRepVrs, @cStrF, @nLine, @nPags )
FOR nQ := 1 TO oCorteX:RecCount()
IF nQ > 5
cStrLine := oCorteX:ReadLine()
oPrn:Say( nRw*nLine, nCl*01, cStrLine, oFntD )
nLine ++
IF nLine >= 61
PRNREPHDR( 1, aRepObj, aRepVrs, @cStrF, @nLine, @nPags )
ENDIF
ENDIF
oCorteX:Skip()
NEXT
oCorteX:Close()
ENDPAGE
ENDPRINT
RELEASE FONT oFntH, oFntD, oFntF
RELEASE BRUSH oBrush
//oFntH:END()
//oFntD:END()
//oFntF:END()
//oBrush:END()
//oUtil:Reset()
Return NIL
*-----*
Ojala y no sea algo grave......
Gracias y Saludos
No me habia percatado de ese detalle, hasta ahora que estuve checando algunos reportes, al usar el preview me muestra todo OK, pero al salir del mismo y querer seguir trabajando, pum !!! cierra la aplicacion de un solo golpe y sin ningun tipo de aviso.
- Ya estuve haciendo pruebas, si mando imprimir directo, todo OK, no termina la App.
- Ya desactive la clase UtilPrn que tambien uso en los reportes, la clase de Menu5C que entra en un "pequeño conflicto" con el menu del preview y nada, con y sin estas clases hace lo mismo.
- Ya cheque la documentacion de la clase, y no encuentro nada raro contra el codigo.
- Ya susitui el archivo prev32.dll que tenia, con el que trae el build de Abril 06 y nada.... igual
Comento que estos reportes, tal cual estan, trabajaban a la perfeccion con 16bits.
Anexo links para ver unos video de lo que sucede :
NOTA : En los video aparece "basurita" debido a la calidad de los mismos, pero en pantalla todo se ve OK.
Caso 1 :
Desde una pestaña de un folder, al generar el preview, me permite seguir usando las otras pestañas,pero al querer seleccionar alguna del folder "padre" ....... zas !!!
http://hyperupload.com/download/015f535 ... 1.avi.html
Caso 2 :
Desde un dialogo, que es donde permito configurar la impresion de los documentos del cliente, usando la opcion de prueba..... zas !!!
http://hyperupload.com/download/02cc1fa ... 2.avi.html
Y aqui esta un poco de codigo :
Function PRNCRTGRP( nMode, aPrntrDts, cKurUsr, cCrtTxt, lVwDts, lOrdX )
LOCAL oPrn, nLine := 7.5, nQ, nRw, nCl, oFntH, oFntD, oFntF, oBrush, oUtil, cLX
LOCAL cEmpHdr, cStrF, aHdrX := { "RELACION DE VENTAS [ORDEN] ", ;
"CONCENTRADO DE VENTAS AGRUPADAS POR PRODUCTO", "CONCENTRADO DE VENTAS POR USUARIO", ;
"RELACION DE VENTAS COSTEADAS" }
LOCAL nPags := 1, cL1, cL2, cLH, cStrLine, cLY, oCorteX, aRepObj, aRepVrs, aHdrDts
cEmpHdr := AllTrim( DeCrypt( AllTrim( EMPDTSP->ENC ), GnMyXDts(7) ) )
IF nMode == 1
aHdrX[1] += IIF( lOrdX, "DOCUMENTO ", "CAPTURA " )
IF lVwDts
aHdrX[1] += " [OTROS DATOS]"
ENDIF
ENDIF
cL1 := PadC( "IMPRESION DEL CORTE DEL DIA : " + ChgDat2Str( Date() ), 78 )
cL2 := PadC( aHdrX[nMode], 78 )
cStrF := " IMPRESO POR : " + cKurUsr + Space(10) + "EL : " + ChgDat2Str( Date() ) + ;
Space(10) + "A LAS : " + Time() + Space(10) + "PAG : " + AllTrim( Str( nPags ) )
DO CASE
CASE nMode == 1
cLH := " FOLIO No. PARTE DESCRIPCION UNITARIO UNS IMPORTE"
CASE nMode == 2
cLH := " GRUPO No. PARTE DESCRIPCION UNS IMPORTE"
CASE nMode == 3
cLH := " FOLIO NOMBRE DEL CLIENTE TIPO HORA IMPORTE"
CASE nMode == 4
cLH := " FOLIO UNS IMPORTE FACTURA UNS IMPORTE FECHA PROVEEDOR"
ENDCASE
IF aPrntrDts[8]
PRINT oPrn TITLE "CORTE DEL DIA" PREVIEW TO aPrntrDts[6]
ELSE
PRINT oPrn TO aPrntrDts[6]
ENDIF
DEFINE FONT oFntH NAME "Arial" SIZE 0,-16 BOLD OF oPrn
DEFINE FONT oFntD NAME "Courier New" SIZE 0,-12 OF oPrn
DEFINE FONT oFntF NAME "Arial" SIZE 0,-8 OF oPrn
DEFINE BRUSH oBrush COLOR CLR_WHITE
//DEFINE UTILPRN oUtil OF oPrn
oPrn:SetPortrait()
nRw := oPrn:nVertRes() / 66
nCl := oPrn:nHorzRes() / 80
oCorteX := TTxtFile():New( cCrtTxt )
aHdrDts := { cL1, cL2, cLH }
aRepObj := { oUtil, oFntH, oFntD, oFntF, oBrush } // Objetos Del Reporte
aRepVrs := { cEmpHdr, aHdrDts } // Varibles NO Modificables
PRNREPHDR( 0, aRepObj, aRepVrs, @cStrF, @nLine, @nPags )
FOR nQ := 1 TO oCorteX:RecCount()
IF nQ > 5
cStrLine := oCorteX:ReadLine()
oPrn:Say( nRw*nLine, nCl*01, cStrLine, oFntD )
nLine ++
IF nLine >= 61
PRNREPHDR( 1, aRepObj, aRepVrs, @cStrF, @nLine, @nPags )
ENDIF
ENDIF
oCorteX:Skip()
NEXT
oCorteX:Close()
ENDPAGE
ENDPRINT
RELEASE FONT oFntH, oFntD, oFntF
RELEASE BRUSH oBrush
//oFntH:END()
//oFntD:END()
//oFntF:END()
//oBrush:END()
//oUtil:Reset()
Return NIL
*-----*
Ojala y no sea algo grave......
Gracias y Saludos
FWH 10.6 + xHarbour + Borland 582
- Manuel Valdenebro
- Posts: 706
- Joined: Thu Oct 06, 2005 9:57 pm
- Location: Málaga-España
Re: Antonio, Usando PreView en reportes finaliza la App ....
Raymundo Islas M. wrote:Hola Antonio y foro :
aRepObj:= { oUtil, oFntH, oFntD, oFntF, oBrush } //
¿Está bien el oUtil o seróa oPrn?
Un saludo
Manuel
Manuel
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
- Manuel Valdenebro
- Posts: 706
- Joined: Thu Oct 06, 2005 9:57 pm
- Location: Málaga-España
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Raymundo,
Tienes un VALID en la ventana principal de tu aplicación ? Se activa el VALID ?
O la aplicación se cierra totalmente y sin errores ? De ser así, Windows solo cierra una aplicación cuando esta entra en un bucle recursivo que desestabilizaría todo el sistema. Por ejemplo, una función que se llama a si misma: la pila crecería hasta un punto en que el sistema operativo decide cerrar la aplicación por seguridad.
Tienes un VALID en la ventana principal de tu aplicación ? Se activa el VALID ?
O la aplicación se cierra totalmente y sin errores ? De ser así, Windows solo cierra una aplicación cuando esta entra en un bucle recursivo que desestabilizaría todo el sistema. Por ejemplo, una función que se llama a si misma: la pila crecería hasta un punto en que el sistema operativo decide cerrar la aplicación por seguridad.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Raymundo,
Comprueba si en source\classes\rpreview.prg tienes estas líneas:
Comprueba si en source\classes\rpreview.prg tienes estas líneas:
Code: Select all
if IsAppThemed()
FixSays( oBar:hWnd )
endif
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO