Página 2 de 2

Função Útil para impressão

Enviado: 22 Nov 2016 08:27
por JoséQuintas

Código: Selecionar todos

PROCEDURE Main

   SET PRINTER TO test.txt
   SET DEVICE TO PRINT
   Negrito( .T. )
   @ pRow(), 1 SAY "CONTA"
   @ pRow(), 16 SAY "NOME DA CONTA"
   @ pRow(), 48 SAY "FONTE"
   @ pRow(), 54 SAY "AGENCIA"
   @ pRow(), 62 SAY "F.FIN"
   @ pRow(), 68 SAY "FT.CONTRAP."
   @ pRow(), 80 SAY "ORG.U."
   @ pRow(), 87 SAY "APLIC"
   @ pRow(), 93 SAY "BSD"
   @ pRow(), 97 SAY "DT.ABERTU."
   @ pRow(), 108 SAY "DT.ENCERR."
   @ pRow(), 119 SAY "CONTRATO/CONVÊNIO"
   @ pRow(), 140 SAY "OFÍCIO SOLICITANTE"
   @ pRow(), 166 SAY "OBJETO"
   @ pRow(), 212 SAY "CATEGORIA"
   Negrito( .F. )

   RETURN

FUNCTION Negrito( lOn )

   LOCAL nRow, nCol

   nRow := pRow()
   nCol := pCol()
   @ pRow(), pCol() SAY iif( lOn, Chr(27)+'(s3B', Chr(27)+'(s-3B' )
   SetPrc( nRow, nCol )

   RETURN NIL
test.png
Não dá pra ver, mas o texto começa na coluna 7 e termina na 226, 220 caracteres.

Função Útil para impressão

Enviado: 22 Nov 2016 08:31
por asimoes
Fazendo um teste simples:

PrintLine(.T., 000, "0123456789")
PrintLine(.F., 010, "COLUNA 10" )
@ PRow()+1, 010 SAY "---------"

Resulta:

Código: Selecionar todos

0123456789COLUNA 10
          ---------

Função Útil para impressão

Enviado: 22 Nov 2016 08:33
por JoséQuintas
Teste a última que postei.
Aproveita pra mixar, colocar negrito em apenas uma palavra.

Função Útil para impressão

Enviado: 22 Nov 2016 08:43
por asimoes
Quintas,

Funcionou o seu exemplo.

Função Útil para impressão

Enviado: 22 Nov 2016 09:00
por asimoes
Quintas,

O maior desafio é colocar o negrito em uma posição qualquer no texto por exemplo negritar "NOME DA CONTA" e "CONTRATO/CONVÊNIO"

Quintas a tua função funcionou para situação acima. Vlw

Função Útil para impressão

Enviado: 22 Nov 2016 15:55
por janio
aSimoes,

Estou gostando da sua função! Bem legal!

A diferença entre a função prow() seria o Picture, que nesse caso da pra definir logo na frente!

Na sua função usaria o Transform???

Janio

Função Útil para impressão

Enviado: 22 Nov 2016 16:14
por asimoes
Jânio, Você pode passar o texto com transform, ou na própia linha

@Prow(), 1 SAY TABELA->Codigo PICTURE "@R 9999-9"

Ou

@Prow(), 1 SAY Transform(TABELA->Codigo, "@R 9999-9")