FWMsPrinter
Colapse ALL
Expand ALL
Classe: FWMsPrinter
Cria um objeto que permite visualizar e
imprimir relatório.
Hierarquia
Construtores
New
New
Método construtor da classe.
Sintaxe
FWMsPrinter(): New ( < cFilePrintert >, [ nDevice], [ lAdjustToLegacy], [ cPathInServer], [ lDisabeSetup ], [ lTReport], [ @oPrintSetup], [ cPrinter], [ lServer], [ lPDFAsPNG], [ lRaw], [ lViewPDF], [ nQtdCopy] ) --> oPrinter
Parâmetros
Nome Tipo Descrição Obrigatório Referência
cFilePrintert Caracter Nome do arquivo de relatório a ser criado.
X
nDevice Numérico Tipos de Saída aceitos:IMP_SPOO L Envia para impressora.IMP_PD F Gera arquivo PDF à partir do relatório.Default é IMP_SPOOL
lAdjustToLegacy Lógico Se .T. recalcula as coordenadas para manter o legado de proporções com a classe TMSPrinter. Default é .T.IMPORTANTE: Este cálculos não funcionam corretamente quando houver retângulos do tipo BOX e FILLRECT no relatório, podendo haver distorções de algumas pixels o que acarretará no encavalamento dos retângulos no momento da impressão.
cPathInServer Caracter Diretório onde o arquivo de relatório será salvo
lDisabeSetup Lógico Se .T. não exibe a tela de Setup, ficando à cargo do programador definir quando e se será feita sua chamada. Default é .F.
lTReport Lógico Indica que a classe foi chamada pelo TReport. Default é .F.
oPrintSetup Objeto Objeto FWPrintSetup instanciado pelo usuário.
X
cPrinter Caracter Impressora destino "forçada" pelo usuário. Default é ""
lServer Lógico Indica impressão via Server (.REL Não será copiado para o Client). Default é .F.
lPDFAsPNG Lógico .T. Indica que será gerado o PDF no formato PNG. O Default é .T.
lRaw Lógico .T. indica impressão
RAW/PCL, enviando para o dispositivo de impressão caracteres binários(RAW) ou caracteres programáveis específicos da impressora(PCL)
lViewPDF Lógico Quando o tipo de impressão for PDF, define se arquivo será exibido após a impressão. O default é .T.
nQtdCopy Numérico Define a quantidade de cópias a serem impressas quando utilizado o metodo de impressão igual a SPOOL. Recomendavel em casos aonde a utilização da classe FwMsPrinter se da por meio de eventos sem a intervenção do usuario (JOBs / Schedule por exemplo)Obs: Aplica-se apenas a ambientes que possuam o fonte FwMsPrinter.prw com data igual ou superior a
03/05/2012.
Retorno
oPrinter
Retorna o objeto criado.
Observações
Exemplos
lAdjustToLegacy := .F. lDisableSetup :=
.T.oPrinter := FWMSPrinter():New("Danfe.rel",
IMP_PDF, lAdjustToLegacy, , lDisableSetup)//
Ordem obrigátoria de configuração do
relatóriooPrinter:SetResolution(72)oPrinter:Se
tPortrait()oPrinter:SetPaperSize(DMPAPER_A4)
oPrinter:SetMargin(60,60,60,60) // nEsquerda,
nSuperior, nDireita, nInferior
oPrinter:cPathPDF := "c:\directory\" // Caso
seja utilizada impressão em IMP_PDF
Métodos
Box
Box
Insere um retângulo no relatório.
Sintaxe
FWMsPrinter(): Box ( < nRow>, < nCol>, < nBottom>, < nRight>, [ cPixel] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nRow Numérico Indica a
coordenada vertical em pixels.
X
nCol Numérico Indica a
coordenada horizontal em pixels.
nBottom Numérico Indica a posição do objeto em relação ao rodapé.
X
nRight Numérico Indica a posição do objeto à direita.
X
cPixel Caracter Expessura da linha em pixels. Default é "-2"
Observações
Exemplos
oPrinter:Box( 130, 10, 600, 900, "-4")
Cancel
Cancel
Define cancelamento do relatorio.
Sintaxe
FWMsPrinter(): Cancel ( ) -->Observações
Exemplos
oPrinter:Cancel()
Canceled
Canceled
Retorna estado do relatório.
Sintaxe
FWMsPrinter(): Canceled ( ) --> lRet
lRet
()
Retorna se o relatório foi cancelado pelo método Cancel().
Observações
Exemplos
oPrinter:Canceled()
Cmtr2Pix
Cmtr2Pix
Devolve por referência, o valor convertido em pixels de uma coluna e uma linha.
Sintaxe
FWMsPrinter(): Cmtr2Pix ( [ nLinha], [ nCol] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nLinha Numérico Indica a linha que será calculada.
nCol Numérico Indica a coluna que
será calculada.
Observações
Exemplos
nCol1 := 10nRow1 := 10oPrinter:Cmtr2Pix(
nCol1, nRow1)//Resultado//nCol1 :=
1107.08955224//nRow1 := 1107.26600985
Code128C
Code128C
Imprime codigo de barra no padrão Code128C
Obs: A utilização deste metodo não é homologado para a impressão de relatorios em ambientes que utilizam sistema operacional com o recurso de "Zoom" ou "Lupa" ativo.
Sintaxe
FWMsPrinter(): Code128C ( < nRow>, < nCol>, < cCodeBar>, < nSizeBar> ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nRow Numérico Posição relativa ao
topo
X
nCol Numérico Posição relativa à
esquerda
X
cCodeBar Caracter Texto a ser transformado em código de barra
X
nSizeBar Numérico Tamanho da fonte (código de barra)
X
Observações
#Include "PROTHEUS.CH"#Include "RPTDEF.CH"
#INCLUDE "TBICONN.CH"User Function
Code128C()Local oPrinter PREPARE ENVIRONMENT
EMPRESA "01" FILIAL "01"oPrinter :=
FWMSPrinter():New('teste',6,.F.,,.T.,,,,,.F.)o
Printer:Setup()oPrinter:setDevice(IMP_PDF)oPri
nter:cPathPDF :="C:\"oPrinter:Say(10,0,"Teste
para Code128C") oPrinter:Code128c(100, 10,
'1234567', 50)
oPrinter:EndPage()oPrinter:Preview()
FreeObj(oPrinter)oPrinter := NilRESET
ENVIRONMENTReturn
FwMsBarFwMsBar
Imprime codigo de barras suportados pela função MsBar().
Obs: A utilização deste metodo não é homologado para a impressão de relatorios em ambientes que utilizam sistema operacional com o recurso de "Zoom" ou "Lupa" ativo.
Sintaxe
FWMsPrinter():FWMsBar(cTypeBar,nRow,nCol,cCode,oPrint,lCheck,Color,lHorz, nWidth,nHeigth,lBanner,cFont,cMode,lPrint,nPFWidth,nPFHeigth,lCmtr2Pix)-->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
cTypeBar Caracter Código do tipo do código de barras: "EAN13", "EAN8", "UPCA" , "SUP5" , "CODE128", "INT25","MAT25,"IN D25","CODABAR"," CODE3_9" X
nRow Numérico Posição relativa à esquerda
X
nCol Numérico Posição relativa ao
topo
X
cCode Caracter Texto a ser transformado em código de barra
X
oPrint Objeto Objeto Printer
lCheck Lógico Se calcula o digito
de controle. Defautl .T.
Color Numérico Numero da Cor,
utilize a "color.ch". Default
CLR_BLACK
lHorz Lógico Se imprime na
Horizontal. Default .T.
nWidth Numérico Numero do
Tamanho da barra. Default 0.025
nHeigth Numérico Numero da Altura
da barra. Default 1.5
lBanner Lógico Se imprime a linha
com o código embaixo da barra. Default .T.
cFont Caracter Nome do Fonte a
ser utilizado. Defautl "Arial"
cMode Caracter Modo do codigo de
barras CO. Default ""
lPrint Lógico Se executa o método Print() de oPrinter pela MsBar. Default .T.
nPFWidth Numérico Número do índice
de ajuste da largura da fonte. Default 1 nPFHeigth Numérico Número do índice
de ajuste da altura da fonte. Default 1
lCmtr2Pix Lógico Utiliza o método
Cmtr2Pix() do objeto
Printer.Default .T.
Observações
Este método utiliza-se da mesma classe utilizada pela MsBar().
#INCLUDE "RPTDEF.CH"
#INCLUDE "FWPrintSetup.ch" #INCLUDE "protheus.ch" User Function totvsprt() Local lAdjustToLegacy := .F. Local lDisableSetup := .T. Local oPrinter
Local cLocal := "\spool"
Local cCodINt25 := "34190184239878442204400130920002152710000053475" Local cCodEAN := "123456789012"
oPrinter := FWMSPrinter():New("exemplo.rel", IMP_PDF, lAdjustToLegacy,cLocal, lDisableSetup, , , , , , .F., )
oPrinter:FWMSBAR("INT25" /*cTypeBar*/,1/*nRow*/ ,1/*nCol*/,
cCodINt25/*cCode*/,oPrinter/*oPrint*/,.T./*lCheck*/,/*Color*/,.T./*lHorz*/,0.02/*nW idth*/,0.8/*nHeigth*/,.T./*lBanner*/,"Arial"/*cFont*/,NIL/*cMode*/,.F./*lPrint*/,2/ *nPFWidth*/,2/*nPFHeigth*/,.F./*lCmtr2Pix*/
oPrinter:FWMSBAR("EAN13" /*cTypeBar*/,5/*nRow*/ ,1/*nCol*/ ,cCodEAN /*cCode*/,oPrinter/*oPrint*/,/*lCheck*/,/*Color*/,/*lHorz*/, /*nWidth*/,/*nHeigth*/,/*lBanner*/,/*cFont*/,/*cMode*/,.F./*lPrint*/,/*nPFWidth*/,/ *nPFHeigth*/,/*lCmtr2Pix*/) oPrinter:Setup() if oPrinter:nModalResult == PD_OK oPrinter:Preview() EndIf Return DataMatrix
DataMatrix
Imprime codigo de barra no padrão DataMatrix
Obs: A utilização deste metodo não é homologado para a impressão de relatorios em ambientes que utilizam sistema operacional com o recurso de "Zoom" ou "Lupa" ativo.
Sintaxe
FWMsPrinter(): DataMatrix ( < nCol>, < nRow>, < cCodeBar>, < nSizeBar> ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nCol Numérico Posição relativa à
esquerda
X
nRow Numérico Posição relativa ao
topo
cCodeBar Caracter Texto a ser codificado
X
nSizeBar Numérico Tamanho do codigo de barras
X
Observações
Esta opção esta disponivel para TotvsPrinter.exe em
versões superiores à 1.3.0. Para confirmação da versão
utilize na linha de comando:
totvsprinter -v
.
Exemplos
#Include "PROTHEUS.CH"#Include "RPTDEF.CH"
#INCLUDE "TBICONN.CH"User Function
DataMatrix()Local oPrinter PREPARE
ENVIRONMENT EMPRESA "99" FILIAL "01"oPrinter
:=
FWMSPrinter():New('teste',6,.F.,,.T.,,,,,.F.)o
Printer:Setup()oPrinter:setDevice(IMP_PDF)oPri
nter:cPathPDF :="C:\"oPrinter:Say(180,0,"Teste
para
DataMatrix")oPrinter:DataMatrix(0,300,"DataMat
rix gerado com sucesso", 100)
oPrinter:EndPage()oPrinter:Preview()
FreeObj(oPrinter)oPrinter := NilRESET
ENVIRONMENTReturn
Ellipse
Ellipse
Insere uma elipse no relatório.
Sintaxe
FWMsPrinter(): Ellipse ( < nLeft>, < nTop>, < nBottom>, < nRigth>, [ nColorIn], [ nColorOut], [ nLineType], [ cPixel] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nLeft Numérico Indica a
coordenada horizon tal em pixels.
X
nTop Numérico Indica a
coordenada ao topo em pixels.
X
nBottom Numérico Indica a posição do objeto em relação ao rodapé.
X
nRigth Numérico Indica a posição do objeto à direita.
X
nColorIn Numérico Cor do
preenchimento do elipse. Default CLR_BLACK.
nColorOut Numérico Cor da linha do elipse. Default CLR_BLACK
nLineType Numérico Estilo da linha. Default 0. Para mais informações sobre os tipos disponíveis, consulte a área Observações.
cPixel Caracter Pixel no formato caractere exemplo “02”, caso necessário us de decimais utilize “-2” para 0,2 Pixels.
Observações
nLineType
Tabelas com as opções de linha disponíveis.
0 - Solid Line;
1 - Dash Line;
2 - Dash Dot Line;
3 - Dash Dot Dot Line;
4 - Dot Line;
5 - Custom Dash Line
Exemplos
oPrinter:Ellipse( 10, 10, 100, 100, CLR_BLACK,
CLR_BLACK, 0, “-2”)
EndPage
EndPage
Indica o fim da página.
Sintaxe
FWMsPrinter(): EndPage ( ) -->Observações
Exemplos
oPrinter:EndPage()
FillRect
FillRect
Cria um objeto do tipo retângulo, que pode ser preenchido com uma determinada cor.
Sintaxe
FWMsPrinter(): FillRect ( < aCoords>, [ oBrush], [ cPixel] ) -->
Parâmetros
aCoords Vetor Vetor de coordenadas {nTop,nLeft,nBotto m,nRight}
X
oBrush Objeto Indica o objeto do tipo TBrush
utilizado para definir a cor de preenchimento do shape e responsável pelo preenchimento do retângulo.
cPixel Caracter Expessura da linha em pixels. Default é "-2"
Observações
Exemplos
oBrush1 := TBrush():New( ,
CLR_YELLOW)oPrinter:Fillrect( {100, 10, 200,
200 }, oBrush1, "-2")
GetFontWidths
GetFontWidths
Retorna a largura dos caracteres de uma determinada fonte
Sintaxe
FWMsPrinter(): GetFontWidths ( [ oFont], [ @aFontSize] ) --> aRet
Parâmetros
Nome Tipo Descrição Obrigatório Referência
aFontSize Array of Record Vetor passado por referencia que recebera a lista de largura da fonte selecionada X
Retorno
aRet
()Vetor passado por referencia que recebera a lista de largura da fonte selecionada
Observações
null
GetOrientation
GetOrientation
Retorna a orientação (Retrato ou Paisagem) do objeto.
Sintaxe
FWMsPrinter(): GetOrientation ( ) --> nOrientation
Retorno
nOrientation
()
Retorna orientação do relatório. Para mais informações sobre os retornos que podem ser apresentados, consulte a área Observações.
Observações
nOrientation
Tabela com os valores de retorno.
0 - Ainda não definido pelo usuário;
1 - Portrait(retrato);
2 - Landscape(paisagem)
Exemplos
GetTextHeight
GetTextHeight
Retorna a altura do texto, conforme as características da fonte definida.
Sintaxe
FWMsPrinter(): GetTextHeight ( < cTexto>, < oFont> ) --> nHeight
Parâmetros
Nome Tipo Descrição Obrigatório Referência
cTexto Caracter Indica o texto que será calculado.
X
oFont Objeto Indica o objeto do tipo TFont, utilizado para definir as características da fonte e realizar o cálculo. X
Retorno
nHeight
()Retorna a altura do texto.
Observações
Exemplos
oFont1 := TFont():New( 'Courier New', , -18,
.T.)nHeight := oPrinter:GetTextheight(
"Teste", oFont1)
GetTextWidth
GetTextWidth
Sintaxe
FWMsPrinter(): GetTextWidth ( < cTexto>, < oFont> ) --> nWidth
Parâmetros
Nome Tipo Descrição Obrigatório Referência
cTexto Caracter Indica o texto que será calculado.
X
oFont Objeto Indica o objeto do tipo TFont, utilizado para definir as características da fonte e realizar o cálculo. X
Retorno
nWidth
()Retorna a largura do texto.
Observações
null
Exemplos
oFont1 := TFont():New( 'Courier New', , -18,
.T.)nWidht := oPrinter:GetTextWidth( "Teste",
oFont1)
GetViewPDF
GetViewPDF
Quando o tipo de impressão for PDF, retorna se o arquivo será exibido após a
impressão.
FWMsPrinter(): GetViewPDF ( ) --> lViewPDF
Retorno
lViewPDF
(logico)
.T. para exibir o relatório após a impressão.
Observações
Este método estará disponível em pacote de lib, no qual o
fonte FWMSPrinter.PRW tenha a data superior ou igual a
08/09/2011.
Exemplos
oPrinter:GetViewPDF()
IsPrinterActive
IsPrinterActive
Retorna se a impressora está ativa.
Sintaxe
FWMsPrinter(): IsPrinterActive ( ) -->Observações
Exemplos
oPrinter:IsPrinterActive()
Line
Line
Insere uma linha no relatório.
Sintaxe
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nTop Numérico Indica a
coordenada vertical em pixels.
X
nLeft Numérico Indica a coordenada horizontal em pixels.
X
nBottom Numérico Indica a posição do objeto ao rodapé.
X
nRight Numérico Indica a posição do objeto à direita.
X
nColor Numérico Cor da linha. Default é 0
cPixel Caracter Expessura da linha em pixels. Default é "-2"
Observações
Exemplos
oPrinter:Line( 130, 10, 130, 900, "-4")
nHorzRes
nHorzRes
Retorna a resolução horizontal da impressora configurada.
Sintaxe
FWMsPrinter(): nHorzRes ( ) --> nResult
Retorno
nResult
Retorna a resolução horizontal da impressora configurada.
Observações
Exemplos
oPrinter:nHorzRes()
nHorzSize
nHorzSize
Retorno largura da página.
Sintaxe
FWMsPrinter(): nHorzSize ( ) --> nHorzSize
Retorno
nHorzSize
() Largura da páginaObservações
null
Exemplos
oPrinter:nHorzSize()
nLogPixelX
nLogPixelX
Retorna a resolução vertical, em pixels, da impressora configurada.
Sintaxe
FWMsPrinter(): nLogPixelX ( ) --> nResult
Retorno
nResult
Retorna a resolução vertical em pixels da impressora configurada.
Observações
Exemplos
oPrinter:nLogPixelX()
nLogPixelY
nLogPixelY
Retorna a resolução horizontal, em pixels, da impressora configurada.
Sintaxe
FWMsPrinter(): nLogPixelY ( ) --> nResult
Retorno
nResult
()
Retorna a resolução horizontal em pixels da impressora configurada.
Observações
Exemplos
oPrinter:nLogPixelY()
nVertRes
nVertRes
Retorna a resolução vertical da impressora configurada.
Sintaxe
FWMsPrinter(): nVertRes ( ) --> nResult
Retorno
nResult
()
Observações
Exemplos
oPrinter:nVertRes()
nVertSize
nVertSize
Retorno altura da página.
Sintaxe
FWMsPrinter(): nVertSize ( ) --> nVertSize
Retorno
nVertSize
() Altura da página.Observações
Exemplos
oPrinter:nVertSize()
PaperSize
PaperSize
Retorna o tamanho do papel.
Sintaxe
FWMsPrinter(): PaperSize ( ) --> nPaperSize
Retorno
nPaperSize
()
Observações
null
Exemplos
oPrinter:PaperSize()
Preview
Preview
Abre a janela de visualização do relatório.
Sintaxe
FWMsPrinter(): Preview ( ) -->Observações
Exemplos
oPrinter:Preview()
Envia o relatório para impressora.
Sintaxe
FWMsPrinter(): Print ( ) -->Observações
Exemplos
oPrinter:Print()
PrinterName
PrinterName
Retorna o nome da impressora.
Sintaxe
FWMsPrinter(): PrinterName ( ) --> cImpressora
Retorno
cImpressora
(caracter)
Nome da impressora.
Observações
A imagem é ajustada para preencher todo o espaço definido entre a altura e largura do objeto.
Exemplos
oPrinter:PrinterName()
QRCode
QRCode
Imprime codigo de barra no padrão QRCode
Sintaxe
FWMsPrinter(): QRCode ( < nCol>, < nRow>, < cCodeBar>, < nSizeBar> ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nCol Numérico Posição relativa à
esquerda
X
nRow Numérico Posição relativa ao
topo
X
cCodeBar Caracter Texto a ser codificado
X
nSizeBar Numérico Tamanho do codigo de barras
Observações
Esta opção esta disponivel para TotvsPrinter.exe em
versões superiores à 1.3.0. Para confirmação da versão
utilize na linha de comando:
totvsprinter -v
.
Exemplos
#Include "PROTHEUS.CH"#Include "RPTDEF.CH"
#INCLUDE "TBICONN.CH"User Function
QRCode()Local oPrinter PREPARE ENVIRONMENT
EMPRESA "99" FILIAL "01"oPrinter :=
FWMSPrinter():New('teste',6,.F.,,.T.,,,,,.F.)o
Printer:Setup()oPrinter:setDevice(IMP_PDF)oPri
nter:cPathPDF :="C:\"oPrinter:Say(40,0,"Teste
para QRCode")oPrinter:QRCode(0,150,"QR Code
gerado com sucesso", 100)
oPrinter:EndPage()oPrinter:Preview()
FreeObj(oPrinter)oPrinter := NilRESET
ENVIRONMENTReturn
Say
Say
Insere um texto no relatório.
Sintaxe
FWMsPrinter(): Say ( < nRow>, < nCol>, < cText>, [ oFont], [ nWidth], [ nClrText], [ nAngle] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nRow Numérico Indica a
coordenada vertical em pixels ou caracteres.
nCol Numérico Indica a coordenada
horizontal em pixels ou caracteres.
X
cText Caracter Texto a ser impresso.
X
oFont Objeto Indica o objeto do tipo TFont utilizado para definir as características da fonte aplicada na exibição do conteúdo do controle visual.
nWidth Nulo Indica a largura em pixels do objeto.
nClrText Numérico Indica a cor do texto do objeto.
nAngle Numérico Ângulo de rotação do texto.
Observações
A imagem é ajustada para preencher todo o espaço definido entre a altura e largura do objeto.
Exemplos
oFont1 := TFont():New( "Courier New", , -18,
.T.)oPrinter:Say( 10, 10, "texto para
visualização", oFont1, 1400, CLR_HRED)
SayAlign
SayAlign
Cria um objeto do tipo texto, permitindo alinhamento Horizontal e Vertical.
Sintaxe
FWMsPrinter(): SayAlign ( < nRow>, < nCol>, < cText>, [ oFont], [ nWidth], [ nHeigth], [ nClrText], [ nAlignHorz], [ nAlignVert ] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nRow Numérico Indica a
coordenada vertical em pixels ou caracteres.
X
nCol Numérico Indica a
coordenada
horizontal em pixels ou caracteres.
X
cText Caracter Indica o texto que será impresso.
X
oFont Objeto Indica o objeto do tipo TFont utilizado para definir as características da fonte aplicada na exibição do conteúdo do controle visual.
nWidth Numérico Indica a largura em pixels do objeto.
nHeigth Numérico Indica a altura em pixels do objeto.
nClrText Numérico Indica a cor do texto do objeto.
nAlignHorz Numérico Alinhamento Horizontal. Para mais informações sobre os alinhamentos disponíveis, consulte a área Observações.
nAlignVert Numérico Alinhamento Vertical. Para mais informações sobre os alinhamentos disponíveis, consulte a área Observações.
Observações
nAlignHorz
Tabela de códigos de alinhamento horizontal.
0 - Alinhamento à esquerda;
1 - Alinhamento à direita;
2 - Alinhamento centralizado
nAlignVert
Tabela de códigos de alinhamento vertical.
0 - Alinhamento centralizado;
1 - Alinhamento superior;
2 - Alinhamento inferior
Exemplos
oFont1 := TFont():New('Courier
new',,-18,.T.)oPrinter:SayAlign( 10,10,"Texto
para visualização",oFont1,1400, 200, CLR_HRED,
0, 2 )
SayBitmap
SayBitmap
Insere uma imagem no relatório.
Sintaxe
FWMsPrinter(): SayBitmap ( < nRow>, < nCol>, < cBitmap>, [ nWidth], [ nHeight] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nRow Numérico Indica a
coordenada vertical em pixels ou caracteres.
nCol Numérico Indica a coordenada
horizontal em pixels ou caracteres.
X
cBitmap Caracter Indica o diretório e o nome, com extensão BMP (Bitmap), da imagem.
X
nWidth Numérico Indica a largura em pixels do objeto. Default é 100.
nHeight Numérico Indica a altura em pixels do objeto. Default é 100.
Observações
A imagem é ajustada para preencher todo o espaço definido entre a altura e largura do objeto.
Exemplos
oPrinter:SayBitmap( 100, 200,
"C:\Dir\totvs.bmp", 800, 800)
SetDevice
SetDevice
Seleciona o dispositivo de impressao
Sintaxe
FWMsPrinter(): SetDevice ( < nDevice> ) -->
Parâmetros
nDevice Numérico Tipos de Saída aceitos: IMP_SPOOL Envia para impressora. IMP_PDF Gera arquivo PDF à partir do relatório. Default é IMP_SPOOL X
Observações
null
Exemplos
oPrint:SetDevice(IMP_SPOOL)
SetFont
SetFont
Define o fonte a ser utilizado no relatório.
Sintaxe
FWMsPrinter(): SetFont ( < oFont> ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
oFont Objeto Objeto do tipo TFont.
X
Observações
null
oFont1 := TFont():New('Courier
new',,-18,.T.)oPrinter:SetFont(oFont1)
SetLandscape
SetLandscape
Define a orientação do relatório como paisagem (Landscape).
Sintaxe
FWMsPrinter(): SetLandscape ( ) -->Observações
Exemplos
oPrinter:SetLandscape()
SetMargin
SetMargin
Define a margem do relatório.
Sintaxe
FWMsPrinter(): SetMargin ( < nLeft>, < nTop>, < nRight>, < nBottom> ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nLeft Numérico Margem esquerda X
nTop Numérico Margem superior X
nRight Numérico Margem direita X
Observações
null
Exemplos
oPrinter:SetMargin(10,10,10,10)
SetPaperSize
SetPaperSize
Define o tamanho que será adotado pela página a ser impressa.
Sintaxe
FWMsPrinter(): SetPaperSize ( < nPaperSize>, [ nHeight], [ nWidth] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nPaperSize Numérico Indica o tamanho que será utilizado no papel. Para mais informações dos tipos de tamanho disponíveis, consulte a área Observações. X
nHeight Numérico Altura da página.
nWidth Numérico Largura da página.
Observações
nPaperSize
0 - Tamanho customizavel pelo usuario, informado em nHeight/nWidth. Aplicavel apenas em impressoes
do tipo PDF. 1 - Letter 216mm x 279mm 637 x 823 3 - Tabloid 279mm x 432mm 823 x 1275 7 - Executive 184mm x 267mm 543 x 788 8 - A3 297mm x 420mm 876 x 1240 9 - A4 210mm x 297mm 620 x 876
Exemplos
oPrinter:setPaperSize(9)
SetPortrait
SetPortrait
Define a orientação do relatório como retrato (Portrait).
Sintaxe
FWMsPrinter(): SetPortrait ( ) -->Observações
Exemplos
oPrinter:SetPortrait()
SetResolution
SetResolution
Define resolução do relatório.
Sintaxe
FWMsPrinter(): SetResolution ( [ nResolution] ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
nResolution Numérico Resolução do relatório. Default é 72
Atualmente a versão da Totvsprinter somente trabalha
com o valor fixo de 72. Portanto não deve setar outro
valor.
Exemplos
oPrinter:Resolution()
Setup
Setup
Apresenta a janela de configuração de impressoras.
Sintaxe
FWMsPrinter(): Setup ( ) -->Observações
Exemplos
oPrinter:Setup()
SetViewPDF
SetViewPDF
Quando o tipo de impressão for PDF, define se o arquivo será exibido após a impressão.
Sintaxe
FWMsPrinter(): SetViewPDF ( < lViewPDF> ) -->
Parâmetros
Nome Tipo Descrição Obrigatório Referência
lViewPDF Lógico .T. para exibir o PDF após a impressão.
Observações
Este método estará disponível em pacote de lib, no qual o
fonte FWMSPrinter.PRW tenha a data superior ou igual a
08/09/2011.
Exemplos
// para não apresentar o PDF após a geração do
relatório.oPrinter:SetViewPDF(.F.)
StartPage
StartPage
Inicia a impressão de uma nova página
Sintaxe
FWMsPrinter(): StartPage ( ) -->Observações
Exemplos
oPrinter:StartPage()
Propriedade
Propriedade Descrição Tipo
aImages Lista de imagens do relatório. Vetor
cFileName Nome do arquivo a ser gerado. Caracter cFilePrint Arquivo que conterá o binário do
relatório.
Caracter
cPathPDF Path do arquivo PDF. Caracter
cPathPrint Nome do diretório onde o relatório será gerado.
cPrinter Nome da impressora para impressão do relatório.
Caracter
cSession Informações de configuração da impressora.
Caracter
IsFirstPage Determina se é a primeira página do relatório.
Array of Record
lCanceled Define se o relatório foi cancelado. Lógico lInJob Determina se o relatório está sendo
executado via Job.
Lógico
lServer Indica impressão via Server (.REL Não será copiado para o Client).
Lógico
lTReport Indica que o relatório foi chamado pelo TReport.
Lógico
lViewPDF Indica se o arquivo será exibido após a impressão em PDF.
Lógico
nDevice Dispositivo de impressão. Numérico
nModalResult Retorna o ModalResult do Setup, para que o usuário trate a informação
Numérico
nPageCount Quantidade de páginas do relatório. Numérico
nPageHeight Altura da página. Numérico
nPageWidth Largura da página. Numérico
nPaperSize Tamanho da folha do relatório. Numérico
oFontAtu Fonte do relatório. Objeto
oPrint Objeto de impressão. Objeto