Atribuição de IDs a Data Points Alfanuméricos no ScadaBR

Olá,

Estou desenvolvendo uma aplicação no ScadaBR onde preciso criar uma tabela que exibe os funcionários de uma empresa. Para isso, planejo inserir os dados em um Data Point alfanumérico, atribuindo um ID sequencial a cada funcionário: o primeiro teria ID = 1, o segundo ID = 2, e assim por diante.

No entanto, ao utilizar o seguinte comando JavaScript para obter o ID do Data Point:

var id = valor.getSourceId ? valor.getSourceId() : "N/A";

Percebi que o valor retornado é “1” apenas se o Data Point estiver preenchido. Caso contrário, o retorno é “N/A”.

Minha dúvida é: os valores inseridos nos Data Points alfanuméricos possuem um ID interno, similar a uma chave primária em bancos de dados relacionais? Ou seja, existe um identificador único para cada valor inserido, que possa ser utilizado para referenciar ou manipular esses dados de forma eficiente?

Agradeço antecipadamente pela ajuda.

Comando da lista em Script para servidor:

/* Livre para uso sob a licença MIT */

// Quantos valores serão exibidos?
var numero_valores = 10;

// NÃO ALTERE A PARTIR DAQUI

var valores = new com.serotonin.mango.db.dao.PointValueDao();
valores = valores.getLatestPointValues(point.id, numero_valores);

var s = "";
s += "<table class='latestValuesTable'>";
s += "<thead><tr><th>ID</th><th>Valor</th><th>Data e Hora</th></tr></thead>";
s += "<tbody>";

var size = valores.size();
for (var i = 0; i < size; i++) {
    var valor = valores.get(i);
    var id = valor.getSourceId ? valor.getSourceId() : "N/A";
    var dataHora = valor.getTime ? new Date(valor.getTime()).toLocaleString() : "N/A";
    s += "<tr><td>" + id + "</td><td>" + valor.value + "</td><td>" + dataHora + "</td></tr>";
}

s += "</tbody></table>";

s += "<style>";
s += ".latestValuesTable {";
s += "    font-family: 'Trebuchet MS', Arial, Helvetica, sans-serif;";
s += "    border-collapse: collapse;";
s += "    width: 100%;";
s += "    margin-top: 10px;";
s += "    border: 1px solid #000;";
s += "}";
s += ".latestValuesTable th, .latestValuesTable td {";
s += "    padding: 8px;";
s += "    text-align: center;";
s += "    border-bottom: 1px solid #ddd;";
s += "}";
s += ".latestValuesTable th {";
s += "    background-color: #4CAF50;";
s += "    color: white;";
s += "}";
s += ".latestValuesTable tr:nth-child(even) {";
s += "    background-color: #f2f2f2;";
s += "}";
s += ".latestValuesTable tr:hover {";
s += "    background-color: #ddd;";
s += "}";
s += "</style>";

return s;

O link a seguir contém a documentação das classes Java do ScadaBR 1.2, o que pode lhe ajudar a compreender como desenvolver seu código. Vale ressaltar que os scripts do ScadaBR não são “Javascript puro”, mas uma linguagem de script híbrida de Java e Javascript fornecida pela biblioteca Mozilla Rhino.

Dica: não existe um método getSourceId() na classe PointValueTime (seu objeto valor pertence a esta classe).

http://celsoautomacao.com.br/javadoc-scadabr-1.2/