Olá a todos, estou enfrentando um problema ao criar um relatório customizado utilizando ADVPL no TOTVS Protheus 12 (Release 2410) com o SmartClient HTML.
Durante a configuração do relatório, realizo todas as formatações necessárias, como enquadramento, orientação de página e ajustes específicos no formulário. No entanto, ao gerar a impressão, percebo que a escala da página fica completamente diferente do que é apresentado na pré-visualização do relatório.
Gostaria de saber se mais alguém já enfrentou essa inconsistência e se existe alguma solução ou ajuste para garantir que a impressão corresponda à pré-visualização. Alguma sugestão para contornar esse problema?
Agradeço desde já pela ajuda!
Olá David,
Tive problema semelhante recentemente.
Quando usamos o WebApp, visualizávamos a prévia em tela do relatório perfeito. Ao imprimir, ele expandia e cortava as laterais, em todas as folhas do relatório, incluindo os cabeçalhos e página de parâmetros.
A solução encontrada foi:
Após clicar em “Imprimir” usando o Protheus Web ( WebApp), o navegador de internet abrirá uma nova janela de configuração de impressão, onde se escolhe novamente a impressora e configurações a serem adotadas nesta impressão. Deve-se atentar para nesta janela definir :
- Tamanho do papel: A4;
- Layout: retrato ou paisagem, de acordo com o tamanho do relatório;
- Margens: Padrão
- Escala: Padrão
1 curtida
Entendi @vicente.pereira, tentei fazer isso mas infelizmente ele continua fora de proporção.
Ficou bem complicado para quem esta começando a desenvolver relatório em advpl já que a prévia está com esse problema.
Bom, obrigado por compartilhar essa medida paliativa.
Bom dia David,
Tive o mesmo problema no desenvolvimento, para não desconfigurar na impressora enviei direto para spool, e na parte de visualização utilizei em PDF, o melhor seria conseguir visualizar em tela dentro do Protheus, porem até abri chamado na Totvs e não tivemos uma solução.
Segue trecho do fonte onde já deixo a parte do setup configurada:
//Cria objeto FWPrintSetup
nFlags := PD_ISTOTVSPRINTER + PD_DISABLEPAPERSIZE + PD_DISABLEORIENTATION + PD_DISABLEMARGIN + PD_DISABLEDESTINATION //PD_DISABLEPREVIEW
oSetup := FWPrintSetup():New(nFlags, “ORÇAMENTO”)
oSetup:SetPropert(PD_PRINTTYPE , 6)
oSetup:SetPropert(PD_ORIENTATION , 2)
oSetup:SetPropert(PD_DESTINATION , 2)
oSetup:SetPropert(PD_MARGIN , {10,10,10,10})
oSetup:SetPropert(PD_PREVIEW , .T.)
oSetup:SetPropert(PD_PAPERSIZE , 2)
//oSetup:aOptions[PD_VALUETYPE] := cArquivo
//Criando o objeto do FMSPrinter
oPrn := FWMSPrinter():New(cArquivo,IMPPDF,lAdjustToLegacy,cCaminho,lDisableSetup,oSetup,lServer,lViewPDF,/nQtdCopy/,lConvertFont)