Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Tip |
---|
Este controle wpf WPF foi desenvolvido com o intuito de apresentar um gráfico de barras com linha. |
Apresentação
O controle BarAndSplineCustomChart é um gráfico customizado desenvolvido para apresentar valores de histórico de uma determinada tag no formato de colunas e com linha que toca os valores de histórico no gráfico.
Image RemovedImage Added
Como usar
Requisitos mínimos
Action.Net versão 9.2.28.1 ou posterior;
Configuração
Inserir o arquivo “SPIN.ActionNet.View.Wpf.Charts.dll” na pasta WpfControls da instalação (normalmente em “C:\Program Files (x86)\SPIN\Action.Net\an-x.x\WpfControls\”) caso o mesmo não exista.
Abrir o projeto do Action.Net onde o controle será utilizado;
Na aba “Draw”, escolher a página onde o controle será utilizado;
Na barra lateral de ferramentas, escolher o item “Insert Component”;
Ao abrir a tela de seleção de componentes, selecionar o controle BarAndSplineCustomChart;
Inserir o controle na tela e dimensioná-lo.
Selecionar o controle e inserir um Uid para o mesmo. É este que será utilizado no code-behind para passar os dados ao gráfico.
Configurar o código no code-behind da tela:
Inicialmente, é necessário acessar o controle a partir do seu Uid. Para pegar uma referência do controle para utilizá-lo, utilize o script a seguir:
Paste code macro | ||
---|---|---|
| ||
SPIN.ActionNet.View.Wpf.Charts.BarAndSplineCustomChart barAndSplineCustomChart1 = this.CurrentDisplay.GetControl("barAndSplineCustomChart1") as SPIN.ActionNet.View.Wpf.Charts.BarAndSplineCustomChart; if(barAndSplineCustomChart1 != null){ //... code goes here } |
Em seguida, os dados precisam ser passados para o controle. O mesmo dispõe de uma função para a passagem dos dados a partir de um datatable para o controle. Sua assinatura pode ser conferida abaixo:
Paste code macro | ||
---|---|---|
| ||
public void ApplyHistorianData(string tagName, DataTable histValues){} |
Onde:
tagName: refere-se ao tag de pesquisa. Este parâmetro é usado para o Header do gráfico.
histValues: refere-se a uma tabela cujo formato consiste na primeira coluna com valores compatíveis com o tipo DateTime e a segunda coluna com valores compatíveis com os tipos float ou double.
Esta função pode ser chamada de como mostrado abaixo:
Paste code macro | ||
---|---|---|
| ||
string tagName = @"SE01\TR01\tag1.MED.MW"; DataTable result = GetHistorianMeasures(tagName); if(result != null && result.Rows.Count > 0) barAndSplineCustomChart1.ChartControl.ApplyHistorianData(tagName, result); |
Note |
---|
Atenção: É extremamente importante que a tabela siga o formato esperado com duas colunas, sendo:
Tabelas não compatíveis com este formato podem trazer consequências inesperadas ao gráfico. |
Esta aplicação específica do exemplo utilizou o Spin toolkit para pesquisa de medidas de um determinado período (últimos 10 dias). O código completo para esta aplicação pode ser verificado abaixo:
Paste code macro | ||||
---|---|---|---|---|
| ||||
using SPIN.ActionNet.View.Wpf.Charts; public void DisplayOpening() { } public void DisplayIsOpen() { } public void DisplayClosing() { } ////This method is only called on Dialog displays public bool DialogOnOK() { return true; } public DataTable GetHistorianMeasures(string tagName){ DataTable result = null; try{ DateTime startDate = DateTime.Now.AddDays(-10); result = @Script.Class.CustomMeasures.GetMeasures(tagName, startDate, DateTime.Now, 10); } catch(Exception ex){ @Info.Trace(ex.Message); } return result; } public void ButGetSampleData_Click(object sender, System.Windows.Input.InputEventArgs e) { SPIN.ActionNet.View.Wpf.Charts.BarAndSplineCustomChart barAndSplineCustomChart1 = this.CurrentDisplay.GetControl("barAndSplineCustomChart1") as SPIN.ActionNet.View.Wpf.Charts.BarAndSplineCustomChart; if(barAndSplineCustomChart1 != null){ string tagName = @"SE01\TR01\tag1.MED.MW"; DataTable result = GetHistorianMeasures(tagName); if(result != null && result.Rows.Count > 0) barAndSplineCustomChart1.ChartControl.ApplyHistorianData(tagName, result); } } |
Paste code macro | ||||
---|---|---|---|---|
| ||||
using SPIN.ActionNet.Biz.Toolkit.Reports; using System.Threading.Tasks; public DataTable GetMeasures(string tagName, DateTime startDate, DateTime endDate, int interval) { List<string> tagNames = new List<string>(); tagNames.Add(tagName); DataTable result = Measures.GetReport(tagNames,startDate, endDate, interval); return result; } |
Nesta pagina:
|
Membros de BarAndSplineCustomChart
No controle foram expostas aos usuários algumas propriedades e métodos para uso do gráfico. Nas tabelas a seguir, é possível visualizar os nomes das propriedades e dos métodos e suas descrições:
Propriedades
Nome | Descrição |
---|---|
TagName | Nome da tag a qual o gráfico se refere. Este nome será mostrado no cabeçalho do gráfico |
HistValues | Lista observável de objetos do tipo HistorianValues que contém informações de valor e Timestamp da tag |
XAxisLabelFormat | Corresponde ao formato do texto desejado para o label do eixo X. Este é o eixo de data / hora. O formato padrão para esta propriedade é “MMM-dd HH:mm”. |
XAxisLabelRotationAngle | Corresponde ao ângulo de rotação desejado para o label do eixo X. Deve-se passar valores de -360 a 360. |
YAxisLabelFormat | Corresponde ao formato do texto desejado para o label do eixo Y. Este é o Eixo de valores. O formato padrão para esta propriedade é “N0”. |
YAxisLabelRotationAngle | Corresponde ao ângulo de rotação desejado para o label do eixo Y. Deve-se passar valores de -360 a 360. |
Métodos
Nome | Descrição |
---|---|
ApplyHistorianData(string, DataTable) | Método que transforma os parâmetros passados em linhas e colunas do gráfico e aplica estas informações ao gráfico. Parâmetros tagName: refere-se ao tag de pesquisa. Este parâmetro é usado para o Header do gráfico. histValues: refere-se a uma tabela cujo formato consiste na primeira coluna com valores compatíveis com o tipo DateTime e a segunda coluna com valores compatíveis com os tipos float ou double |
Scroll ignore | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
Nesta página: |