Usina BRAdvPL Guide
Sign in
← All topics
CLASSPublished

TMSPrinter

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

Historical class for previewing and printing graphical reports in AdvPL.

ReportsPrintingLegacy classTMSPrinterTOTVSTEC
01 · OVERVIEW

Overview

TMSPrinter creates an object for previewing and printing graphical reports. The consulted documentation marks the class as discontinued, so new development should evaluate FWMsPrinter or newer alternatives. Even so, TMSPrinter is common in legacy source code and deserves complete reference coverage for maintenance, migration and understanding existing reports.

02 · SYNTAX

Syntax

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

Parameters

cDocument
CaractereOptional

Nome descritivo do relatório.

uParam2..uParam8
DiversosOptional

Parâmetros de compatibilidade documentados historicamente pela classe.

Methods

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
Parameters
NameFormatRequiredDescriptionNotes
cDocumentCaractereOptional

Nome descritivo do relatório.

uParam2LógicoOptional

Compatibilidade.

uParam3LógicoOptional

Compatibilidade.

uParam4CaractereOptional

Compatibilidade.

uParam5CaractereOptional

Compatibilidade.

uParam6CaractereOptional

Compatibilidade.

uParam7LógicoOptional

Compatibilidade.

uParam8CaractereOptional

Compatibilidade.

Return value

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
nRowNuméricoOptional

Coordenada vertical inicial.

nColNuméricoOptional

Coordenada horizontal inicial.

nBottomNuméricoOptional

Posição inferior do retângulo.

nRightNuméricoOptional

Posição direita do retângulo.

uParam5QualquerOptional

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
nLinhaNuméricoOptional

Linha a converter.

nColunaNuméricoOptional

Coluna a converter.

uParam3ArrayOptional

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
aCoordsArrayOptional

Coordenadas do retângulo.

oBrushObjetoOptional

Objeto TBrush usado para preenchimento.

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

nOrint: 1 para retrato e 2 para paisagem.

GetTextHeightRetorna a altura de um texto conforme a fonte definida.TMSPrinter():GetTextHeight( <cTexto>, <oFont> ) --> nHeight
Parameters
NameFormatRequiredDescriptionNotes
cTextoCaractereRequired

Texto a medir.

oFontObjetoRequired

Objeto TFont usado no cálculo.

Return value

nHeight: altura do texto.

GetTextWidthRetorna a largura de um texto conforme a fonte definida.TMSPrinter():GetTextWidth( <cTexto>, <oFonte> ) --> nWidth
Parameters
NameFormatRequiredDescriptionNotes
cTextoCaractereRequired

Texto a medir.

oFonteObjetoRequired

Objeto TFont usado no cálculo.

Return value

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
nTopNuméricoOptional

Coordenada superior/inicial.

nLeftNuméricoOptional

Coordenada esquerda/inicial.

nBottomNuméricoOptional

Coordenada inferior/final.

nRightNuméricoOptional

Coordenada direita/final.

uParam5QualquerOptional

Compatibilidade.

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

nResolucao: resolução horizontal.

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

nResolucao: resolução horizontal em pixels.

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

nResolucao: resolução vertical em pixels.

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

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
aPagsArrayOptional

Páginas a imprimir.

nCopiasNuméricoOptional

Quantidade de cópias.

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

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
Parameters
NameFormatRequiredDescriptionNotes
cFilePathCaractereOptional

Caminho para salvar os arquivos.

nWidthPageNuméricoOptional

Largura da página/imagem.

nHeightPageNuméricoOptional

Altura da página/imagem.

nZoomNuméricoOptional

Percentual de zoom.

nQualityNuméricoOptional

Qualidade da imagem.

Return value

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

SaveAsHTMLSalva o relatório em HTML.TMSPrinter():SaveAsHTML( <cFile>, [aRange] ) --> lOk
Parameters
NameFormatRequiredDescriptionNotes
cFileCaractereRequired

Arquivo de destino.

aRangeArrayOptional

Intervalo de páginas.

Return value

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

SaveAsODFSalva o relatório em ODF.TMSPrinter():SaveAsODF( <cFile>, [aRange] ) --> lOk
Parameters
NameFormatRequiredDescriptionNotes
cFileCaractereRequired

Arquivo de destino.

aRangeArrayOptional

Intervalo de páginas.

Return value

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
nRowNuméricoOptional

Posição vertical.

nColNuméricoOptional

Posição horizontal.

cTextCaractereOptional

Texto a imprimir.

oFontObjetoOptional

Fonte usada.

nWidthNuméricoOptional

Largura disponível.

nClrTextNuméricoOptional

Cor do texto.

uParam7QualquerOptional

Compatibilidade.

nAlignNuméricoOptional

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] ) -->
Parameters
NameFormatRequiredDescriptionNotes
nRowNuméricoOptional

Posição vertical.

nColNuméricoOptional

Posição horizontal.

cBitmapCaractereOptional

Caminho e nome da imagem.

nWidthNuméricoOptional

Largura da imagem.

nHeightNuméricoOptional

Altura da imagem.

uParam6QualquerOptional

Compatibilidade.

uParam7QualquerOptional

Compatibilidade.

SetCurrentPrinterInUseMétodo de compatibilidade relacionado à impressora corrente.TMSPrinter():SetCurrentPrinterInUse() -->
SetFontDefine a fonte padrão do relatório.TMSPrinter():SetFont( <oFont> ) -->
Parameters
NameFormatRequiredDescriptionNotes
oFontObjetoRequired

Objeto TFont.

SetLandscapeDefine a orientação do relatório como paisagem.TMSPrinter():SetLandscape() -->
SetPageDefine a página que será apresentada.TMSPrinter():SetPage( <nPage> ) -->
Parameters
NameFormatRequiredDescriptionNotes
nPageNuméricoRequired

Número da página.

SetPaperSizeDefine o tamanho de papel adotado pela página.TMSPrinter():SetPaperSize( [nTamanho] ) -->
Parameters
NameFormatRequiredDescriptionNotes
nTamanhoNuméricoOptional

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 · PRACTICAL EXAMPLE

Basic legacy report cycle

#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
Expected result

Creates a simple report, starts a page, writes text, ends the page, opens preview and finalizes the object.

BEST PRACTICES
  • Use this page mainly for maintenance and migration of legacy reports.
  • For new development, evaluate FWMsPrinter, SmartView or newer reporting components.
  • The historical documentation mentions a 128KB limit per page; large reports should be reviewed carefully.
COMMON PITFALLS
  • TMSPrinter appears as discontinued in the consulted reference.
  • Some parameters are documented only as compatibility parameters.
  • Image and file paths must exist in the environment where printing is executed.

Related content

REFERENCES
  1. TOTVS. TMSPrinter (discontinued). TOTVSTEC / TDN. Historical reference page.
Status
Published
Page created on
Last reviewed on
Original language
Portuguese
Reviewed by
Usina.BR
0 approved comment(s)

Comments

There are no approved comments yet.

Sign in with Google or Microsoft to comment.

Powered by Usina Docs · Alpha