Skip to content
Snippets Groups Projects
Commit 291d9df1 authored by Tom Lutzenberger's avatar Tom Lutzenberger Committed by Johannes Goderbauer
Browse files

Added upgrade process

parent 8f4e113e
No related branches found
No related tags found
No related merge requests found
<?xml version="1.0" encoding="UTF-8"?>
<process xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.2.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/process/1.2.1">
<name>migrateKeywordContainers</name>
<title>Migrate keyword containers</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<process>%aditoprj%/process/migrateKeywordContainers/process.js</process>
<publishAsWebservice v="true" />
<alias>Data_alias</alias>
<variants>
<element>EXECUTABLE</element>
</variants>
</process>
import("system.db");
import("system.logging");
import("system.util");
import("system.vars");
import("Sql_lib");
import("Util_lib");
var newKeywordContainers = [];
var oldKeywordContainers = newSelect("AB_KEYWORD_ENTRY.CONTAINER")
.from("AB_KEYWORD_ENTRY")
.where("AB_KEYWORD_ENTRY.CONTAINER", newSelect("1")
.from("AB_KEYWORD_CATEGORY")
.where("AB_KEYWORD_CATEGORY.NAME = AB_KEYWORD_ENTRY.CONTAINER")
, SqlBuilder.NOT_EXISTS())
.groupBy("AB_KEYWORD_ENTRY.CONTAINER")
.orderBy("AB_KEYWORD_ENTRY.CONTAINER")
.arrayColumn();
oldKeywordContainers.forEach(function(pElement, pIndex, pArray) {
var columns = ["AB_KEYWORD_CATEGORYID", "NAME", "SORTINGBY", "SORTINGDIRECTION"];
var values = [util.getNewUUID(), pElement, 0, "ASC"];
logging.log(values);
//(new SqlBuilder()).insertData("AB_KEYWORD_CATEGORY", columns, null, values);
});
var keywordUpdateQuery = "UPDATE AB_KEYWORD_ENTRY"
+ "SET AB_KEYWORD_CATEGORY_ID = ("
+ "SELECT AB_KEYWORD_CATEGORYID "
+ "FROM AB_KEYWORD_CATEGORY "
+ "WHERE AB_KEYWORD_CATEGORY.NAME = AB_KEYWORD_ENTRY.CONTAINER"
+ ");"
;
var attributeUpdateQuery = "UPDATE AB_KEYWORD_ATTRIBUTE"
+ "SET AB_KEYWORD_CATEGORY_ID = ("
+ "SELECT AB_KEYWORD_CATEGORYID "
+ "FROM AB_KEYWORD_CATEGORY "
+ "WHERE AB_KEYWORD_CATEGORY.NAME = AB_KEYWORD_ATTRIBUTE.CONTAINER"
+ ");"
;
//logging.log(db.runStatement(keywordUpdateQuery) + " keyword containers updated");
//logging.log(db.runStatement(attributeUpdateQuery) + " attribute containers updated");
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment