Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Obrigatória: Somente para monitores que possuem opção do tipo Texto.

Métodos

Construtor

Método chamado durante a instanciação da classe. Sempre será o primeiro método invocado.

...

Bloco de código
USING cdp.services.gestaoavista.*. //Definir no topo do programa

DEFINE VARIABLE InfoBuilder AS InfoBuilder NO-UNDO.   

InfoBuilder = NEW InfoBuilder(INPUT TABLE ttVisaoMonitor). 


setTags

Recebe a temp-table ttTags, que contém as definições das Tags que serão exibidas abaixo do título do monitor. Tags são pequenos rótulos coloridos que são úteis para destacar detalhes importantes.

...

Bloco de código
CREATE ttTags.
ASSIGN ttTags.valor      = "Tag de Exemplo"
       ttTags.icone      = "po-icon-calendar"
       ttTags.cor-texto  = "#f5f5f5"
       ttTags.cor-tag    = "#080707".

ChartBuilderInfoBuilder:setTags(INPUT TABLE ttTags).


setParameters

Recebe a temp-table ttMonitorMetadados, que contém as configurações gerais do monitor, como cor de fundo, cor do título dentre outras.

...

Bloco de código
CREATE ttMonitorMetadados.
ASSIGN ttMonitorMetadados.cor-titulo = "#FFFFFF"          
       ttMonitorMetadados.cor-fundo = "#007acc".            

ChartBuilderInfoBuilder:setParameters(INPUT TABLE ttMonitorMetadados).


setLines

Recebe a ttMonitorInfoLinha, que são as linhas que irão compor o conteúdo do monitor. 

...

Bloco de código
DEFINE VARIABLE oStyle       AS JsonObject  NO-UNDO.

oStyle = NEW JsonObject().
oStyle:ADD("color", "#FFFFFF"). //Colocar no formato "nomeDaPropriedade", "valorDaPropriedade"
oStyle:ADD("height", "100px").
    
/*Cada registro criado na ttMonitorInfoLinha será renderizado no monitor como um "bloco", que pode conter textos, imagens, ícones e outros. */
    
CREATE ttMonitorInfoLinha.
ASSIGN ttMonitorInfoLinha.texto = "Linha 1"
       ttMonitorInfoLinha.icone = "po-icon-clear-content"
       ttMonitorInfoLinha.style-texto = STRING(oStyle:GetJsonText())
       ttMonitorInfoLinha.classe-texto = "po-font-title po-text-center po-sm-12 po-p-1 bold-text".

InfoBuilder:setLines(INPUT TABLE ttMonitorInfoLinha).


createMonitor

Método que transforma todos os dados das temp-tables ttSeries ttMonitorMetadados, ttCategorias ttMonitorInfoLinha e ttTags em um objeto JSON, já formatado seguindo o padrão utilizado pelo painel do Gestão à Vista. Esse JSON deverá ser retornado pela API de negócio para ser processado e apresentado ao usuário final. Só deve ser invocado depois que os dados do gráfico monitor tenham sido carregados através dos métodos setSeries, setCategories etcdo método setLines.


Parâmetros

NomeDireçãoTipo Descrição

oChartOutputoInfoOutput

OUTPUTJsonObjectObjeto JSON representando o gráfico monitor que será apresentado ao usuário

...

Bloco de código
PROCEDURE pi-get-monitor-data-chartinfo:
    DEFINE INPUT  PARAMETER TABLE FOR ttVisaoMonitor.
    DEFINE OUTPUT PARAMETER oOutputoInfoOutput AS JsonObject.   
    DEFINE OUTPUT PARAMETER TABLE FOR RowErrors.    

    <...Criação das temp-tables, chamada dos métodos de set...>

    oOutput oInfoOutput = ChartBuilderInfoBuilder:createChartcreateMonitor(). 

END PROCEDURE.