1.6 KiB
Executable File
1.6 KiB
Executable File
description, name, applyTo
| description | name | applyTo |
|---|---|---|
| Use quando editar JavaScript Rhino no DavinTI/Vitruvio (.js) e scripts nos formularios/processos .xml Vitruvio: compatibilidade ES5, padroes de db/query, interop Java, concatenacao SQL/HTML e alteracoes seguras para producao. | Rhino ES5 Vitruvio | **/*.js, **/*.xml |
Rhino ES5 (Vitruvio)
- O runtime e Rhino ES5. Use sempre
var. - Nao use
let,const, template strings, arrow functions, optional chaining ou outros recursos modernos de JS. - Em comparacoes com objetos Java (interop), prefira
==e!=. - Monte SQL/HTML com concatenacao incremental:
var sql = ""; sql += " SELECT ...";
- Prefira APIs/libs padrao da plataforma:
libService.loadScript('db'|'javadateutils'|'util'|...)new db("CONEXAO"),db.queryRow(sql, params),db.query(sql, params).each(function (row) { ... }),db.transaction(function () { ... }),db.executeProcedure(nome, parametros),db.update(sql, params)engine.getField('campo').setValue,engine.getLabel('id').setValue,engine.getWidget('id'),engine.setGlobalVariable('nome', funcao);execution.getVariable/ setVariable,taskService,vFormService,sendMessageToVitruvio({ ... })
db.queryretornanullquando nao ha linhas; se o objeto existir, ja ha ao menos um registro e deve ser percorrido comlista.each(...)(nao usarsize).- Organize helpers internos (formatação de data, filtros, builders de HTML) antes das funcoes expostas (
this.metodo = function () { ... }). - Mantenha nomenclatura e convencoes existentes em portugues.
- Priorize alteracoes minimas e compativeis com producao, evitando refactors amplos.