edutraini Posted June 8, 2006 Report Share Posted June 8, 2006 preciso de ajuda pois uso o rpv para relatorios e agora preciso imprimir notas em matricial como usar o que usar e exemplo por favor me ajuda obrigado Quote Link to comment Share on other sites More sharing options...
edutraini Posted June 8, 2006 Author Report Share Posted June 8, 2006 preciso de ajuda pois uso o rpv para relatorios e agora preciso imprimir notas em matricial como usar o que usar e exemplo por favor me ajuda obrigado Quote Link to comment Share on other sites More sharing options...
edutraini Posted June 8, 2006 Author Report Share Posted June 8, 2006 preciso de ajuda pois uso o rpv para relatorios e agora preciso imprimir notas em matricial como usar o que usar e exemplo por favor me ajuda obrigado Quote Link to comment Share on other sites More sharing options...
giovanyvecchi Posted June 8, 2006 Report Share Posted June 8, 2006 É bem simples, eu mesmo não uso o tdosprn, uso o PRINTER mesmo, e da para imprimir em matricial normalmente usando fontes terminal do CLP do driver da impressora. veja este exemplo PRINTER oPrnEntrega NAME "Comprovante de Entrega de TÃtulos ao Requerente"; TO nPrn /////preview oPrnEntrega:setpage(1) oPrnEntrega:SetPortrait() oPrnEntrega:draftmode(.t.) nRcol:=oPrnEntrega:nlogpixelx()/2.537 nRlin:=oPrnEntrega:nlogpixely()/2.537 fimpagina:=oPrnEntrega:nvertres()-(1.8*nRlin) IF ISWIN95() DEFINE FONT oFntCond NAME "Roman 10cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt1 NAME "Draft 10cpi" SIZE 0,0 Bold OF oPrnEntrega DEFINE FONT oFnt2 NAME "Roman 6cpi" SIZE 0,0 BOLD OF oPrnEntrega DEFINE FONT oFnt3 NAME "Roman 17cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt4 NAME "Sans Serif 17cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt5 NAME "Roman 10cpi" SIZE 0,0 BOLD OF oPrnEntrega DEFINE FONT oFnt6 NAME "Draft 12cpi" SIZE 0,0 Bold OF oPrnEntrega ELSE DEFINE FONT oFntCond NAME "Roman 10cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt1 NAME "Draft 10cpi" SIZE 0,0 Bold OF oPrnEntrega DEFINE FONT oFnt2 NAME "Roman 6cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt3 NAME "Draft 17cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt4 NAME "Draft 17cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt5 NAME "Roman 10cpi" SIZE 0,0 OF oPrnEntrega DEFINE FONT oFnt6 NAME "Roman 12cpi" SIZE 0,0 OF oPrnEntrega ENDIF PAGE oPrnEntrega:say(l_atual*nRlin,0.2*nRcol,; "| "+STRZERO(PROTESTO->APONTA,8)+; " | "+DTOC(PROTESTO->DAT_APONTA)+; " | "+IF(PROTESTO->NTIPO_TIT > 0,; (aEspecie[PROTESTO->NTIPO_TIT,9]),"")+; " | "+VALOR(PROTESTO->VALOR,2,.T.,14," ",.T.)+; " | "+PROTESTO->NUMERO+; " | "+DTOC(PROTESTO->DT_EMISSAO)+; " | "+cSolucao+; " | "+cConclusao+"|",IF(lFntItalic,oFnt4,ofnt3)) oPrnEntrega:say(l_atual*nRlin,0.2*nRcol,; REPLICATE("-",135),oFnt4) l_atual+=.28 oPrnEntrega:say(l_atual*nRlin,0.2*nRcol,; " | Protestados "+STRZERO(aSomaSolucao[2,1],3)+; " - "+VALOR(aSomaSolucao[2,2],2,.T.,13," ",.T.)+; " | Sustados "+STRZERO(aSomaSolucao[4,1],3)+; " - "+VALOR(aSomaSolucao[4,2],2,.T.,13," ",.T.)+; " | Irregulares "+STRZERO(aSomaSolucao[5,1],3)+; " - "+VALOR(aSomaSolucao[5,2],2,.T.,13," ",.T.)+" |",; oFnt3) ENDPAGE ENDPRINTER ******************************************************* O nRLin e nRCol são para fazer a parte de Centimetros, já que tive problemas com o comando CMSAY Giovany Vecchi - Jales - SP FWH 2.6 /Clipper 5.3b /Blinker 5.0 / Harbour 0.45 / Bcc 5.6 / Ads 8.0 /PellesC Quote Link to comment Share on other sites More sharing options...
atenilto Posted June 8, 2006 Report Share Posted June 8, 2006 Ola Giovany e qto ao tamanho da folha, já tentei usar a Tprinter para preechimento de formularios mas tive problemas com formularios especificos , isto é não padrao. Atenilto Marinho São Paulo - SP (11)- 9502-1575 clip53+fwh2.7+xHarbourFW atenilto@click21.com.br Quote Link to comment Share on other sites More sharing options...
giovanyvecchi Posted June 8, 2006 Report Share Posted June 8, 2006 Olhe na tabela retirada de PRINTER.PRG do FW #define DMPAPER_LETTER 1 // Letter 8 1/2 x 11 in #define DMPAPER_LETTERSMALL 2 // Letter Small 8 1/2 x 11 in #define DMPAPER_TABLOID 3 // Tabloid 11 x 17 in #define DMPAPER_LEDGER 4 // Ledger 17 x 11 in #define DMPAPER_LEGAL 5 // Legal 8 1/2 x 14 in #define DMPAPER_STATEMENT 6 // Statement 5 1/2 x 8 1/2 in #define DMPAPER_EXECUTIVE 7 // Executive 7 1/4 x 10 1/2 in #define DMPAPER_A3 8 // A3 297 x 420 mm #define DMPAPER_A4 9 // A4 210 x 297 mm #define DMPAPER_A4SMALL 10 // A4 Small 210 x 297 mm #define DMPAPER_A5 11 // A5 148 x 210 mm #define DMPAPER_B4 12 // B4 250 x 354 #define DMPAPER_B5 13 // B5 182 x 257 mm #define DMPAPER_FOLIO 14 // Folio 8 1/2 x 13 in #define DMPAPER_QUARTO 15 // Quarto 215 x 275 mm #define DMPAPER_10X14 16 // 10x14 in #define DMPAPER_11X17 17 // 11x17 in #define DMPAPER_NOTE 18 // Note 8 1/2 x 11 in #define DMPAPER_ENV_9 19 // Envelope #9 3 7/8 x 8 7/8 #define DMPAPER_ENV_10 20 // Envelope #10 4 1/8 x 9 1/2 #define DMPAPER_ENV_11 21 // Envelope #11 4 1/2 x 10 3/8 #define DMPAPER_ENV_12 22 // Envelope #12 4 \276 x 11 #define DMPAPER_ENV_14 23 // Envelope #14 5 x 11 1/2 #define DMPAPER_CSHEET 24 // C size sheet #define DMPAPER_DSHEET 25 // D size sheet #define DMPAPER_ESHEET 26 // E size sheet #define DMPAPER_ENV_DL 27 // Envelope DL 110 x 220mm #define DMPAPER_ENV_C5 28 // Envelope C5 162 x 229 mm #define DMPAPER_ENV_C3 29 // Envelope C3 324 x 458 mm #define DMPAPER_ENV_C4 30 // Envelope C4 229 x 324 mm #define DMPAPER_ENV_C6 31 // Envelope C6 114 x 162 mm #define DMPAPER_ENV_C65 32 // Envelope C65 114 x 229 mm #define DMPAPER_ENV_B4 33 // Envelope B4 250 x 353 mm #define DMPAPER_ENV_B5 34 // Envelope B5 176 x 250 mm #define DMPAPER_ENV_B6 35 // Envelope B6 176 x 125 mm #define DMPAPER_ENV_ITALY 36 // Envelope 110 x 230 mm #define DMPAPER_ENV_MONARCH 37 // Envelope Monarch 3.875 x 7.5 in #define DMPAPER_ENV_PERSONAL 38 // 6 3/4 Envelope 3 5/8 x 6 1/2 in #define DMPAPER_FANFOLD_US 39 // US Std Fanfold 14 7/8 x 11 in #define DMPAPER_FANFOLD_STD_GERMAN 40 // German Std Fanfold 8 1/2 x 12 in #define DMPAPER_FANFOLD_LGL_GERMAN 41 // German Legal Fanfold 8 1/2 x 13 in este responde com o comando oPrn:SetPage() Ex: oPrn:SetPage(1) ///Letter 8 1/2 x Agora se a folha for especifica use oPrn:SetSize(nHorizontal,nVertical) em milimetros Ex: oPrn:setSize(2150,542)/// exatamente meia folha do formulario continuo Para quem quiser usar meia folha do formulario continuo use este exemplo IF ISWIN95() oPrnEti:setsize(2150,542) ELSE oPrnEti:setsize(2148,508) ENDIF Isto porque o Windows XP Salta um pouco pelo final da folha Agora se voce tem outro tamanho, é so calcular. Giovany Vecchi - Jales - SP FWH 2.6 /Clipper 5.3b /Blinker 5.0 / Harbour 0.45 / Bcc 5.6 / Ads 8.0 /PellesC Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.