Efetua a conversão dos dados das temp-tables passadas como parâmetro para um objeto JSON, no formato esperado pelo painel do Gestão à vista.
Obrigatória: Somente para monitores que possuem opção do tipo Gráfico.
Métodos
Construtor
Método chamado durante a instanciação da classe. Sempre será o primeiro método invocado.
Parâmetros
Nome | Direção | Tipo | Descrição |
---|---|---|---|
ttVisaoMonitor | INPUT | Temp-Table | Temp-Table contendo as informações do monitor na visão em que está sendo carregado. |
Exemplo de chamada
USING cdp.services.gestaoavista.*. //Definir no topo do programa DEFINE VARIABLE ChartBuilder AS ChartBuilder NO-UNDO. ChartBuilder = NEW ChartBuilder(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.
Parâmetros
Nome | Direção | Tipo | Descrição |
---|---|---|---|
ttTags | INPUT | Temp-Table | Temp-Table contendo os registros de cada tag a ser exibida. |
Exemplo de chamada
CREATE ttTags. ASSIGN ttTags.valor = "Tag de Exemplo" ttTags.icone = "po-icon-calendar" ttTags.cor-texto = "#f5f5f5" ttTags.cor-tag = "#080707". ChartBuilder:setTags(INPUT TABLE ttTags).
setCategories
Recebe a temp-table ttCategorias, responsável pelas descrições que serão plotados no eixo X do gráfico caso seja do tipo colunas, ou então no eixo Y do grid de gráficos dos tipos barras e linhas.
Parâmetros
Nome | Direção | Tipo | Descrição |
---|---|---|---|
ttCategorias | INPUT | Temp-Table | Temp-Table contendo os registros das categorias que irão compor o gráfico. |
Exemplo de chamada
CREATE ttCategorias. ASSIGN ttCategorias.nome = "Janeiro". CREATE ttCategorias. ASSIGN ttCategorias.nome = "Fevereiro". CREATE ttCategorias. ASSIGN ttCategorias.nome = "Março". ChartBuilder:setCategories(INPUT TABLE ttCategorias).
setSeries
Recebe a ttSeries, que são os objetos de série do gráfico, representando as colunas/fatias/linhas conforme o tipo de gráfico.
Parâmetros
Nome | Direção | Tipo | Descrição |
---|---|---|---|
ttSeries | INPUT | Temp-Table | Temp-Table contendo os registros das séries que irão compor o gráfico. |
Exemplo de chamada
CREATE ttSeries. ASSIGN ttSeries.titulo = "Estabelecimento 1" ttSeries.valor = "30" ttSeries.cor = "#A0B9BF". CREATE ttSeries. ASSIGN ttSeries.titulo = "Estabelecimento 2" ttSeries.valor = "100" ttSeries.cor = "#007acc". ChartBuilder:setSeries(INPUT TABLE ttSeries).
setHeight
Método que determina a altura total do gráfico em pixels. Por padrão, os gráficos possuem a altura de 290px, que pode ser alterada através desse método.
Parâmetros
Nome | Direção | Tipo | Descrição |
---|---|---|---|
altura | INPUT | DECIMAL | Valor de altura que o gráfico irá assumir. |
Exemplo de chamada
ChartBuilder:setHeight(INPUT 350).
createChart
Método que transforma todos os dados das temp-tables ttSeries, ttCategorias 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 tenham sido carregados através dos métodos setSeries, setCategories etc.
Parâmetros
Nome | Direção | Tipo | Descrição |
---|---|---|---|
oChartOutput | OUTPUT | JsonObject | Objeto JSON representando o gráfico que será apresentado ao usuário |
Exemplo de chamada
PROCEDURE pi-get-monitor-data-chart: DEFINE INPUT PARAMETER TABLE FOR ttVisaoMonitor. DEFINE OUTPUT PARAMETER oOutput AS JsonObject. DEFINE OUTPUT PARAMETER TABLE FOR RowErrors. <...Criação das temp-tables, chamada dos métodos de set...> oOutput = ChartBuilder:createChart(). END PROCEDURE.