Este artigo fornece um exemplo funcional de como utilizar o método PrintGraphic com a classe TREPORT em Protheus. A classe TREPORT é uma ferramenta poderosa para gerar relatórios personalizados em Protheus, e o método PrintGraphic permite imprimir esses relatórios em formato gráfico.

Introdução ao Método PrintGraphic

O método PrintGraphic é uma função da classe TREPORT que permite imprimir relatórios em formato gráfico. Isso é útil quando você precisa visualizar dados em um formato mais amigável e fácil de entender.

Exemplo de Implementação

Abaixo, você encontrará um exemplo de como implementar o método PrintGraphic com a classe TREPORT:

#INCLUDE "PROTHEUS.CH"

user Function PRINTGRAPH()
Local oReport as Object
Local oSection as Object

//Classe TREPORT
oReport := TReport():New('EXEMPLO', "Clientes por UF", /*cPerg*/, {|oReport| ReportPrint(oReport, oSection)})

//Seção 1
oSection := TRSection():New(oReport, 'Clientes')

//Definição das colunas de impressão da seção 1
TRCell():New(oSection, "A1_COD", "TRB", "Código", /*Picture*/, /*Tamanho*/, /*lPixel*/, /*{|| code-block de impressao }*/)
TRCell():New(oSection, "A1_NOME", "TRB", "Razão", /*Picture*/, /*Tamanho*/, /*lPixel*/, /*{|| code-block de impressao }*/)
TRCell():New(oSection, "A1_EST", "TRB", "UF", /*Picture*/, /*Tamanho*/, /*lPixel*/, /*{|| code-block de impressao }*)

//Definição da collection
oColl := TRCollection():New("TOTAL UF", "COUNT", /*oBreak*/, "Total POR UF", /*cPicture*/, /*uFormula*/, oSection:Cell("A1_COD"), /*.lEndSection.*/, .F., /*.lEndReport.*/, .T., /*oParent*/, oSection, /*bCondition*/, /*uContent*/, oSection:Cell("A1_EST"))

oReport:PrintGraphic()
oReport:PrintDialog()

Return

Static Function ReportPrint(oReport, oSection)
#IFDEF TOP
Local cAlias := "TRB"
BEGIN REPORT QUERY oSection
BeginSql alias cAlias
SELECT A1_COD, A1_NOME, A1_EST
FROM %table:SA1%
ORDER BY A1_FILIAL, A1_EST
EndSql
END REPORT QUERY oSection
oSection:aCollection[1]:SetGraphic(4, "UF")
oSection:PrintGraphic()
oSection:Print()
#ENDIF
return

 

Resultado de Impressão

O resultado de impressão será um relatório em formato gráfico, com as colunas definidas na seção 1 e o gráfico correspondente.

Referências adicionais

Para mais informações sobre a classe TREPORT e o método PrintGraphic, você pode consultar as seguintes referências:
* Classe TReport
* Método TRCollection

Esperamos que este exemplo tenha sido útil para você. Se tiver alguma dúvida ou precisar de mais ajuda, não hesite em entrar em contato conosco.