Jump to content
Fivewin Brasil

Caminho para impressão?


jarmo

Recommended Posts

Olá pessoal!

Tenho um Sistema que estou migrando de Clipper(DOS) para FiveWin, onde terei que refazer grande parte das declarações de tela e impressão(tudo bem!). Quanto à impressão, gostaria de saber um caminho(se é que existe) que eu possa com o mesmo código de programa hora estar enviando a impressão de forma gráfica (padrão Windows, com preview, etc -> rprinter) e hora enviar a impressão na forma DOS (draft, onde a impressão em impressoras matriciais fica mais rápida -> tdosprn) e se é possível

na forma DOS um preview do arquivo de impressão (este arquivo possui caracteres especiais de compactação, expandido, etc..., inclusive na mesma linha) Ah, antes da impressão como posso selecionar a impressora desejada, de forma que eu possa conhecer suas propriedades e identificar quais os caracteres necessários para compacatação/normal, etc quando a impressão for na forma DOS.

Finalizando, gostaria de agradecer a todos pelas dicas que recebi referente à outras dúvidas que postei (impressão de arq.WMF, envio de email, etc...)

Grato!

Rodriguesicon_smile_big.gif

Link to comment
Share on other sites

Voce vai ter que cruzar duas combinacoes :

1. Tipo de impressao adotada (ASC ou GRAFICA) e

2. Tipo de impressora adotada para o serviço ( para o drive certo )

para ter um codigo so tanto pra um tipo de opçao no item 1, bole uma funcao do seguinte tipo ::

function print_out(lin,col,txt,via)

if via = 1 // dos por exemplo

->usa as funcoes de saida via impressao classe TDosPrn

else

->usa as funcoes de saida via impressao classe TPrn

endif

return

assim voce faz sempre um codigo so nos relatorios e para de se preocupar com as opcoes adotadas pelo usu.

Abr

FW1.92+Clipper 5.3+Lib+Blinker+BC++

Link to comment
Share on other sites

  • 2 weeks later...

Ola, aproveitando as dúvidas. Eu estou usando uma rotina para impressao dos (tdosprn) e outra para windows uso o print, sendo que esta para windows nao consigo contar colunas ou seja, ou seja se eu precisar incluir um campo na coluna 25 tenho que fazer assim:

OPrn:Say( nlin,000, SPACE(25)+'FL. 1',OFont)

e para dos faco assim:

ORe:Say( nlin,025, "FL. 1")

a opcao pelo windows pra mim é muito trabalhosa por causa da coluna.

Pelo que entendi nas resposta ao nosso amigo que iniciou este topico pode se fazer uma rotina só. PECO, ALGUEM TEM UM EXEMPLO DE COMO ISSO FUNCIONARIA? SABENDO QUE POSSO TER 2 IMPRESSORAS UMA DOS E OUTRA JATO DE TINTA OU LASER, E ESTE RELATORIO PODERIA SER IMPRESSO NAS 2.

Obrigado pela atencao.

fabio@urbano.com.br

fabiogesser@hotmail.com

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...