Página 1 de 1

RTF desconfigurado depois que imprime CHEQUE

Enviado: 13 Mai 2011 11:06
por wesley assis
Prezados, Bom dia!

Convertendo meus programas para Harbour 2.0, estou com dificuldade de abrir corretamente arquivos RTF depois que imprimo cheques. É o seguinte:
Se eu imprimir um cheque para um cliente e logo depois o sistema imprimi contratos em RTF, ele sai todo desconfigurado, mas se eu pego este mesmo cliente e mando imprimir somente os contratos sem imprimir cheques, o RTF imprimi corretamente. Estou usando WordView para RTF e Win_PrintFileRaw() para direcionar para impressora de cheques. Vejam uma parte como sai o RTF.

rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1046\deflangfe1046{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f214\froman\fcharset238\fprq2 Times New Roman CE;}
{\f215\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f217\froman\fcharset161\fprq2 Times New Roman Greek;}{\f218\froman\fcharset162\fprq2 Times New Roman Tur;}{\f219\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
{\f220\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f221\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f222\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f234\fmodern\fcharset238\fprq1 Courier New CE;}
{\f235\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f237\fmodern\fcharset161\fprq1 Courier New Greek;}{\f238\fmodern\fcharset162\fprq1 Courier New Tur;}{\f239\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}
{\f240\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f241\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f242\fmodern\fcharset163\fprq1 Courier New ...........


o código de impressão de cheques

Código: Selecionar todos

PROCEDURE CHEQUELOOP
********************
   NOMEMES=SPAC(9)
   WMA=SUBS(DTOC(DATE()),4,2)
   MESEXT(WMA,,,@NOMEMES)
   FCHQ:= "CHQ"+SUBS(TIME(),4,2)+SUBS(TIME(),7,2)+".TXT"
   SET PRINT TO &FCHQ
   SET DEVICE TO PRINT
   SET PRINT OFF
   IF ULTBCO=341 .OR. ULTBCO=237
      SET MARG TO 08
      @ 0,3 SAY CHR(27)+"C"+CHR(0)+CHR(3)
      @ 0,15 SAY CHR(18)
      @ 0,25 SAY CHR(27)+"E"
      @ 0,0 SAY CHR(27)+"3"+CHR(14)
      @ 0,48 SAY MVRLIBER-(MVRQUITA+RECOMPRA) PICT '@E999,999,999.99'
      @ 1,25 SAY CHR(27)+"F"
      @ 4,40 SAY CHR(15)
      EXTXX=0
      EXTENSO(MVRLIBER-(MVRQUITA+RECOMPRA))
      @ 05,10 SAY SUBS(XEXTENSO,1,90)
      IF LEN(RTRIM(XEXTENSO))<90
         NX=90-LEN(RTRIM(XEXTENSO))
         @ 05,10+LEN(RTRIM(XEXTENSO)) SAY REPLICATE("*",NX)
      ENDIF
      IF LEN(RTRIM(XEXTENSO))>90   
         @ 10,0 SAY SUBS(XEXTENSO,91,90)
         NX=180-LEN(RTRIM(XEXTENSO))
         @ 10,0+90-NX SAY REPLICATE("*",NX)
      ELSE
         @ 10,0 SAY REPLICATE("*",90)
      ENDIF
      @ 14,0 SAY CHR(18)
      @ 14,2 SAY MNOME+"=========>  NAO A ORDEM"
      @ 17,0 SAY CHR(15)
      @ 19,52 SAY 'Belo Horizonte'
      @ 19,70 SAY SUBS(DTOC(DATE()),1,2)
      @ 19,78 SAY NOMEMES
      @ 19,102 SAY SUBS(DTOC(DATE()),9,2)
      @ 35,52 SAY MCHQORGAO+" "+MCHQMATR
   ENDIF
   EJECT
   SET PRINT OFF
   SET PRINT TO
   SET DEVICE TO SCREEN
   PrnTest( QCHQ, FCHQ )
   STATIC PROCEDURE PrnTest( QCHQ, FCHQ )
   WIN_PRINTFILERAW( QCHQ, FCHQ, "" )
RETURN
Como resolver?