//数据导出EXCEL
function data2Excel(o, n)
{
	var fso = null, fldr = null, tmpStr = "", tmpObj = "";

	alert("如果系统提示“是否应用ActiveX”，请选择“是”！");
	var dataTabHTML = "<TABLE id=\"_eDataFrame\" style=\"display:none\">";

	if (o.tagName == "TABLE")
		dataTabHTML += o.children(i).style.display != "none" ? o.innerHTML : "";
	else
		for (var  i = 0; i < o.children.length ; i ++)
			if (o.children(i).tagName == "TABLE" && o.children(i).style.display != "none")
				dataTabHTML += o.children(i).innerHTML;

	dataTabHTML += "</TABLE>";

	document.body.insertAdjacentHTML("afterBegin", dataTabHTML);
	document.body.insertAdjacentHTML("afterBegin", "<OBJECT id=\"_EXPORT_OBJECT\" classid=\"clsid:0002E510-0000-0000-C000-000000000046\" style=\"display:none\"></Object>");
	
	for (var i = 0; i < _eDataFrame.rows.length; i ++)
	{
		for (var j = 0; j < _eDataFrame.rows[i].cells.length; j ++)
		{
			//_eDataFrame.rows[i].cells[j].innerHTML = clearscript(_eDataFrame.rows[i].cells[j].innerHTML);
			for (var k = 0; k < _eDataFrame.rows[i].cells[j].children.length; k ++)
			{

				if (_eDataFrame.rows[i].cells[j].children(k).tagName == "INPUT")
				{
					tmpStr = _eDataFrame.rows[i].cells[j].children(k).value;
					tmpObj = document.createElement("SPAN");
					tmpObj.innerText = tmpStr;
					_eDataFrame.rows[i].cells[j].children(k).replaceNode(tmpObj);
				}
				else if (_eDataFrame.rows[i].cells[j].children(k).face == "webdings" || _eDataFrame.rows[i].cells[j].children(k).style.fontFamily == "webdings")
				{
					_eDataFrame.rows[i].cells[j].children(k).removeNode(true);
				}
			}
		}
	}

	try
	{
		fso = new ActiveXObject("Scripting.FileSystemObject");
		fldr = fso.CreateFolder("C:\\ciec");
	}
	catch(e){}

	with(_EXPORT_OBJECT)
	{
		DataType = "HTMLData";
		HTMLData = _eDataFrame.outerHTML;
		try
		{
			ActiveSheet.Export("C:\\ciec\\" + n + "_" + Get_Cur_DateStr() + ".xls", 0);
			alert('数据导出完毕,数据的格式请到Excel中自行调整!');
		}
		catch (e)
		{
			alert('任务取消或导出数据失败\n[请确认已安装Excel2000(或更高版本),并且没打开同名xls文件]');
		}
	}

	document.body.removeChild(_eDataFrame);
	document.body.removeChild(_EXPORT_OBJECT);
}

/****************************************************
String原型扩展
描述     : 字符串倒转,如入口1234,出口:4321
版本     : 1.0
作者     : ZRM
最新更新   : 2004-04-16
备注     :
****************************************************/
String.prototype.toReverse=function()
{
	var OutStr = "";
	var LoopV = this.length;
	for(LoopV = 0;LoopV < this.length ;LoopV ++)
	{
		OutStr = this.substr(LoopV,1) + OutStr;
	}
	return OutStr;

}
/****************************************************
Number原型扩展
描述     : 四舍五入
版本     : 1.0
作者     : ZRM
最新更新   : 2004-04-16
备注     :
****************************************************/
Number.prototype.toFixed=function()
{
	var DecLen=arguments[0]==null?0:arguments[0];
	if ( isNaN(this)) return 0;
	var add = 0;
	var OutValue,DecTempValue;
	var TempValue = this + "";
	var start = TempValue.indexOf(".");
	if(TempValue.substr(start + DecLen + 1,1)>=5)
		add=1;
	var DecTempValue = Math.pow(10,DecLen);
	OutValue = Math.floor(this * DecTempValue) + add;
	OutValue = String(OutValue/DecTempValue);
	var out1 = "";
	var pos=OutValue.indexOf(".");
	if (pos >= 0 )
	{
		out1 = OutValue.substr(pos +1,DecLen);
		if (out1.length < DecLen)
			for(var loopv = out1.length;loopv<DecLen;loopv ++)
				OutValue = OutValue + '0';
	}
	else
	{
		if (DecLen > 0 )
		{
			OutValue = OutValue + ".";
			for(var loopv = 0;loopv<DecLen;loopv ++)
			{
				OutValue = OutValue + '0';
			}
		}
	}
	return OutValue;

}
/****************************************************
Number原型扩展
描述     : 以,格式化数字
版本     : 1.0
作者     : ZRM
最新更新   : 2004-04-16
备注     :
****************************************************/
Number.prototype.toFormat=function()
{

	var ParseF;
	var Old_Value;
	var OutStr="";
	var Dpos = 0;
	var IntergerValue = "";
	var DeciamlValue = "";
	var LoopV = this.length;
	Old_Value=this.valueOf();
	if (arguments[0]==null) //不需要格式化小数点后得数值
	{
		Old_Value=this.valueOf();
	}
	else					//需要格式化小数点后得数值,调用四舍五入方法,格式化数据
  {
		ParseF=arguments[0];
		Old_Value = Old_Value.toFixed(ParseF)
	}
	if (isNaN(Old_Value)) 
		return "";
	Old_Value = Old_Value.toString();
	Dpos = Old_Value.indexOf(".")
	if (Dpos !=-1 )
	{
		IntergerValue = Old_Value.substring(0,Dpos);
		DeciamlValue = Old_Value.substring(Dpos,Old_Value.length);
	}
	else
	{
		IntergerValue = Old_Value;
		DeciamlValue = "";
	}
	IntergerValue = IntergerValue.toReverse()

	for(LoopV = 0;LoopV < IntergerValue.length ;LoopV=LoopV + 3)
	{
		OutStr = OutStr + IntergerValue.substr(LoopV,3) + ",";
	}

	OutStr = OutStr.substring(0,OutStr.length - 1);
	OutStr = OutStr.toReverse() + DeciamlValue;
	return OutStr;
}
/****************************************************
Number原型扩展
描述     : 转换汉字金额
版本     : 1.0
作者     : ZRM
最新更新   : 2004-04-16
备注     :
****************************************************/
Number.prototype.toChineseNumber=function()
{
	numberValue = this.toFixed(2);
	var numberValue=new String(Math.round(numberValue*100).toFixed(2)); // 数字金额
	var chineseValue="";     // 转换后的汉字金额
	var String1 = "零壹贰叁肆伍陆柒捌玖";    // 汉字数字
	var String2 = "万仟佰拾亿仟佰拾万仟佰拾元角分";   // 对应单位
	var len=numberValue.length;     // numberValue 的字符串长度
	var Ch1;       // 数字的汉语读法
	var Ch2;       // 数字位的汉字读法
	var nZero=0;      // 用来计算连续的零值的个数
	var String3;      // 指定位置的数值
	if(len>15)
		return "undefined";
	if (numberValue==0)
		return "零元整";
	String2 = String2.substr(String2.length-len, len);  // 取出对应位数的STRING2的值
	for(var i=0; i<len; i++)
	{

		String3 = parseInt(numberValue.substr(i, 1),10);  // 取出需转换的某一位的值
		if ( i != (len - 3) && i != (len - 7) && i != (len - 11) && i !=(len - 15) )
		{
			if ( String3 == 0 )
			{
				Ch1 = "";
				Ch2 = "";
				nZero = nZero + 1;

			}
			else if ( String3 != 0 && nZero != 0 )
			{
				Ch1 = "零" + String1.substr(String3, 1);
				Ch2 = String2.substr(i, 1);
				nZero = 0;
			}
			else
			{
				Ch1 = String1.substr(String3, 1);
				Ch2 = String2.substr(i, 1);
				nZero = 0;
			}
		}
		else
		{       // 该位是万亿，亿，万，元位等关键位
			if( String3 != 0 && nZero != 0 )
			{
				Ch1 = "零" + String1.substr(String3, 1);
				Ch2 = String2.substr(i, 1);
				nZero = 0;
			}
			else if ( String3 != 0 && nZero == 0 )
			{
				Ch1 = String1.substr(String3, 1);
				Ch2 = String2.substr(i, 1);
				nZero = 0;
			}
			else if( String3 == 0 && nZero >= 3 )
			{
				Ch1 = "";
				Ch2 = "";
				nZero = nZero + 1;
			}
			else
			{
				Ch1 = "";
				Ch2 = String2.substr(i, 1);
				nZero = nZero + 1;
			}
			if( i == (len - 11) || i == (len - 3)) // 如果该位是亿位或元位，则必须写上
				Ch2 = String2.substr(i, 1);
		}
		chineseValue = chineseValue + Ch1 + Ch2;
	}
	if ( String3 == 0 )     // 最后一位（分）为0时，加上“整”
		chineseValue = chineseValue + "整";
	return chineseValue;
}
/****************************************************
Number原型扩展
描述     : 阶乘
版本     : 1.0
作者     : ZRM
最新更新   : 2004-04-16
备注     :
****************************************************/

Number.prototype.fact=function()
{
	var num = Math.floor(this);
	if(num<0)
		return 0;
	if(num==0 || num==1)
		return 1;
	else
		return (num*(num-1).fact());
}

String.prototype.wordNoWrap = function()
{
	var out;
	out = this.toLowerCase().replaceWith("<br>","");
	out = this.replace(/\r\n/g,"");;
	return out;
}
String.prototype.replaceWith = function(rep_str,rep_withstr)
{
	var reg ="/" + rep_str + "/g";
    	var out = this.replace(eval(reg), rep_withstr);
    	return out;
}

function clearscript(strvvv){
	strvvv = strvvv.wordNoWrap();
	var posbegin = 0;
	var posend = 0;
	posend = strvvv.toLowerCase().indexOf("</script>")
	if (posend != -1)
	{
		posend = posend + String("</script>").length;
	 	strvvv=strvvv.substr(posend);
	 	return strvvv;
	 }
	else
	 return strvvv;
	
	
	
	
}