Skip to content
Snippets Groups Projects
Commit 3864243e authored by Johannes Hörmann's avatar Johannes Hörmann
Browse files

translations

parent 45d1fd05
No related branches found
No related tags found
No related merge requests found
import("system.logging");
import("system.datetime");
import("system.db");
import("system.result");
import("system.translate");
import("Data_lib");
// load data
var sumOfMonthTurnover = db.table("select year(SALESORDERDATE) yearNum, 'turnover', month(SALESORDERDATE) monthNum, sum(NET + VAT) from SALESORDER group by year(SALESORDERDATE), month(SALESORDERDATE) order by yearNum, monthNum");
var sumOfMonthForecast = db.table("select year(DATE_START) yearNum, 'forecast', month(DATE_START) monthNum, sum(VOLUME * 1000) from SALESPROJECT_FORECAST group by year(DATE_START), month(DATE_START) order by yearNum, monthNum");
// build chartData
var rootNode = "";
var chartData = ParentingData.begin(rootNode);
var skippedCounts = {};
for (let i = 0; i < 4; i++)
{
// TODO: currently years are hardcoded.
var year = i + 2016;
var turnoverYearSum = 0;
var forecastYearSum = 0;
// filter data by current year
var turnoverYearData = sumOfMonthTurnover.filter(function(row)
{
return row[0] == year
});
var forecastYearData = sumOfMonthForecast.filter(function(row)
{
return row[0] == year
});
for (let i = 1; i <= 12; i++)
{
// add months
turnoverYearSum += _addMonth(year, i, turnoverYearData, "turnover");
forecastYearSum += _addMonth(year, i, forecastYearData, "forecast");
}
// add year nodes
chartData.add("turnover" + year, rootNode, ["turnover", year.toString(), turnoverYearSum]);
chartData.add("forecast" + year, rootNode, ["forecast", year.toString(), forecastYearSum]);
}
result.object(chartData.toArray());
function _addMonth(pYear, pMonth, pData, pCategory)
{
var yearSum = 0;
// count months, which didn't exist in data source.
if (pMonth == 1)
{
skippedCounts[pCategory] = 0;
}
var currentMonthData = pData[pMonth - skippedCounts[pCategory] - 1];
var monthDate = new Date(pYear, pMonth-1);
monthDate = datetime.toDate(monthDate.getTime(), "MMM yyyy", "UTC");
var monthValue = 0.0;
if (currentMonthData != undefined && currentMonthData[2] == pMonth.toString())
{
monthValue = currentMonthData[3];
yearSum += parseInt(currentMonthData[3]);
}
else
{
// if month didn't exist in data source, use 0.0 as value.
skippedCounts[pCategory]++;
}
// add month node
chartData.add(pCategory + pYear + pMonth, pCategory + pYear, [pCategory, monthDate, monthValue]);
return yearSum;
import("system.logging");
import("system.datetime");
import("system.db");
import("system.result");
import("system.translate");
import("Data_lib");
var turnoverCategory = translate.text('Turnover');
var forecastCategory = translate.text('Forecast');
// load data
var sumOfMonthTurnover = db.table("select year(SALESORDERDATE) yearNum, month(SALESORDERDATE) monthNum, sum(NET + VAT) from SALESORDER group by year(SALESORDERDATE), month(SALESORDERDATE) order by yearNum, monthNum");
var sumOfMonthForecast = db.table("select year(DATE_START) yearNum, month(DATE_START) monthNum, sum(VOLUME * 1000) from SALESPROJECT_FORECAST group by year(DATE_START), month(DATE_START) order by yearNum, monthNum");
// build chartData
var rootNode = "";
var chartData = ParentingData.begin(rootNode);
var skippedCounts = {};
for (let i = 0; i < 4; i++)
{
// TODO: currently years are hardcoded.
var year = i + 2016;
var TurnoverYearSum = 0;
var ForecastYearSum = 0;
// filter data by current year
var TurnoverYearData = sumOfMonthTurnover.filter(function(row)
{
return row[0] == year
});
var ForecastYearData = sumOfMonthForecast.filter(function(row)
{
return row[0] == year
});
for (let i = 1; i <= 12; i++)
{
// add months
TurnoverYearSum += _addMonth(year, i, TurnoverYearData, turnoverCategory);
ForecastYearSum += _addMonth(year, i, ForecastYearData, forecastCategory);
}
// add year nodes
chartData.add(turnoverCategory + year, rootNode, [turnoverCategory, year.toString(), TurnoverYearSum]);
chartData.add(forecastCategory + year, rootNode, [forecastCategory, year.toString(), ForecastYearSum]);
}
result.object(chartData.toArray());
function _addMonth(pYear, pMonth, pData, pCategory)
{
var yearSum = 0;
// count months, which didn't exist in data source.
if (pMonth == 1)
{
skippedCounts[pCategory] = 0;
}
var currentMonthData = pData[pMonth - skippedCounts[pCategory] - 1];
var monthDate = new Date(pYear, pMonth-1);
monthDate = datetime.toDate(monthDate.getTime(), "MMM yyyy", "UTC");
var monthValue = 0.0;
if (currentMonthData != undefined && currentMonthData[1] == pMonth.toString())
{
monthValue = currentMonthData[2];
yearSum += parseInt(currentMonthData[2]);
}
else
{
// if month didn't exist in data source, use 0.0 as value.
skippedCounts[pCategory]++;
}
// add month node
chartData.add(pCategory + pYear + pMonth, pCategory + pYear, [pCategory, monthDate, monthValue]);
return yearSum;
}
\ No newline at end of file
......@@ -102,6 +102,10 @@
<key>Online-Meeting</key>
<value>Online-Meeting</value>
</entry>
<entry>
<key>Choose address</key>
<value>Adresse auswählen</value>
</entry>
<entry>
<key>Social Media</key>
<value>Social Media</value>
......
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