提交 0fd00537 编写于 作者: HQChart's avatar HQChart

ver 7202

7202 增加 周期计算外部接口 DataPlus.GetMinutePeriodData
上级 4002b1f3
......@@ -8658,6 +8658,15 @@ function KLineInfoData()
this.ExtendData; //扩展数据
}
function DataPlus () { }; //外部数据计算方法接口
DataPlus.GetMinutePeriodData=null;
/*
DataPlus.GetMinutePeriodData=function(period,data,self)
{
}
*/
function ChartData()
{
this.Data=new Array();
......@@ -8889,6 +8898,8 @@ function ChartData()
//计算分钟
this.GetMinutePeriodData=function(period)
{
if (DataPlus.GetMinutePeriodData) return DataPlus.GetMinutePeriodData(period,this.Data,this);
var result = new Array();
var periodDataCount = 5;
if (period == 5)
......@@ -19402,6 +19413,7 @@ var STRING_FORMAT_TYPE =
{
DEFAULT: 1, //默认 2位小数 单位自动转化 (万 亿)
ORIGINAL:2, //原始数据
INTEGER:3, //整形数据输出 如果不是整形使用 DEFAULT
THOUSANDS:21, //千分位分割
};
......@@ -19437,6 +19449,8 @@ function DynamicChartTitlePainting()
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
return value.toFixed(item.FloatPrecision).toString();
else if (item.StringFormat==STRING_FORMAT_TYPE.INTEGER)
return IFrameSplitOperator.FromatIntegerString(value,item.FloatPrecision,this.LanguageID);
}
this.FormatMultiReport=function(data,format)
......@@ -42588,6 +42602,32 @@ function JSAlgorithm(errorHandler,symbolData)
return result;
}
//CON2STR(A,N):取A最后的值(非序列值)转为字符串,小数位数N.
//用法: CON2STR(FINANCE(20),3)表示取营业收入,以3位小数转为字符串
this.CON2STR=function(data,n)
{
var result=[];
if (Array.isArray(data))
{
for(var i=data.length-1 ; i>=0; --i)
{
var item=data[i];
if (IFrameSplitOperator.IsNumber(item))
{
result=item.toFixed(n);
return result;
}
}
}
else
{
if (IFrameSplitOperator.IsNumber(data))
result=data.toFixed(n);
}
return result;
}
//函数调用
this.CallFunction=function(name,args,node,symbolData)
{
......@@ -42718,6 +42758,8 @@ function JSAlgorithm(errorHandler,symbolData)
return this.BETWEEN(args[0], args[1], args[2]);
case 'STRCAT':
return this.STRCAT(args[0], args[1]);
case 'CON2STR':
return this.CON2STR(args[0], args[1]);
//三角函数
case 'ATAN':
return this.Trigonometric(args[0],Math.atan);
......@@ -46579,7 +46621,11 @@ function JSExecute(ast,option)
let assignmentItem=item.Expression;
let varName=assignmentItem.Left.Name;
let outVar=this.VarTable.get(varName);
if (!this.IsSectionMode && !Array.isArray(outVar)) outVar=this.SingleDataToArrayData(outVar);
if (!this.IsSectionMode && !Array.isArray(outVar))
{
if (typeof(outVar)=='string') outVar=this.SingleDataToArrayData(parseFloat(outVar));
else outVar=this.SingleDataToArrayData(outVar);
}
this.OutVarTable.push({Name:varName, Data:outVar,Type:0});
}
......@@ -5340,6 +5340,15 @@ function KLineInfoData()
this.ExtendData; //扩展数据
}
function DataPlus () { }; //外部数据计算方法接口
DataPlus.GetMinutePeriodData=null;
/*
DataPlus.GetMinutePeriodData=function(period,data,self)
{
}
*/
function ChartData()
{
this.Data=new Array();
......@@ -5571,6 +5580,8 @@ function ChartData()
//计算分钟
this.GetMinutePeriodData=function(period)
{
if (DataPlus.GetMinutePeriodData) return DataPlus.GetMinutePeriodData(period,this.Data,this);
var result = new Array();
var periodDataCount = 5;
if (period == 5)
......@@ -16084,6 +16095,7 @@ var STRING_FORMAT_TYPE =
{
DEFAULT: 1, //默认 2位小数 单位自动转化 (万 亿)
ORIGINAL:2, //原始数据
INTEGER:3, //整形数据输出 如果不是整形使用 DEFAULT
THOUSANDS:21, //千分位分割
};
......@@ -16119,6 +16131,8 @@ function DynamicChartTitlePainting()
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
return value.toFixed(item.FloatPrecision).toString();
else if (item.StringFormat==STRING_FORMAT_TYPE.INTEGER)
return IFrameSplitOperator.FromatIntegerString(value,item.FloatPrecision,this.LanguageID);
}
this.FormatMultiReport=function(data,format)
......@@ -8699,6 +8699,15 @@ function KLineInfoData()
this.ExtendData; //扩展数据
}
function DataPlus () { }; //外部数据计算方法接口
DataPlus.GetMinutePeriodData=null;
/*
DataPlus.GetMinutePeriodData=function(period,data,self)
{
}
*/
function ChartData()
{
this.Data=new Array();
......@@ -8930,6 +8939,8 @@ function ChartData()
//计算分钟
this.GetMinutePeriodData=function(period)
{
if (DataPlus.GetMinutePeriodData) return DataPlus.GetMinutePeriodData(period,this.Data,this);
var result = new Array();
var periodDataCount = 5;
if (period == 5)
......@@ -19443,6 +19454,7 @@ var STRING_FORMAT_TYPE =
{
DEFAULT: 1, //默认 2位小数 单位自动转化 (万 亿)
ORIGINAL:2, //原始数据
INTEGER:3, //整形数据输出 如果不是整形使用 DEFAULT
THOUSANDS:21, //千分位分割
};
......@@ -19478,6 +19490,8 @@ function DynamicChartTitlePainting()
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
return value.toFixed(item.FloatPrecision).toString();
else if (item.StringFormat==STRING_FORMAT_TYPE.INTEGER)
return IFrameSplitOperator.FromatIntegerString(value,item.FloatPrecision,this.LanguageID);
}
this.FormatMultiReport=function(data,format)
......@@ -42629,6 +42643,32 @@ function JSAlgorithm(errorHandler,symbolData)
return result;
}
//CON2STR(A,N):取A最后的值(非序列值)转为字符串,小数位数N.
//用法: CON2STR(FINANCE(20),3)表示取营业收入,以3位小数转为字符串
this.CON2STR=function(data,n)
{
var result=[];
if (Array.isArray(data))
{
for(var i=data.length-1 ; i>=0; --i)
{
var item=data[i];
if (IFrameSplitOperator.IsNumber(item))
{
result=item.toFixed(n);
return result;
}
}
}
else
{
if (IFrameSplitOperator.IsNumber(data))
result=data.toFixed(n);
}
return result;
}
//函数调用
this.CallFunction=function(name,args,node,symbolData)
{
......@@ -42759,6 +42799,8 @@ function JSAlgorithm(errorHandler,symbolData)
return this.BETWEEN(args[0], args[1], args[2]);
case 'STRCAT':
return this.STRCAT(args[0], args[1]);
case 'CON2STR':
return this.CON2STR(args[0], args[1]);
//三角函数
case 'ATAN':
return this.Trigonometric(args[0],Math.atan);
......@@ -46620,7 +46662,11 @@ function JSExecute(ast,option)
let assignmentItem=item.Expression;
let varName=assignmentItem.Left.Name;
let outVar=this.VarTable.get(varName);
if (!this.IsSectionMode && !Array.isArray(outVar)) outVar=this.SingleDataToArrayData(outVar);
if (!this.IsSectionMode && !Array.isArray(outVar))
{
if (typeof(outVar)=='string') outVar=this.SingleDataToArrayData(parseFloat(outVar));
else outVar=this.SingleDataToArrayData(outVar);
}
this.OutVarTable.push({Name:varName, Data:outVar,Type:0});
}
......@@ -5340,6 +5340,15 @@ function KLineInfoData()
this.ExtendData; //扩展数据
}
function DataPlus () { }; //外部数据计算方法接口
DataPlus.GetMinutePeriodData=null;
/*
DataPlus.GetMinutePeriodData=function(period,data,self)
{
}
*/
function ChartData()
{
this.Data=new Array();
......@@ -5571,6 +5580,8 @@ function ChartData()
//计算分钟
this.GetMinutePeriodData=function(period)
{
if (DataPlus.GetMinutePeriodData) return DataPlus.GetMinutePeriodData(period,this.Data,this);
var result = new Array();
var periodDataCount = 5;
if (period == 5)
......@@ -16084,6 +16095,7 @@ var STRING_FORMAT_TYPE =
{
DEFAULT: 1, //默认 2位小数 单位自动转化 (万 亿)
ORIGINAL:2, //原始数据
INTEGER:3, //整形数据输出 如果不是整形使用 DEFAULT
THOUSANDS:21, //千分位分割
};
......@@ -16119,6 +16131,8 @@ function DynamicChartTitlePainting()
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
return value.toFixed(item.FloatPrecision).toString();
else if (item.StringFormat==STRING_FORMAT_TYPE.INTEGER)
return IFrameSplitOperator.FromatIntegerString(value,item.FloatPrecision,this.LanguageID);
}
this.FormatMultiReport=function(data,format)
......@@ -5340,6 +5340,15 @@ function KLineInfoData()
this.ExtendData; //扩展数据
}
function DataPlus () { }; //外部数据计算方法接口
DataPlus.GetMinutePeriodData=null;
/*
DataPlus.GetMinutePeriodData=function(period,data,self)
{
}
*/
function ChartData()
{
this.Data=new Array();
......@@ -5571,6 +5580,8 @@ function ChartData()
//计算分钟
this.GetMinutePeriodData=function(period)
{
if (DataPlus.GetMinutePeriodData) return DataPlus.GetMinutePeriodData(period,this.Data,this);
var result = new Array();
var periodDataCount = 5;
if (period == 5)
......@@ -16084,6 +16095,7 @@ var STRING_FORMAT_TYPE =
{
DEFAULT: 1, //默认 2位小数 单位自动转化 (万 亿)
ORIGINAL:2, //原始数据
INTEGER:3, //整形数据输出 如果不是整形使用 DEFAULT
THOUSANDS:21, //千分位分割
};
......@@ -16119,6 +16131,8 @@ function DynamicChartTitlePainting()
return IFrameSplitOperator.FormatValueThousandsString(value,item.FloatPrecision);
else if (item.StringFormat==STRING_FORMAT_TYPE.ORIGINAL)
return value.toFixed(item.FloatPrecision).toString();
else if (item.StringFormat==STRING_FORMAT_TYPE.INTEGER)
return IFrameSplitOperator.FromatIntegerString(value,item.FloatPrecision,this.LanguageID);
}
this.FormatMultiReport=function(data,format)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册