Theotokos Posted August 21, 2019 Report Share Posted August 21, 2019 PRINT oPrn TITLE "Impressão Relatorio Atrasados" PREVIEW DEFINE FONT oFont NAME "TAHOMA" SIZE 0, -11 OF oPrn DEFINE FONT oFntNormal NAME "TAHOMA" SIZE 0, -12 OF oPrn DEFINE FONT oFntBold NAME "TAHOMA" SIZE 0, -12 BOLD OF oPrn oPrn:SetPage( 9 ) // Configura o Tamanho do Papel = A4 oPrn:SetLandscape() Bom Dia Pessoal!!! Qdo configuro a pagina em oPrn:SetPage(9) estou configurando uma pagina para impressão em folha A4, até ai tudo bem, porem se no computador do cliente esta como padrão um impressora ARGOX Os-214 por exemplo (mpressora não fiscal); no preview deste relatório fica como se a pagina fosse de fita (40 colunas) e não como A4... COMO CORRIGIR ISSO? O QUE ESTA FALTANDO NA CONFIGURAÇÃO NO CODIGO FONTE? Quote Link to comment Share on other sites More sharing options...
kapiaba Posted August 21, 2019 Report Share Posted August 21, 2019 Eu faço assim: FUNCTION FOLHA_PAPEL_A4() LOCAL oPrinter, aPaper // Para Checar o Tipo de Papel Que Esta Na Impressora - Correto A4 oPrinter = TPrinter():New( 'Meu Documento' , .F., .F., NIL, .F. ) aPaper = PrnGetPaper( oPrinter ) IF .NOT. aPaper[3] = 'A4' MsgInfo( OemToAnsi( "ATEN€ÇO USUµRIO: " )+CRLF+; OemToAnsi( "O PROGRAMA DA NF-e DETECTOU QUE O TIPO " )+CRLF+; OemToAnsi( "DE PAPEL QUE FOI DEFINIDO NA IMPRESSORA, " )+CRLF+; OemToAnsi( "ESTµ INCORRETO. POR FAVOR ENTRE EM: " )+CRLF+; OemToAnsi( "<BotÆo> Iniciar: " )+CRLF+; OemToAnsi( "No Windows 7 <Click> Em: " )+CRLF+; OemToAnsi( "Dispositivos e Impressoras. " )+CRLF+; OemToAnsi( "No Windows XP <Click> Em: " )+CRLF+; OemToAnsi( "Impressoras e Aparelhos de Fax. " )+CRLF+; OemToAnsi( "ENTRE NAS PROPRIEDADES DA IMPRESSORA E " )+CRLF+; OemToAnsi( "TROQUE O TIPO DE PAPEL PARA O FORMATO A4." )+CRLF+; OemToAnsi( "A NOTA FISCAL ELETRâNICA DEVE SER SEMPRE " )+CRLF+; OemToAnsi( "IMPRESSA NESTE FORMATO DE PAPEL: A4. " )+CRLF+; OemToAnsi( "TECLE <ENTER> PARA CONTINUAR... " ), ; OemToAnsi( "Favor Trocar o Tipo de Papel Para A4. " ) ) ENDIF RETURN( .T. ) //---------------------------------------------------- FUNCTION PrnGetPaper( oPrn ) LOCAL aPoint := PrnGetSize( oPrn:hDc ), aRecmm := {}, nW := 0 LOCAL nH := 0, wx := 0 LOCAL aPapers:={{"DMPAPER_LETTER " , 1 , "Letter " , {216,279} },; {"DMPAPER_LETTERSMALL " , 2 , "Letter Small " , {216,279} },; {"DMPAPER_TABLOID " , 3 , "Tabloid " , {280,432} },; {"DMPAPER_LEDGER " , 4 , "Ledger " , {432,280} },; {"DMPAPER_LEGAL " , 5 , "Legal " , {216,356} },; {"DMPAPER_STATEMENT " , 6 , "Statement " , {140,216} },; {"DMPAPER_EXECUTIVE " , 7 , "Executive " , {184,257} },; {"DMPAPER_A3 " , 8 , "A3 " , {297,420} },; {"DMPAPER_A4 " , 9 , "A4 " , {210,297} },; {"DMPAPER_A4SMALL " , 10 , "A4 Small " , {210,297} },; {"DMPAPER_A5 " , 11 , "A5 " , {148,210} },; {"DMPAPER_B4 " , 12 , "B4 " , {250,354} },; {"DMPAPER_B5 " , 13 , "B5 " , {182,257} },; {"DMPAPER_FOLIO " , 14 , "Folio " , {216,330} },; {"DMPAPER_QUARTO " , 15 , "Quarto " , {215,275} },; {"DMPAPER_10X14 " , 16 , "10x14 in " , {254,356} },; {"DMPAPER_11X17 " , 17 , "11x17 in " , {280,432} },; {"DMPAPER_NOTE " , 18 , "Note " , {216,279} },; {"DMPAPER_ENV_9 " , 19 , "Envelope #9 " , {098,225} },; {"DMPAPER_ENV_10 " , 20 , "Envelope #10 " , {105,241} },; {"DMPAPER_ENV_11 " , 21 , "Envelope #11 " , {114,264} },; {"DMPAPER_ENV_12 " , 22 , "Envelope #12 " , {109,279} },; {"DMPAPER_ENV_14 " , 23 , "Envelope #14 " , {127,292} },; {"DMPAPER_ENV_DL " , 27 , "Envelope DL " , {110,220} },; {"DMPAPER_ENV_C5 " , 28 , "Envelope C5 " , {162,229} },; {"DMPAPER_ENV_C3 " , 29 , "Envelope C3 " , {324,458} },; {"DMPAPER_ENV_C4 " , 30 , "Envelope C4 " , {229,324} },; {"DMPAPER_ENV_C6 " , 31 , "Envelope C6 " , {114,162} },; {"DMPAPER_ENV_C65 " , 32 , "Envelope C65 " , {114,229} },; {"DMPAPER_ENV_B4 " , 33 , "Envelope B4 " , {250,353} },; {"DMPAPER_ENV_B5 " , 34 , "Envelope B5 " , {176,250} },; {"DMPAPER_ENV_B6 " , 35 , "Envelope B6 " , {176,125} },; {"DMPAPER_ENV_ITALY " , 36 , "Envelope " , {110,230} },; {"DMPAPER_ENV_MONARCH " , 37 , "Envelope Monarch " , {098,191} },; {"DMPAPER_ENV_PERSONAL " , 38 , "6 3/4 Envelope " , {092,165} },; {"DMPAPER_FANFOLD_US " , 39 , "US Std Fanfold " , {378,279} },; {"DMPAPER_FANFOLD_STD_GERMAN" , 40 , "German Std Fanfold " , {216,305} },; {"DMPAPER_FANFOLD_LGL_GERMAN" , 41 , "German Legal Fanfold" , {216,330} } } aRecmm = oPrn:Pix2Mmtr(aPoint[1], aPoint[2]) nW = ROUND(aRecmm[1],0) nH = ROUND(aRecmm[2],0) for wx=1 to len(aPapers) if aPapers[wx,4,1] = nW .AND. aPapers[wx,4,2] = nH return {aPapers[wx,1],aPapers[wx,2],aPapers[wx,3]} endif next return {"",0,""} Quote Link to comment Share on other sites More sharing options...
Theotokos Posted August 21, 2019 Author Report Share Posted August 21, 2019 vLW @kapiaba!!! porem queria que mesmo com a impressora selecionada errada, mostrar na tela o relatório no formato A4 como escolhido no comando oPrn:SetPage( 9 ) // Configura o Tamanho do Papel = A4 Quote Link to comment Share on other sites More sharing options...
kapiaba Posted August 21, 2019 Report Share Posted August 21, 2019 Nunca provei do veneno, mas... Veja se este tópico ajuda: http://forums.fivetechsupport.com/viewtopic.php?f=6&t=30612&p=175834&hilit=SETPAGE#p175834 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.