Muy buenas tardes.
Tengo un problema por resolver urgente, me estoy dando de cabeza, pero no consigo solucionarlo.
Al imprimir los valores de las variables, estos se imprimen Centrados en cada columna y no alineados a la derecha como cualquier numero o valor.
Por Ejemplo:
Linea 1: 0 ( Con valor cero)
Linea 2: 150.000 (Cualquier valor)
He realizado de todo y no logro dar con la solucion.
Muchos saludos.
Antonio
Dejo el codigo:
- Code: Select all Expand view
Function Impri_Deta_Fac(Titu)
Local oPrn,nPixVert,nPixHorz,nAnch,nAlto,nAncho_1,nAncho_2,oFont1,oFont2,oFont3,oFont4,oFont5,oFont6,oPen1,oPen2 , nRow,oFont7
TPreview():lListViewHide := .T.
PRINT oPrn NAME "EMPRESA 1" PREVIEW
oPrn:SetPage(9) // A4
PrnPortrait() ///vertical
IF Empty( oPrn:hDC )
MsgStop( OemToAnsi( "¡ No hay IMPRESORA para imprimir !" ))
Return NIL
EndIF
Sele b
Go Top
nPixVert := oPrn:nVertRes()
nPixHorz := oPrn:nHorzRes()
IF nPixHorz < 3000
nAnch := 8913290
nAlto := 12255652
nAncho_1 := 4
nAncho_2 := 7
ELSE
nAnch := 8913494
nAlto := 12256000
nAncho_1 := 6
nAncho_2 := 11
EndIf
DEFINE FONT oFont1 NAME "Courier New" SIZE 0, -10 OF oPrn //Negrita
DEFINE FONT oFont2 NAME "Courier New" SIZE 0, -10 BOLD OF oPrn //Negrita
DEFINE FONT oFont3 NAME "Arial" SIZE 0, -10 OF oPrn
DEFINE FONT oFont4 NAME "Courier New" SIZE 0, -12 BOLD OF oPrn //Negrita
DEFINE FONT oFont5 NAME "Courier New" SIZE 0, -9 OF oPrn //Negrita
DEFINE FONT oFont6 NAME "Arial" SIZE 0, -7 BOLD OF oPrn //Negrita
DEFINE FONT oFont7 NAME "Courier New" SIZE 0, -12 BOLD UNDERLINE OF oPrn //Negrita - Subrayado en Titulos
DEFINE PEN oPen1 WIDTH nAncho_1
DEFINE PEN oPen2 WIDTH nAncho_2
Fila=5.10
Fila2=19.10
CantCon=0
PAGE
i:=1
Do While I<2
If i=1 // Fona
nFil := 1.00 //arriba
nCol := 1.00 //izquierda
nTop := 2.10 //ALTO
nBot := 20.00 //ANCHO
aCoord1 := oPrn:Cmtr2Pix( @nFil, @nCol )
aCoord2 := oPrn:Cmtr2Pix( @nTop, @nBot )
oPrn:Box ( nFil, nCol, nTop, nBot, oPen1 )
oPrn:CmSay ( 1.10, 1.10, "CENTRO PRUEBA" , oFont4 )
oPrn:CmSay ( 1.10, 14.10,'R.U.T.: ' , oFont4 )
oPrn:CmSay ( 1.60, 1.10, 'Dirección: ', oFont2 )
oPrn:CmSay ( 1.60, 14.10,'TELEFONO: ' , oFont2 )
oPrn:CmSay ( 2.4, 10, OemToAnsi(Titu), oFont7,,CLR_BLACK,,PAD_CENTER )
Co:=0
Li:=0.5
Col:=1
oPrn:CmSay ( Li + 3.0, Col + 1 , "Nro", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 1 , "Dia", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 1.65 , "RAYOS......", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 1.65 , "ELECTRONICO", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 4.05 , "ECOGRAFIAS ", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 4.05 , "ELECTRONICO", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 6.45 , "LABORATORIO", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 6.45 , "ELECTRONICO", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 8.85, "CONSULTAS..", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 8.85 , "ELECTRONICO", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 11.25, "SCANNER....", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 11.25 , "ELECTRONICO", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 13.65, "ENDOSCOPIA.", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 13.65 , "ELECTRONICO", oFont6 )
oPrn:CmSay ( Li + 3.0, Col + 16.15, "-T O T A L -", oFont6 )
oPrn:CmSay ( Li + 3.4, Col + 16.15 , "SEMANA......", oFont6 )
oPrn:cmLine( Li + 3.8,Col + 1,Li + 3.8,19.2 )
li:=Li + 3.6
Do While !Eof()
Rx:=(VALRX_FONE + VALRX_FONT + VALRX_FONC)
Ec:= (VALEC_FONE + VALEC_FONT + VALEC_FONC)
La:= (VALLA_FONE + VALLA_FONT + VALLA_FONC)
Sc:= (VALSC_FONE + VALSC_FONT + VALSC_FONC)
Co:= (VALCO_FONE + VALCO_FONT + VALCO_FONC)
De:= (VALDE_FONE + VALDE_FONT + VALDE_FONC)
En:= (VALEN_FONE + VALEN_FONT + VALEN_FONC)
Tt:= (Rx + Ec + La + Sc+ Co + De + En)
oPrn:CmSay ( Li + 0.40,Col + 1, Subs(Dtoc(b->Fec_Ate),1,2), oFont6 )
oPrn:CmSay ( Li + 0.40,Col + 1.65 , Transform(Rx, "999,999,999"), oFont6)
oPrn:CmSay ( Li + 0.40,Col + 4.05 , Transform(Ec, "999,999,999"), oFont6 )
oPrn:CmSay ( Li + 0.40,Col + 6.45 , Transform(La, "999,999,999"), oFont6 )
oPrn:CmSay ( Li + 0.40,Col + 8.85 , Transform(Sc, "999,999,999"), oFont6 )
oPrn:CmSay ( Li + 0.40,Col + 11.25 , Transform(Co, "999,999,999"), oFont6 )
oPrn:CmSay ( Li + 0.40,Col + 13.65 , Transform(De, "999,999,999"), oFont6)
oPrn:CmSay ( Li + 0.40,Col + 16.15 , Transform(En, "999,999,999"), oFont6 )
Li:=Li + 0.40
Skip
Enddo
i:=i+1
Enddo
ENDPAGE
ENDPRINT
oFont1:End()
oFont2:End()
oFont3:End()
oPen1:End()
oPen2:End()
oFont4:End()
oFont5:End()
oFont6:End()
oFont7:End()
Return .t.