UNRECOVERABLE ERROR 9009:
hb_xrealloc can't reallocate memory
Al pasar a la version 8.10 me da éste error en algo que antes no me lo daba, al imprimir la facturación con preview.
He probado a las soluciones que dió antonio como sysrefresh(), etc, y nada.
Si imprimo por pantalla 5 o 6 facturas, no hay problema, el problema es presentar la facturación, unas 500 facturas por pantalla.
Repito, con fwh 2.7 funciona perfectamente.
El código es el siguiente:
- Code: Select all Expand view RUN
static function Recunon(tipo,aAlias)
local oini
local oFont1, oFont2, oFont3,ofont4,ofont5,oFont6,oFont7,oPen1,oPen2
local aTamano, nWidth, nHeight, nMargin, nLblWidth, nLblHeight
local oPrn
local swp:=0
local nbase:=0,nbaseimpo,nneto,nalbaran
local tbase,tseguro,timportiva,tliquido,tbaseimpo
local ofin
local npiva
local cliqui
local nfor,nlines,cline,textoc
local liz,nlin
local odlg,cDomip,cPoblap,cTelfax,cemail,cweb
local ccodpro,cnompro,cdirpro,cnifpro,cPoblapro,cProvinpro,ccp
local cfpago,domiban,descuento,tdescuento
local Grabar:=.F.
local hoja:=1
local oRadio,osay
local nOpcion,oboton,oboton1
local nkgs
local pone:=space(1)
local pasada:=1
local corden
local lmode:=.F.
local cnombre
local xcopia:=.F.
local pinta:=.F.
local cnif,i
local xdatos,cvenci
local lineas:=iif(tipo=1,22,25.5)
local oBrush,oBrush1
local cindi:=(aAlias[24])->( OrdSetFocus() )
local cindi1:=(aAlias[22])->( OrdSetFocus() )
local primero:=space(1)
local colu:=0
local lpdf:=.F.
local lnpdf:=.F.
local tpdf:=.F.
local ppdf,nfecha
local mensaje:='LAS COPIAS DE ESTOS ALBARANES ESTAN DISPONIBLES EN NUESTRA PAGINA WEB'
local treten
Publicas:aini:=1
Publicas:aFin:=99999
(aAlias[22])->(OrdSetFocus("numero"))
(aAlias[24])->(OrdSetFocus("factura"))
//------------------------
DEFINE DIALOG oDlg RESOURCE "DESDER" BRUSH Publicas:oBrush1 TRANSPARENT Font Publicas:oWPpal:ofont
for i = 10 to 11
REDEFINE SAY oSay ID i OF oDlg COLOR CLR_GREEN
next i
REDEFINE get oini VAR Publicas:aini ID 101 OF oDlg picture "@E 99999"
REDEFINE get ofin VAR Publicas:aFin ID 102 OF oDlg picture "@E 99999"
REDEFINE RADIO oRadio VAR nOpcion ID 103,104 OF oDlg
REDEFINE CHECKBOX lpdf ID 200 OF oDlg on change oDlg:Update() WHEN lnpdf=.F. .and. tpdf=.F.
REDEFINE CHECKBOX lnpdf ID 201 OF oDlg on change oDlg:Update() WHEN lpdf =.F. .and. tpdf=.F.
REDEFINE CHECKBOX tpdf ID 202 OF oDlg on change oDlg:Update() WHEN lpdf =.F. .and. lnpdf=.F.
REDEFINE BUTTON oboton ID 550 OF oDlg PROMPT "Aceptar" ;
ACTION (Grabar := .T.,oDlg:End())
REDEFINE BUTTON oboton1 ID 551 OF oDlg PROMPT "Cancelar" ;
ACTION (Grabar := .F.,oDlg:End()) CANCEL
ACTIVATE DIALOG oDlg CENTERED
if grabar
Publicas:cIni:=padl(Publicas:aini,5,"0")
Publicas:cFin:=padl(Publicas:aFin,5,"0")
IF !(aAlias[22])->(dbseek(Publicas:cIni))
msginfo("no lo encuentro")
ELSE
lmode:=iif (nOpcion=1,.F.,.T.)
if lpdf=.T. .or. tpdf=.T.
(aAlias[22])->(Ordsetfocus("numero"))
(aAlias[22])->(oRDscope(0,(Publicas:cIni)))
(aAlias[22])->(oRDscope(1,(Publicas:cFin)))
imppdf(tipo,aAlias,lpdf,tpdf)
(aAlias[22])->(oRDscope(0,Nil))
(aAlias[22])->(oRDscope(1,Nil))
else
(aAlias[22])->(DbSetfilter( {|| (aAlias[22])->numero >= Publicas:cIni .and. (aAlias[22])->numero <= Publicas:cFin },'(aAlias[22])->numero >= Publicas:cIni .and. (aAlias[22])->numero <= Publicas:cFin') )
(aAlias[22])->(Ordsetfocus("ruta"))
(aAlias[22])->(Dbgobottom())
(aAlias[22])->(Dbgotop())
oPrn := PrintBegin("Imprimiendo", .T., lMode,, .F. )
if Empty( oPrn:hDC )
MsgStop( "Impresora no preparada !" )
return nil
endif
DEFINE FONT oFont1 NAME "COURIER NEW" SIZE 0,-9 OF oPrn
DEFINE FONT oFont2 NAME "COURIER NEW" SIZE 0,-12 BOLD OF oPrn
DEFINE FONT oFont3 NAME "COURIER NEW" SIZE 0,-12 BOLD ITALIC OF oPrn
DEFINE FONT oFont4 NAME "COURIER NEW" SIZE 0,-9 BOLD OF oPrN
DEFINE FONT oFont5 NAME "COURIER NEW" SIZE 0,-10 BOLD OF oPrN
DEFINE FONT oFont6 NAME "ARIAL" SIZE 0,-11 OF oPrN
DEFINE FONT oFont7 NAME "Arial" SIZE 0,-36 BOLD OF oPrN
DEFINE PEN oPen1 Width 3 COLOR CLR_BLUE
DEFINE PEN oPen2 Width 8 COLOR CLR_BLUE
DEFINE BRUSH oBrush COLOR CLR_LIGHTGRAY
DEFINE BRUSH oBrush1 COLOR CLR_WHITE
OpRN:Setportrait()
oPrn:SetPage( 9) // Selecciono el Formato A4
aTamano:=oPrn:GetPhysize() // Indica el Tama¤o del papel en mm. ( ancho x largo )
nWidth :=oPrn:nHorzRes()
nHeight:=oPrn:nVertRes()
do while !(aAlias[22])->(Eof())
ccodpro :=(aAlias[22])->codigo
(aAlias[21])->(dbseek(ccodpro))
ppdf :=(aAlias[21])->pdf
if lnpdf=.T. .and. ppdf=.T. // if de pdf
(aAlias[22])->(Dbskip())
loop
else
if swp=1
hoja:=hoja+1
swp:=0
else
primero:=space(1)
hoja:=1
nbase:=0
nfecha :=dtoc((aAlias[22])->fecha)
* ccodpro :=(aAlias[22])->codigo
cvenci :=dtoc((aAlias[22])->venci)
xdatos :=alltrim((aAlias[22])->Datos)
(aAlias[4])->(Dbseek((aAlias[22])->empresa))
cnombre :=alltrim((aAlias[4])->nombre)
cnif :="N.I.F. "+alltrim((aAlias[4])->nif)
cDomip :=alltrim((aAlias[4])->domicilio)
cPoblap :=alltrim((aAlias[4])->codpos)+'-'+alltrim((aAlias[4])->poblacion)+'-'+'('+alltrim((aAlias[4])->provin)+')'
cTelfax :='Telf. '+alltrim((aAlias[4])->Telefono)+'-'+'Fax '+alltrim((aAlias[4])->Fax)
cemail :='e-mail: '+alltrim((aAlias[4])->email)
cweb :='Página web: '+alltrim((aAlias[4])->web)
* (aAlias[21])->(dbseek(ccodpro))
* ppdf :=(aAlias[21])->pdf
corden :=(aAlias[21])->ordenf
cnompro :=trim((aAlias[21])->nombre)
cdirpro :=trim((aAlias[21])->calle)
cnifpro :=(aAlias[21])->dni
npiva :=transform((aAlias[22])->iva,"@Z 99.99")
ccp :=(aAlias[21])->cp
cPoblapro :=trim((aAlias[21])->pobla)
cProvinpro:=trim((aAlias[21])->provin)
cfpago :=iif((aAlias[21])->dpago=1,"Giro","Reposicion")
domiban :=(aAlias[21])->entidad+space(1)+(aAlias[21])->agencia+space(1)+;
(aAlias[21])->dc+space(1)+substr((aAlias[21])->cuenta,1,6)+"****"
xcopia :=iif((aAlias[21])->copia='S' .and. pinta=.F.,.T.,.F.)
cliqui:=(aAlias[22])->numero
if corden='A'
(aAlias[24])->(Ordsetfocus('facturaal'))
(aAlias[24])->(dbseek(cliqui))
else
(aAlias[24])->(Ordsetfocus('factura'))
(aAlias[24])->(dbseek(cliqui))
endif
endif
PAGE
if tipo=2
CmtToPixel( 1.5,1, 7, 2.5, oPrn )
oPrn:Saybitmap( Publicas:nLiz, Publicas:nCiz,Publicas:rlogo,Publicas:nLDe,Publicas:nCDe)
CmtToPixel( 3.7,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cnombre,oFont6,,RGB(3,35,195),,2 )
CmtToPixel( 4.1,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cnif,oFont6,,,,2 )
CmtToPixel( 4.5,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cDomip,oFont6,,,,2 )
CmtToPixel( 4.9,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cPoblap,oFont6,,,,2 )
CmtToPixel( 5.6,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cTelfax,oFont6,,RGB(131,186,247),,2 )
CmtToPixel( 6,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cemail,oFont6,,,,2 )
CmtToPixel( 6.4,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cweb,oFont6,,,,2 )
If Pinta
CajaRound(12, ;
0.5, ;
17, ;
2.3 -0.1,100,100,oPrn,oPen2,oBrush )
CmtToPixel( 0.5,14.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"COPIA",oFont7,,RGB(0,0,0),,2 )
Endif
CajaRound(9.5, ;
4 , ;
19.9, ;
7.8 -0.1,100,100,oPrn,oPen2,oBrush1 )
CajaRound(0.6, ;
8.1, ;
19.9, ;
9.5 -0.1,50,50,oPrn,oPen2,oBrush1 )
CajaRound(0.6, ;
9.6, ;
19.9, ;
28.3 -0.1,50,50,oPrn,oPen2,oBrush1 )
CmtToPixel( 9.6,2.7, 26.2, 2.7, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 9.6,10, 26.2, 10, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 9.6,13, 26.2, 13, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 9.6,15.5, 26.2, 15.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 9.6,17.5, 26.2, 17.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,0.6, 26.2, 19.9, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.7,0.6, 26.7, 19.9, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.5,0.6, 8.5, 19.9, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 10.2,0.6, 10.2, 19.9, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.1,2.7, 9.4, 2.7, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.1,5, 9.4, 5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.1,8.5, 9.4, 8.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.1,12, 9.4, 12, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.1,18.5, 9.4, 18.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 8.1,1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"CLIENTE",oFont5,,RGB(0,0,0) )
CmtToPixel( 8.1,2.9, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"NºFACTURA",oFont5 )
CmtToPixel( 8.1,6, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"FECHA",oFont5 )
CmtToPixel( 8.1,9, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"FORMA DE PAGO",oFont5 )
CmtToPixel( 8.1,13.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"DOMICILIO DE COBRO",oFont5 )
CmtToPixel( 8.1,18.6, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"C.REP.",oFont5 )
CmtToPixel( 9.8,1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"FECHA",oFont5 )
CmtToPixel( 9.8,3.1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"(C)CONSIGNATARIO o (R)REMITENTE",oFont5 )
CmtToPixel( 9.8,10.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"EXPEDICION",oFont5 )
CmtToPixel( 9.8,13.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"BULTOS",oFont5 )
CmtToPixel( 9.8,16, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"KILOS",oFont5 )
CmtToPixel( 9.8,18, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"IMPORTE",oFont5 )
endif
//-------- CABECERA DEL RECIBO
// impresion de los textos
if ccodpro="99999"
CmtToPixel( 4.5,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"CLIENTES DE CONTADO",oFont3 )
else
CmtToPixel( 5,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cnompro,oFont3 )
endif
CmtToPixel( 5.5,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cdirpro,oFont3 )
CmtToPixel( 6,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cPoblapro,oFont3 )
CmtToPixel( 6.5,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,ccp+space(2)+cProvinpro,oFont3 )
CmtToPixel( 7,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"C.I.F./N.I.F...:"+cnifpro,oFont3 )
CmtToPixel( 4,10, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,strcapfirst(xDatos),oFont3 )
CmtToPixel( 8.7,1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,+ccodpro,oFont4 )
CmtToPixel( 8.7,6, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,nfecha,oFont4 )
CmtToPixel( 8.7,3.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cliqui,oFont4 )
CmtToPixel( 8.7,9, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,cfpago+iif(cfpago='Giro',' '+cvenci,' '),oFont4 )
CmtToPixel( 8.7,12.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,domiban,oFont4 )
CmtToPixel( 8.7,19.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,(aAlias[22])->ruta,oFont4 )
if (aAlias[24])->kkilos<> 0 .and. tipo = 1
CmtToPixel( 9.7,16, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,'KILOS',oFont5 )
endif
liz:=10.4
do while .t.
nbaseimpo:=transform((aAlias[24])->baseimpo,"@Z 99,999.99")
if (aAlias[24])->Bk = 'B'
nneto :=transform((aAlias[24])->kilos,"@Z 999,999")
nkgs :=' '
else
nneto :=transform((aAlias[24])->kkilos,"@Z 999,999")
nkgs :=transform((aAlias[24])->kilos,"@Z 999,999")
endif
if (aAlias[24])->cr<>primero .and. (aAlias[24])->obse<>.T.
primero:=(aAlias[24])->cr
if (aAlias[24])->cr='C'
pone:='--- RECIBIDOS ---'
else
pone:='--- ENVIADOS ---'
endif
CmtToPixel( liz,3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,pone,oFont5,,CLR_HRED)
liz+=0.6
endif
nalbaran :=(aAlias[24])->albaran
textoc:=(aAlias[24])->observaci
CmtToPixel( liz,1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,dtoc((aAlias[24])->fecha),oFont1,,RGB(0,0,0))
if (aAlias[24])->obse=.T.
nLines := MlCount(textoc,35)
FOR nFor := 1 TO nLines
cLine := MemoLine(textoc, 35, nFor)
CmtToPixel( liz,3, 0, 0, oPrn )
oPrn:Say(Publicas:nLiz, Publicas:nCiz,cLine,oFont1)
liz+=0.3
NEXT
else
CmtToPixel( liz,3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,iif((aAlias[24])->datos1=space(40),(aAlias[24])->prou,(aAlias[24])->datos1),oFont1 )
endif
CmtToPixel( liz,12, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,nalbaran,oFont1,,,,1 )
CmtToPixel( liz,15, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,nneto,oFont1,,,,1 )
CmtToPixel( liz,17, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,nkgs,oFont1,,,,1 )
CmtToPixel( liz,19.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,nbaseimpo,oFont1,,,,1 )
nbase+=(aAlias[24])->baseimpo
liz+=0.3
(aAlias[24])->(dbskip())
if (aAlias[24])->factura<> cliqui .or. (aAlias[24])->(eof())
exit
endif
if liz >= lineas
swp:=1
exit
endif
enddo
if swp=1
CmtToPixel( 26.3,15, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"IMPORTE PARCIAL",oFont5 )
CmtToPixel( 27.5,19.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,transform(nbase,"@Z 99,999.99"),oFont3,,,,1 )
liz:=liz+3
CmtToPixel( liz,1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"Sigue en otra hoja ............",oFont5,,,,1 )
ENDPAGE
loop
endif
tbase :=transform(nbase,"@Z 99,999.99")
descuento :=(aAlias[22])->descuento
tdescuento:=transform(descuento ,"@Z 99,999.99")
tseguro :=transform((aAlias[22])->seguro ,"@Z 99,999.99")
tbaseimpo :=transform((aAlias[22])->base ,"@Z 99,999.99")
timportiva:=transform((aAlias[22])->importiva,"@Z 99,999.99")
treten :=transform((aAlias[22])->retencion,"@Z 99,999.99")
tliquido :=transform((aAlias[22])->total,"@Z 99,999.99")
if tipo=1
CmtToPixel( 24.5,3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tbase,oFont1,,,,1 )
CmtToPixel( 24.5,6, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tseguro,oFont1,,,,1 )
CmtToPixel( 24.5,9, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tbaseimpo,oFont1,,,,1 )
CmtToPixel( 24.5,10.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,npiva,oFont1,,,,1 )
CmtToPixel( 24.5,13, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,timportiva,oFont1,,,,1 )
CmtToPixel( 24.5,19.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tliquido,oFont3,,,,1 )
CmtToPixel( 26,19.8, 0, 0, oPrn )
endif
if tipo=2
if descuento=0
CmtToPixel( 26.2,3.7, 28.2, 3.7, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,6.5, 28.2, 6.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,9.2, 28.2, 9.2, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,10.5, 28.2, 10.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,12.5, 28.2, 12.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,15.5, 28.2, 15.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.3,1.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"IMPORTE",oFont5 )
CmtToPixel( 26.3,4.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"SEGURO",oFont5 )
CmtToPixel( 26.3,6.7, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"B.IMPONIBLE",oFont5 )
CmtToPixel( 26.3,9.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"%IVA.",oFont5 )
CmtToPixel( 26.3,11, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"I.V.A.",oFont5 )
CmtToPixel( 26.3,13, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"RETENCION",oFont5 )
CmtToPixel( 26.3,15.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz," IMPORTE TOTAL",oFont5 )
CmtToPixel( 27.5,3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tbase,oFont1,,,,1 )
CmtToPixel( 27.5,6, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tseguro,oFont1,,,,1 )
CmtToPixel( 27.5,9, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tbaseimpo,oFont1,,,,1 )
CmtToPixel( 27.5,10.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,npiva,oFont1,,,,1 )
CmtToPixel( 27.5,12.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,timportiva,oFont1,,,,1 )
CmtToPixel( 27.5,15.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,treten,oFont1,,,,1 )
CmtToPixel( 27.5,19.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tliquido,oFont3,,,,1 )
CmtToPixel( 28.5,10.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,mensaje,oFont3,,RGB(254,48,0),,2 )
else
CmtToPixel( 26.2,3.7, 28.2, 3.7, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,6, 28.2, 6, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,8, 28.2, 8, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,10.5, 28.2, 10.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,12, 28.2, 12, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,14, 28.2, 14, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.2,16.5, 28.2, 16.5, oPrn )
oPrn:line( Publicas:nLiz, Publicas:nCiz,Publicas:nLDe,Publicas:nCDe,open1 )
CmtToPixel( 26.3,1.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"IMPORTE",oFont5 )
CmtToPixel( 26.3,4, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"DESCUENTO",oFont5 )
CmtToPixel( 26.3,6.4, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"SEGURO",oFont5 )
CmtToPixel( 26.3,8.1, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"B.IMPONIBLE",oFont5 )
CmtToPixel( 26.3,10.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"%IVA.",oFont5 )
CmtToPixel( 26.3,12.4, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"I.V.A.",oFont5 )
CmtToPixel( 26.3,14.2, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,"RETENCION",oFont5 )
CmtToPixel( 26.3,16.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz," IMPORTE TOTAL",oFont5 )
CmtToPixel( 27.5,3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tbase,oFont1,,,,1 )
CmtToPixel( 27.5,5.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tdescuento,oFont1,,,,1 )
CmtToPixel( 27.5,7.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tseguro,oFont1,,,,1 )
CmtToPixel( 27.5,10.3, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tbaseimpo,oFont1,,,,1 )
CmtToPixel( 27.5,11.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,npiva,oFont1,,,,1 )
CmtToPixel( 27.5,13.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,timportiva,oFont1,,,,1 )
CmtToPixel( 27.5,15.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,treten,oFont1,,,,1 )
CmtToPixel( 27.5,19.8, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,tliquido,oFont3,,,,1 )
CmtToPixel( 28.5,10.5, 0, 0, oPrn )
oPrn:Say( Publicas:nLiz, Publicas:nCiz,mensaje,oFont3,,RGB(254,48,0),,2 )
endif
endif
pone:=space(1)
pinta:=.F.
ENDPAGE
if xcopia
pinta:=.T.
loop
endif
endif // endif de pdf
(aAlias[22])->(Dbskip())
if (aAlias[22])->(eof())
exit
endif
sysrefresh()
enddo
ENDPRINT
oFont2:End()
oFont1:End()
oFont3:End()
oFont4:End()
oFont5:End()
oFont6:End()
oFont7:End()
oPen1:End()
oPen2:End()
oBrush:End()
(aAlias[22])->(Dbsetfilter())
endif
endif
endif
// (aAlias[22])->(Dbsetfilter())
(aAlias[22])->(Ordsetfocus(cindi1))
(aAlias[24])->(Ordsetfocus(cindi))
return nil
//----------------------------------------------------------------------------//
Saludos
Jose Luis