Você está na página 1de 9

13/09/13 TMSGraphic - Tecnologia TOTVS - TDN

TMSGraphic
Colapse ALL
Expand ALL

Cria um objeto para apresentar gráfico.

Hierarquia
TSrvObject -> TControl -> TMSGraphic

Construtores

New

Método construtor da classe.

Sintaxe

TMSGraphic(): New ( [ nRow], [ nCol], [ oWnd], [ uParam4], [ uParam5], [ uParam6], [ nWidth],


[ nHeight] ) --> oObjeto

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nRow Numérico Indica a coordenada vertical em pixels.

nCol Numérico Indica a coordenada horizontal em pixels.

oWnd Objeto Indica a janela ou controle visual onde o objeto será criado.

uParam4 Nulo Compatibilidade.

uParam5 Numérico Compatibilidade.

uParam6 Numérico Compatibilidade.

nWidth Numérico Indica a largura em pixels do objeto.

nHeight Numérico Indica a altura em pixels do objeto.

Retorno
oObjeto
()
Retorna o objeto criado.

Observações

Exemplos

oGraphic := TMSGraphic():New( 01,01,oDlg,,,RGB(239,239,239),260,184)

Métodos

Add

Adiciona um item no gráfico.

Sintaxe

TMSGraphic(): Add ( [ nSerie], [ nVal], [ cLegend], [ nColor] ) -->

Parâmetros

tdn.totvs.com/display/tec/TMSGraphic 1/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN
Nome Tipo Descrição Obrigatório Referência

nSerie Numérico Indica a série que será incluída no item. X

nVal Numérico Indica o valor do item. X

cLegend Caracter Indica a legenda do item.

nColor Numérico Indica a cor do item. X

Observações

Exemplos

nSerie := oGraphic:CreateSerie( 10 )oGraphic:Add(nSerie, 200, 'Item 01', CLR_HGREEN )

CreateSerie

Cria uma série para o gráfico.

Sintaxe

TMSGraphic(): CreateSerie ( [ nSerieType], [ cLegend], [ nDecimals], [ lShowValues] ) --> nRet

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nSerieType Numérico Indica o tipo do gráfico, sendo: GRP_LINE 1, GRP_AREA 2, GRP_POINT 3, X


GRP_BAR 4, GRP_PIE 10.

cLegend Caracter Indica a legenda da série.

nDecimals Numérico Indica o número de casas decimais dos valores.

lShowValues Lógico Indica se, verdadeiro (.T.), os valores serão apresentados; caso contrário, falso
(.F.).

Retorno
nRet
()
Retorna a quantidade de séries criadas.

Observações

nSerie := oGraphic:CreateSerie( GRP_LINE )

tdn.totvs.com/display/tec/TMSGraphic 2/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN

nSerie := oGraphic:CreateSerie( GRP_AREA )

nSerie := oGraphic:CreateSerie( GRP_POINT)

nSerie := oGraphic:CreateSerie( GRP_BAR )

tdn.totvs.com/display/tec/TMSGraphic 3/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN

nSerie := oGraphic:CreateSerie( GRP_PIE )

Exemplos

nSerie := oGraphic:CreateSerie( 10 )

DelSerie

Exclui uma série do gráfico.

Sintaxe

TMSGraphic(): DelSerie ( [
nSerie] ) --> lRet

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nSerie Numérico Indica a série que será excluída. X

Retorno
lRet
(logico)
Retorna verdadeiro (.T.), se a série for excluída com sucesso; caso contrário, retornará falso (.F.).

Observações
A TMSGraphic não permite a deleção e re-inserção de séries é necessário re-criar o objeto. No exemplo consta a forma correta para esta
operação.

#include "Protheus.CH"

#include "MSGRAPHI.CH"

Function u_zzTMSGraphic()
Private nPt := 40
Private nPmdb := 60

DEFINE MSDIALOG oDlg TITLE "Exemplo TMSGraphic" FROM 180,180 TO 550,700 PIXEL

tdn.totvs.com/display/tec/TMSGraphic 4/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN
oGraphic := TMSGraphic():New( 35,01,oDlg,,,RGB(239,239,239),230,150)
oGraphic:SetMargins(2,6,6,6)
oGraphic:SetLegenProp(GRP_SCRRIGHT, CLR_LIGHTGRAY, GRP_AUTO,.T.)

nSerie := oGraphic:CreateSerie( GRP_PIE ) // GRP_PIE=10


oGraphic:Add(nSerie, nPt , 'Votos PT' , CLR_HGREEN )
oGraphic:Add(nSerie, nPmdb, 'Votos PMDB', CLR_HRED )

@ 5, 01 SAY "Digite os votos do PT " OF oDlg PIXEL


@ 20, 01 SAY "Digite os votos do PMDB" OF oDlg PIXEL
@ 5, 100 MSGET nPt OF oDlg PIXEL PICTURE "@E 9999,999"
@ 20, 100 MSGET nPMDB OF oDlg PIXEL PICTURE "@E 9999,999"
@ 5, 150 BUTTON "Atualiza" SIZE 40,14 OF oDlg PIXEL ACTION xAtualiza(@oGraphic, nPt, nPMDB)

ACTIVATE MSDIALOG oDlg CENTERED

Return

Static Function xAtualiza(oGraphic, nPt, nPMDB)

// Destroi e recria o objeto de grafico


// OBS: Necessário para manutenção de recursos do sistema
FreeObj(oGraphic)
oGraphic := TMSGraphic():New( 35,01,oDlg,,,RGB(239,239,239),230,150)

// Nao necessário pois o objeto foi recriado


//oGraphic:DelSerie(nSerie)

nSerie := oGraphic:CreateSerie( GRP_PIE ) // GRP_PIE=10


oGraphic:Add(nSerie, nPt , 'Votos PT', CLR_HGREEN )
oGraphic:Add(nSerie, nPMDB, 'Votos PMDB', CLR_HRED )

Return

Exemplos

oGraphic:DelSerie(nSerie)

SaveToBMP (Obsoleto)

Salva o gráfico atual, no formato Bitmap (*.BMP), no servidor.

Sintaxe

TMSGraphic(): SaveToBMP (Obsoleto) ( [ cBmpName], [ cPathToWrite] ) --> lRet

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cBmpName Caracter Indica o nome da imagem que será salva. X

cPathToWrite Caracter Indica o diretório, no servidor, onde a imagem será armazenada. X

Retorno
lRet
(logico)
Retorna verdadeiro (.T.), se a imagem for salva com sucesso; caso contrário, retornará falso (.F.).

Observações
A gravação em disco somente gerará um arquivo fiel à imagem representação do gráfico após o mesmo já ter sido exibido em tela.

Este método está obsoleto. Desta forma, recomendamos que utilize o método SaveToImage.

Para mais informações, consulte a documentação do método SaveToImage.

Exemplos

oGraphic:SaveToBMP('Grafico.bmp','\web\')

tdn.totvs.com/display/tec/TMSGraphic 5/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN
SaveToImage

Salva o gráfico atual, no formato pré-determinado, no servidor.

Sintaxe

TMSGraphic(): SaveToImage ( [ cBmpName], [ cPathToWrite], [ cTypeImage] ) --> lRet

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cBmpName Caracter Indica o nome da imagem que será salva. X

cPathToWrite Caracter Indica o diretório, no servidor, onde a imagem será armazenada. X

cTypeImage Caracter Indica o tipo (formato) da imagem. O formato padrão é JPEG (Joint Photographic X
Group).

Retorno
lRet
(logico)
Retorna verdadeiro (.T.), se a imagem for salva com sucesso; caso contrário, retornará falso (.F.).

Observações
Método disponível a partir da build 7.00.060906P.

A gravação em disco somente gerará um arquivo fiel à imagem representação do gráfico após o mesmo já ter sido exibido em tela.

Exemplos

oGraphic:SaveToImage( "Imagem.png","\web\","PNG" )

SetLegenProp

Define as propriedades da legenda.

Sintaxe

TMSGraphic(): SetLegenProp ( [ nAlign], [ nColor], [ nStyle], [ lVisible] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nAlign Numérico Indica o alinhamento da legenda, sendo: GRP_SCRTOP 1, GRP_SCRLEFT 2, X


GRP_SCRBOTTOM 3, GRP_SCRRIGHT 4.

nColor Numérico Indica a cor da legenda. X

nStyle Numérico Indica o estilo da legenda. X

lVisible Lógico Indica se o título será visível (.T.) ou invisível (.F.). X

Observações

Exemplos

oGraphic:SetLegenProp(GRP_SCRRIGHT, CLR_LIGHTGRAY, GRP_AUTO,.T.)

SetMargins

Define as margens (superior, inferior e laterais) do gráfico.

Sintaxe

tdn.totvs.com/display/tec/TMSGraphic 6/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN

TMSGraphic(): SetMargins ( [ nTop], [ nLeft], [ nBottom], [ nRight] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nTop Numérico Indica a posição em relação ao topo do gráfico. X

nLeft Numérico Indica a posição em relação à esquerda. X

nBottom Numérico Indica a posição em relação ao rodapé. X

nRight Numérico Indica a posição em relação à direita. X

Observações
Este método só atualiza o gráfico apos sua pintura em binários superiores a 120420A.

Exemplos

oGraphic:SetMargins(2,6,6,6)

SetRangeY

Permite definir um intervalo de valores para o eixo Y do gráfico.

Sintaxe

TMSGraphic(): SetRangeY ( < nMin>, < nMax>, < nDelta> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nMin Numérico Valor mínimo do intervalo para o eixo Y. X

nMax Numérico Valor máximo do intervalo para o eixo Y. X

nDelta Numérico Valor de incremento para o intervalo do eixo Y

Observações
Este método não tem efeito para gráficos do tipo GRP_PIE.

Exemplos

oGraphic:SetRangeY(0, 300, 50)

SetTitle

Define a posição do título no gráfico.

Sintaxe

TMSGraphic(): SetTitle ( [ cTitle], [ cTitle2], [ nColor], [ nAligment], [ lFoot] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cTitle Caracter Indica o primeiro título do gráfico.

cTitle2 Caracter Indica o segundo título do gráfico.

nColor Numérico Indica a cor do título. X

nAligment Numérico Indica o alinhamento do título no gráfico, sendo: A_LEFTJUST 1, A_RIGHTJUS 2, X

tdn.totvs.com/display/tec/TMSGraphic 7/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN
A_CENTER 3.

lFoot Lógico Indica se, verdadeiro (.T.), terá título no rodapé do gráfico; caso contrário, falso (.F.).

Observações

Exemplos

oGraphic:SetTitle('Titulo do Grafico', "Data:"+dtoc(Date()), CLR_HRED, A_LEFTJUST, GRP_TITLE )

ZoomIn

Permite aumentar (ZoomIn) uma área interna (+).

Sintaxe

TMSGraphic(): ZoomIn ( ) -->

Observações

Exemplos

oGraphic:ZoomIn()

ZoomOut

Permite diminuir (ZoomOut) uma área externa (-).

Sintaxe

TMSGraphic(): ZoomOut ( ) -->

Observações

Exemplos

oGraphic:ZoomOut()

Propriedade

Propriedade Descrição Tipo

l3D Indica se, verdadeiro (.T.), o gráfico é 3D - tridimensional; caso contrário, falso (.F.). Lógico

lAxisVisib Indica se, verdadeiro (.T.), exibe os eixos do gráfico; caso contrário, falso (.F.). Esta opção esta desabilitada quando a Lógico
série do Gráfico for GRP_PIE(Pizza).

Observações
Objetos da classe TMSGraphic necessitam obrigatoriamente de um cliente gráfico (totvssmartclient e/ou totvssmartclientativex) e não tem efeito
se executado dentro de job.

Exemplos

#include "TOTVS.CH" #include "MSGRAPHI.CH"User Function TMSGraphic() DEFINE DIALOG oDlg TITLE "Exemplo TMSGraphic" FROM 180,180 TO 550,7

Preview

tdn.totvs.com/display/tec/TMSGraphic 8/9
13/09/13 TMSGraphic - Tecnologia TOTVS - TDN
Exemplo da classe TMSGraphic

Abrangência
Microsiga Protheus 8.11 , Microsiga Protheus 11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server

tdn.totvs.com/display/tec/TMSGraphic 9/9

Você também pode gostar