Usina BRAdvPL Guia
Entrar
← Todos os tópicos
CLASSEPublicado

TMSPrinter

TMSPrinter():New( [cDocument], [uParam2], [uParam3], [uParam4], [uParam5], [uParam6], [uParam7], [uParam8] ) --> oObjeto

Classe histórica para visualização e impressão de relatórios gráficos em AdvPL.

RelatóriosImpressãoClasse legadaTMSPrinterTOTVSTEC
01 · VISÃO GERAL

Visão geral

TMSPrinter cria um objeto para visualizar e imprimir relatórios gráficos. A documentação consultada indica a classe como descontinuada, por isso a recomendação para novos desenvolvimentos é avaliar FWMsPrinter ou alternativas mais recentes. Ainda assim, TMSPrinter aparece em muitos fontes legados e merece documentação completa para manutenção, migração e entendimento de relatórios existentes.

02 · SINTAXE

Sintaxe

TMSPrinter():New( [cDocument], [uParam2], [uParam3], [uParam4], [uParam5], [uParam6], [uParam7], [uParam8] ) --> oObjeto

Parâmetros

cDocument
CaractereOpcional

Nome descritivo do relatório.

uParam2..uParam8
DiversosOpcional

Parâmetros de compatibilidade documentados historicamente pela classe.

Métodos

NewCria o objeto de impressão TMSPrinter. Use antes de iniciar páginas, configurar orientação, desenhar conteúdo e visualizar ou imprimir.TMSPrinter():New( [cDocument], [uParam2], [uParam3], [uParam4], [uParam5], [uParam6], [uParam7], [uParam8] ) --> oObjeto
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
cDocumentCaractereOpcional

Nome descritivo do relatório.

uParam2LógicoOpcional

Compatibilidade.

uParam3LógicoOpcional

Compatibilidade.

uParam4CaractereOpcional

Compatibilidade.

uParam5CaractereOpcional

Compatibilidade.

uParam6CaractereOpcional

Compatibilidade.

uParam7LógicoOpcional

Compatibilidade.

uParam8CaractereOpcional

Compatibilidade.

Retorno

oObjeto: objeto TMSPrinter criado.

BoxCria um retângulo no relatório. Use para molduras e divisões visuais.TMSPrinter():Box( [nRow], [nCol], [nBottom], [nRight], [uParam5] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nRowNuméricoOpcional

Coordenada vertical inicial.

nColNuméricoOpcional

Coordenada horizontal inicial.

nBottomNuméricoOpcional

Posição inferior do retângulo.

nRightNuméricoOpcional

Posição direita do retângulo.

uParam5QualquerOpcional

Compatibilidade.

CancelCancela a execução do relatório.TMSPrinter():Cancel() -->
CanceledRetorna se o relatório foi cancelado pelo método Cancel().TMSPrinter():Canceled() -->
Cmtr2PixConverte linha e coluna para pixels por referência.TMSPrinter():Cmtr2Pix( [nLinha], [nColuna], [uParam3] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nLinhaNuméricoOpcional

Linha a converter.

nColunaNuméricoOpcional

Coluna a converter.

uParam3ArrayOpcional

Compatibilidade.

EndIndica o término do relatório. Normalmente é usado após finalizar as páginas.TMSPrinter():End() -->
EndPageIndica o fim da página atual.TMSPrinter():EndPage() -->
FillRectCria um retângulo preenchido com uma determinada cor.TMSPrinter():FillRect( [aCoords], [oBrush] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
aCoordsArrayOpcional

Coordenadas do retângulo.

oBrushObjetoOpcional

Objeto TBrush usado para preenchimento.

GetOrientationRetorna a orientação do objeto.TMSPrinter():GetOrientation() --> nOrint
Retorno

nOrint: 1 para retrato e 2 para paisagem.

GetTextHeightRetorna a altura de um texto conforme a fonte definida.TMSPrinter():GetTextHeight( <cTexto>, <oFont> ) --> nHeight
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
cTextoCaractereObrigatório

Texto a medir.

oFontObjetoObrigatório

Objeto TFont usado no cálculo.

Retorno

nHeight: altura do texto.

GetTextWidthRetorna a largura de um texto conforme a fonte definida.TMSPrinter():GetTextWidth( <cTexto>, <oFonte> ) --> nWidth
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
cTextoCaractereObrigatório

Texto a medir.

oFonteObjetoObrigatório

Objeto TFont usado no cálculo.

Retorno

nWidth: largura do texto.

IsPrinterActiveRetorna se a impressora está ativa.TMSPrinter():IsPrinterActive() -->
LineCria uma linha no relatório.TMSPrinter():Line( [nTop], [nLeft], [nBottom], [nRight], [uParam5] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nTopNuméricoOpcional

Coordenada superior/inicial.

nLeftNuméricoOpcional

Coordenada esquerda/inicial.

nBottomNuméricoOpcional

Coordenada inferior/final.

nRightNuméricoOpcional

Coordenada direita/final.

uParam5QualquerOpcional

Compatibilidade.

nHorzResRetorna a resolução horizontal da impressora configurada.TMSPrinter():nHorzRes() --> nResolucao
Retorno

nResolucao: resolução horizontal.

nLogPixelXRetorna a resolução em pixels lógicos no eixo X.TMSPrinter():nLogPixelX() --> nResolucao
Retorno

nResolucao: resolução horizontal em pixels.

nLogPixelYRetorna a resolução em pixels lógicos no eixo Y.TMSPrinter():nLogPixelY() --> nResolucao
Retorno

nResolucao: resolução vertical em pixels.

nVertResRetorna a resolução vertical da impressora configurada.TMSPrinter():nVertRes() --> nResolucao
Retorno

nResolucao: resolução vertical.

PreviewAbre a janela de visualização do relatório.TMSPrinter():Preview() -->
PrintEnvia o relatório para a impressora.TMSPrinter():Print( [aPags], [nCopias] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
aPagsArrayOpcional

Páginas a imprimir.

nCopiasNuméricoOpcional

Quantidade de cópias.

PrinterNameRetorna o nome da impressora.TMSPrinter():PrinterName() --> cImpressora
Retorno

cImpressora: nome da impressora.

RefreshAtualiza a visualização do relatório.TMSPrinter():Refresh() -->
ResetPrinterExclui o objeto e reinicia suas propriedades.TMSPrinter():ResetPrinter() -->
SaveAllAsJpegSalva o relatório em JPG, gerando um arquivo separado para cada página.TMSPrinter():SaveAllAsJpeg( [cFilePath], [nWidthPage], [nHeightPage], [nZoom], [nQuality] ) --> lOk
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
cFilePathCaractereOpcional

Caminho para salvar os arquivos.

nWidthPageNuméricoOpcional

Largura da página/imagem.

nHeightPageNuméricoOpcional

Altura da página/imagem.

nZoomNuméricoOpcional

Percentual de zoom.

nQualityNuméricoOpcional

Qualidade da imagem.

Retorno

lOk: .T. quando as imagens são salvas com sucesso.

SaveAsHTMLSalva o relatório em HTML.TMSPrinter():SaveAsHTML( <cFile>, [aRange] ) --> lOk
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
cFileCaractereObrigatório

Arquivo de destino.

aRangeArrayOpcional

Intervalo de páginas.

Retorno

lOk: .T. quando o relatório é salvo com sucesso.

SaveAsODFSalva o relatório em ODF.TMSPrinter():SaveAsODF( <cFile>, [aRange] ) --> lOk
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
cFileCaractereObrigatório

Arquivo de destino.

aRangeArrayOpcional

Intervalo de páginas.

Retorno

lOk: .T. quando o relatório é salvo com sucesso.

SayCria um texto no relatório.TMSPrinter():Say( [nRow], [nCol], [cText], [oFont], [nWidth], [nClrText], [uParam7], [nAlign] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nRowNuméricoOpcional

Posição vertical.

nColNuméricoOpcional

Posição horizontal.

cTextCaractereOpcional

Texto a imprimir.

oFontObjetoOpcional

Fonte usada.

nWidthNuméricoOpcional

Largura disponível.

nClrTextNuméricoOpcional

Cor do texto.

uParam7QualquerOpcional

Compatibilidade.

nAlignNuméricoOpcional

Alinhamento.

SayBitmapInsere uma imagem no relatório. A documentação histórica destaca uso de BMP.TMSPrinter():SayBitmap( [nRow], [nCol], [cBitmap], [nWidth], [nHeight], [uParam6], [uParam7] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nRowNuméricoOpcional

Posição vertical.

nColNuméricoOpcional

Posição horizontal.

cBitmapCaractereOpcional

Caminho e nome da imagem.

nWidthNuméricoOpcional

Largura da imagem.

nHeightNuméricoOpcional

Altura da imagem.

uParam6QualquerOpcional

Compatibilidade.

uParam7QualquerOpcional

Compatibilidade.

SetCurrentPrinterInUseMétodo de compatibilidade relacionado à impressora corrente.TMSPrinter():SetCurrentPrinterInUse() -->
SetFontDefine a fonte padrão do relatório.TMSPrinter():SetFont( <oFont> ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
oFontObjetoObrigatório

Objeto TFont.

SetLandscapeDefine a orientação do relatório como paisagem.TMSPrinter():SetLandscape() -->
SetPageDefine a página que será apresentada.TMSPrinter():SetPage( <nPage> ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nPageNuméricoObrigatório

Número da página.

SetPaperSizeDefine o tamanho de papel adotado pela página.TMSPrinter():SetPaperSize( [nTamanho] ) -->
Parâmetros
NomeFormatoObrigatórioDescriçãoObservação
nTamanhoNuméricoOpcional

Código do tamanho de papel.

SetPortraitDefine a orientação do relatório como retrato.TMSPrinter():SetPortrait() -->
SetupApresenta a janela de configuração de impressoras.TMSPrinter():Setup() -->
StartPageIndica o início de uma página. Deve ser chamado antes de desenhar o conteúdo.TMSPrinter():StartPage() -->
03 · EXEMPLO PRÁTICO

Ciclo básico de relatório legado

#Include "TOTVS.ch"

User Function ExTMSPrinter()
    Local oPrint := TMSPrinter():New("Exemplo TMSPrinter")

    If !oPrint:IsPrinterActive()
        oPrint:Setup()
    EndIf

    oPrint:StartPage()
    oPrint:SetPortrait()
    oPrint:Say(100, 100, "Relatório legado com TMSPrinter")
    oPrint:EndPage()
    oPrint:Preview()
    oPrint:End()
Return
Resultado esperado

Cria um relatório simples, inicia uma página, escreve um texto, finaliza a página, abre a pré-visualização e encerra o objeto.

BOAS PRÁTICAS
  • Use esta página principalmente para manutenção e migração de relatórios legados.
  • Para novos desenvolvimentos, avalie FWMsPrinter, SmartView ou componentes mais atuais conforme o objetivo do relatório.
  • A documentação histórica informa limitação de 128KB por página; relatórios grandes devem ser revisados com atenção.
ARMADILHAS COMUNS
  • TMSPrinter aparece como descontinuada na referência consultada.
  • Alguns parâmetros são documentados apenas como compatibilidade, sem finalidade detalhada.
  • Caminhos de imagens e arquivos precisam existir no ambiente onde a impressão é executada.

Conteúdos relacionados

REFERÊNCIAS
  1. TOTVS. TMSPrinter (descontinuado). TOTVSTEC / TDN. Página histórica de referência.
Situação
Publicado
Página criada em
Última revisão em
Idioma original
Português
Revisão
Usina.BR
0 comentário(s) aprovado(s)

Comentários

Ainda não há comentários aprovados.

Entre com Google ou Microsoft para comentar.

Powered by Usina Docs · Alpha