-
Johannes Goderbauer authoredJohannes Goderbauer authored
onValidation.js 886 B
import("system.db");
import("system.vars");
import("system.text");
import("system.neon");
import("Sql_lib");
//TODO: this should no happen in onValidation; waiting for #1032668
if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
{
var keyContainer = vars.get("$field.CONTAINER");
if (keyContainer)
{
var cond = SqlCondition.begin().andPrepare("AB_KEYWORD_ENTRY.CONTAINER", keyContainer);
var maskingHelper = new SqlMaskingUtils();
var newCodeNumber = db.cell(cond.buildSql("select " + maskingHelper.max("AB_KEYWORD_ENTRY.SORTING") + " from AB_KEYWORD_ENTRY", "1 = 2"));
newCodeNumber = Number(newCodeNumber);//if no number exists till no, start value will be 1 (due to: ++0)
if (isNaN(newCodeNumber))
throw new TypeError();//TODO:add Message
neon.setFieldValue("$field.SORTING", ++newCodeNumber);
}
}