//将xml数据源转化为html的表格
function Xml2HtmlTable(xmldos){
	var root = xmldos.documentElement;
	var ncnt = root.childNodes.length;
	var i;
	var tmpstr = "";
	var cnode;
	
	tmpstr = tmpstr + "<table";
	tmpstr = tmpstr + GetNodeAttributes(root);
	tmpstr = tmpstr + ">"
	
	for (i = 0;i <= ncnt - 1;i++){
		cnode = root.childNodes.item(i);
		
		tmpstr = tmpstr + XmlRow2TableRow(cnode);
	}
	
	tmpstr = tmpstr + "</table>";
	
	return tmpstr ;
}

//将xml的行转为tablerow
function XmlRow2TableRow(xmlnode){
	var i;
	var tmpstr = "";
	var ncnt = xmlnode.childNodes.length;
	var cnode;
	
	tmpstr = tmpstr + "<tr";
	tmpstr = tmpstr + GetNodeAttributes(xmlnode);
	tmpstr = tmpstr + ">"
	
	for (i = 0;i <= ncnt - 1;i++){
		cnode = xmlnode.childNodes.item(i);
		tmpstr = tmpstr + XmlCell2TableCell(cnode);
	}
	
	tmpstr = tmpstr + "</tr>";
	
	return tmpstr ;
}

//将xmlcell转为tablecell
function XmlCell2TableCell(xmlnode){
	var tmpstr, nodeText,vstr;
	tmpstr = "";
	
	nodeText = xmlnode.xml;
	nodeText = FilterCellSign(nodeText);
	
	tmpstr = tmpstr + "<td";
	tmpstr = tmpstr + GetNodeAttributes(xmlnode);
	tmpstr = tmpstr + ">"
	
	if (GetNodeAttrByTagName(xmlnode,"IngaEncoded") == "true"){
		vstr = IngaDecode(nodeText,0);
	}
	else{
		vstr = nodeText;
	}
	
	if (vstr == ""){
		vstr = "&nbsp;";
	}
	
	tmpstr = tmpstr + vstr + "</td>";
	
	return tmpstr ;
}

//取给定的xml节点的所有属性
function GetNodeAttributes(xmlnode){
	var i,acnt;
	acnt = xmlnode.attributes.length;
	var tmpstr = " ";
	
	for (i = 0;i <= acnt-1 ;i++){
		tmpstr = tmpstr + xmlnode.attributes.item(i).xml + " ";
	}
	
	return tmpstr ;
}

//取给定节点属性名称的值 
function GetNodeAttrByTagName(xmlnode,tagName){
	var i,acnt;
	acnt = xmlnode.attributes.length;
	var tmpstr = "";
	
	for (i = 0;i <= acnt-1 ;i++){
		tmpstr = xmlnode.attributes.item(i).xml;
		
		if (tmpstr.indexOf(tagName) >= 0 ){
			tmpstr = xmlnode.attributes.item(i).value;
		}
	}
	return tmpstr ;	
}

//滤去字符串中的xml的标记
function FilterCellSign(str){
	var i,j;
	var tmpstr;
	tmpstr = str; 
	
	i = str.indexOf(">");
	
	if (i > 0) {
		j = str.indexOf("</cell>",i + 1);
		tmpstr = str.substring(i + 1, j );
	}
		
	return tmpstr ;
}

//过滤特殊字符
function ConvertSpeChr(str)
{
	if (str=="")
	{
		return str;
	}
	//单引号
	str = str.replace(/'/g,"‘");
	//＆符
	str = str.replace(/&/g,"＆");
	//小于号
	str = str.replace(/</g,"＜");
	//大于号
	str = str.replace(/>/g,"＞");
	
	return str;
}
//为防止arp病毒在服务器上传回的数据加入无用代码，造成数据错误
function GetPureData(str)
{
	var start,end;
	
	start = str.indexOf("<ingaresData>");
	if (start < 0)
	{
		return str;
	}
	
	end = str.indexOf("</ingaresData>",start);
	if (end < 0)
	{
		return str;
	}
	
	str = str.substring(start + 13,end);

	return str;
}
  
//取所有接收者的公钥拼接到一个串中
function GetRecePubkey(cid,uid){
	var IngaInet = new ActiveXObject("ingabs.net.1");
	//取所有接收者的公钥
	var pubkeys;
	pubkeys = IngaInet.HttpGet(GetHrefUrl() + "/soa_getsendercon.aspx?lb=pubkeys&gwid=0&fwcid=" + cid + "&userids=" + uid);
	if (IngaInet.status != 200){
		alert("取接收信息用户"+uid+"所在CID为"+cid+"的公钥数据时失败" + IngaInet.status) ;
		return "" ;
	}
	else{
		pubkeys = GetPureData(pubkeys);
		//取返回值的前12位是否是IngaZHCerror
		if (pubkeys.substr(0,12) == "IngaZHCerror") {
			alert(pubkeys.substring(12,pubkeys.length));
			return "";
		}
	}
	return pubkeys.split("%%%");
}

//取接收者所在CID的KMC的公钥
function GetReceCidKmcPUbkey(cid)
{
	var IngaInet = new ActiveXObject("ingabs.net.1");
	var kmcpub ;
	kmcpub = IngaInet.HttpGet(GetHrefUrl() + "/soa_getsendercon.aspx?lb=kmcpub&gwid=" + cid + "&fwcid=0");
	
	if (IngaInet.status != 200)
	{
		alert("取接收(发送)者所在CID为:" + cid + "的KMC公钥时失败" + IngaInet.status);
		return "";
	}
	else
	{
		kmcpub = GetPureData(kmcpub);
		//取返回值的前12位是否是IngaZHCerror
		if (kmcpub.substr(0,12) == "IngaZHCerror") {
			alert(kmcpub.substring(12,kmcpub.length));
			return "";
		}
	}
	return kmcpub;
}

//连接网络
function Inga_ConnectNet(){
	if (Inga_disconnet==true){
		var IngaInet = new ActiveXObject("ingabs.net.1");
		if (IngaInet.GetNIFStatus()==0){
			IngaInet.SetNIFStatus(1);
		}
	}	
}

//断开网络
function Inga_DisConnectNet(){
	if (Inga_disconnet==true){
		var IngaInet = new ActiveXObject("ingabs.net.1");
		IngaInet.SetNIFStatus(0);
	}	
}

//删除临时文件
function Inga_delTmpFiles(){
	var IngaInet = new ActiveXObject("ingabs.net.1");
	var tmppath;
	tmppath = ekey.bsGetTempPath();
	var errstr;
	do
	{
		errstr = IngaInet.DelFiles(tmppath + "IngaTmp*.*");
		if ((errstr == "要删除的文件不存在") || (errstr == "")){
			return "";
			break;
		}
		else{
			return errstr;
			break;
			//alert(errstr + "\n" + "请在关闭此文件后点击确定");
		}
	}
	while (true);
}

//定义全局变量
var clientuserpin;	//客户端key的pin码
var Inga_srvsignpubkey;
try{
    var ekey = new ActiveXObject("sysecbs.sec.1");
	//ekey.keytype = Inga_sKeyType;
	var ekeyerrstatus ;  //错误代码
	//var srvpubkey;			//服务器公钥
	
	//取版本号，不与指定的版本号相同的则转到升级
	try{
		var version ;
		version = ekey.bsGetMiniVersion();		
		if (version != 4){
			Install_guaid("soa-img/soa_sjsm.htm");
		}
	}
	catch(e){
		Install_guaid("soa-img/soa_sjsm.htm");
	}
}
catch(e){
	Install_guaid("soa-img/soa_azsm.htm");
}

//提示更新或安装驱动
function Install_guaid(path){
	try{
		window.parent.frames("main").location = path;
	}
	catch(e){
		//window.frames("main").location = path;
		//alert(window.location);
	}
}

//加密指定的字符串
function IngaEncode(str,pemtype,pemkey){
	if ((str == "")||(Inga_infoencode==false)){
		ekeyerrstatus = 0;
		return str;
	}
	//ekey.keypin = "";
	//str = ekey.bsEnvelop(Inga_EnvType,str,pemtype,"");
	var tstr;
	do {
		tstr = ekey.bsEncrypt(Inga_iKeyType,pemtype,str,pemkey,Inga_EnvType);
		ekeyerrstatus= ekey.status ;
		if (ekeyerrstatus==-2){
			continue;
		}
		break;
	}
	while(true);

	return tstr ;
}

//解密指定的字符串
function IngaDecode(str,pemtype,pemkey){
	if ((str == "")||(Inga_infoencode==false)){
		ekeyerrstatus = 0;
		return str;
	}
    //ekey.keypin = "";
	//str = ekey.bsDeEnvelop(Inga_EnvType,str,pemtype,"");
	
	var tstr;
	do{
		tstr = ekey.bsDeEncrypt(Inga_iKeyType,pemtype,str,pemkey,Inga_EnvType);
		ekeyerrstatus = ekey.status ;
		if (ekeyerrstatus == -2){
			continue;
		}
		break;
	}
	while (true);
		
	return tstr ;	
}

//滤掉字符串前后的空格
function jtrim(str){
     while (str.charAt(0)==" ")
			{str=str.substr(1);}      
		while (str.charAt(str.length-1)==" ")
			{str=str.substr(0,str.length-1);}
		return(str);
}

//删除附件,fn文件名
function AttDel(sindex,fc){
	var oldfc ;
	oldfc = fc ;
	if (oldfc == "") {
		return "";
	}
	
	var fcont ; //当前附件总个数
	fcont = fjarr.length;
	if (fcont == 1){
		fjarr.pop();
		return ""
	}
	
	var fdellen; //要删除的附件的长度
	fdellen = fjarr[sindex];
	
	var fdelstart ;//删除的附件在结构中的开始索引
	fdelstart = 10;
	
	var i;
	for (i=0;i<fcont;i++){
		if (i == sindex){
			break;
		}
		fdelstart = fdelstart + fjarr[i];
	}
	
	var tmpfc = "";
	tmpfc = StrLeftPad((fcont-1).toString(),10) + oldfc.substr(10,fdelstart - 10) + oldfc.substr(fdelstart+fdellen);
	
	//将数组前提
	for (i=sindex;i<fcont-1;i++){
		fjarr[i] = fjarr[i+1];
	}
	fjarr.pop();
	
	return tmpfc;
}

//把文件名和文件内容形成一个文件块
function AttCreateSpart(fn,fc){
	var fc1 ;
	fc1 = ekey.bsAttachment(fc,fn);
	return fc1;
}

//加附件
function AttAdd(fn,fc,oldfc){
		
	var fcont ;
	fcont = fjarr.length ;
			
	var newfc ;
	newfc =  AttCreateSpart(fn,fc)
	
	fjarr[fcont] = newfc.length;
	fcont = (fcont+1).toString();
	fcont = StrLeftPad(fcont,10);
	
	
	var tmp;
	tmp = fcont + oldfc.substr(10) + newfc ;
	
	return tmp;
}

//删除附件
function DelAttFn(){
	var fn;
	fn = document.all.item("fnlist").value ;
	
	if (fn != ""){
		var oldfc,newfc,sindex;
		sindex = document.all.item("fnlist").selectedIndex;
		oldfc = Ingafjnr;
		newfc = AttDel(sindex,oldfc);
		Ingafjnr = newfc;
		document.all.item("fnlist").remove(sindex);
		
		var i,j;
		j = fjhispath.length - 1;
		for (i=sindex;i<j;i++){
			fjhispath[i] = fjhispath[i+1];
		}
		fjhispath.pop();
	}		
}

//将要添加的附件的原始路径存放
function AddHpath2Arr(fp){
	var l,i;
	l = fjhispath.length ;
	
	for (i=0;i<l;i++){
		if (fjhispath[i] == fp){
			return false;
		}
	}
	
	fjhispath[l] = fp;
	return true;
}
	
//补足字符串的长度,str为被的字符串,plen为补足后的长度
function StrLeftPad(str,plen){
	var sl;
	sl = str.length;
	
	if (sl >= plen)
		return str;
	
	var i,t;
	var tmp;
	tmp = "";
	t = plen - sl;
	for (i=0;i<t;i++){
		tmp = tmp + " ";
	}
	
	tmp = str + tmp;
	
	return tmp;
}

//取得文件名称
function GetFileName(str){
	var ary;
	ary = str.split("\\");
	var i;
	i = ary.length - 1;
	
	return ary[i];
}

//取文件名且无扩展名
function GetFileNameNoExt(str){
	var ary;
	ary = str.split(".");
	
	return ary[0];
}

//取文件扩展名
function GetFileNameExt(str){
	var ary;
	ary = str.split(".");
	
	return ary[ary.length - 1];
}

//取当前页的地址或域名
function GetHrefUrl(){
	var href = window.location.host;
	href = "http://" + href;
	return href;
}

//检查客户端钥匙是否存在，并且身份正确
function CheckKeyRight(){
	var flags = false ;
	var aexists,errtxt,kuid;
	
	do{
		kuid = ekey.IngaIDUserInfo(Inga_sKeyType,"");
		aexists = ekey.status ;
		if (aexists == -2 ){
			continue;
		}
		if (aexists == -1)
		{
			break;
		}
		Inga_srvsignpubkey = ekey.bsIngaIDGetOid(Inga_sKeyType,"",9);
		aexists = ekey.status ;
		if (aexists == -2 ) {
			continue;
		}
		
		break;
	}
	while (true);

	if (aexists == -1){
		errtxt = WrongStaDeal(aexists);
		flags = true
	}
	if (aexists == 0){
		//取到了ekeyuid
		if (kuid != clientuserid){
			errtxt = "当前使用的密码钥匙与您登录时使用的不相同";
			var IngaInet = new ActiveXObject("ingabs.net.1");
			IngaInet.HttpGet(GetHrefUrl() + "/soa_ekeylogin.aspx?val=lgout");
			flags = true;
		}
		
		Inga_srvsignpubkey = Inga_srvsignpubkey.substr(0,180);
	}
	else{
		//errtxt = "智能密码钥匙出现错误,错误代码:" + aexists ;
		errtxt = WrongStaDeal(aexists);
		flags = true;
	}
	if (flags){
		document.clear();
		WriteErrPromat(errtxt);
		return false;
	}
}

//根据错误代码返回相应的错误提示
function WrongStaDeal(status){
	if (status == -1){
		return "请插入正确标识你身份的密码钥匙";
	}
	else if(status == -2){
		return "密码钥匙正在运算数据,请稍后再试";
	}
	else if(status == 27011){
		return "密码钥匙被锁死,请与管理员联系";
	}
	else if(status == 27010){
		return "密码钥匙PIN码未正确初始化";
	}
	else if(status > 25535 && status < 25546){
		return "PIN码错误,你还有"+ (status - 25536) + "次重试机会";
	}
	else{
		return "请检查你所用的密码钥匙是否正确,错误代码:" + status;
	}
}

//输出错误提示
function WriteErrPromat(errtxt){
	var tmpstr ;
	tmpstr = "<table border=0 width=100% CELLSPACING=0 CELLPADDING=0><tr><td height=30>&nbsp;</td></tr><tr><td align=center>";
	tmpstr = tmpstr + errtxt;
	tmpstr = tmpstr + "</td></tr></table>"
	
	document.write(tmpstr);
}

//检查是否为数字
function fucCheckNUM(NUM)
{
 var i,j,strTemp;
 strTemp="0123456789";
 if ( NUM.length== 0)
  return false;
 for (i=0;i<NUM.length;i++)
 {
  j=strTemp.indexOf(NUM.charAt(i)); 
  if (j==-1)
  {
  //说明有字符不是数字
   return false;
  }
 }
 //说明是数字
 return true;
}

//禁止鼠标右键
document.oncontextmenu = forbidmouseright;
function forbidmouseright(){
	return event.altKey;
}






//xmltable转成excel
function xmltoexcel(xmlid){
	if (CheckKeyRight()==false){
		return false;
	}
	var root = xmlid.documentElement;
	var ncnt = root.childNodes.length;
	var i,j,mcnt;
	var cnode,rsx,csx;
	var cnt,fontsz;
			
	ExcelApp = new ActiveXObject("excel.application");
    ExcelApp.Workbooks.Add;
    
    //ExcelApp.Range("A1:D2").MergeCells = true;
    //ExcelApp.cells(1,1).value = "jianchijiushishengli";
    
    for (i = 0;i <= ncnt - 1;i++){
		cnode = root.childNodes.item(i);
		//行高
		rsx = GetNodeAttributes(cnode);
		if (cell(rsx,"height=")!=0){
			ExcelApp.Rows(i+1).RowHeight = zzh1(cell(rsx,"height=") + 1);
		}
		
		mcnt=cnode.childNodes.length;
		var m = 0;
		 for (j = 0;j <=mcnt - 1;j++){	
			
			node = cnode.childNodes.item(j);
			nodeText = node.xml;
			//滤掉xml标志
			tt = FilterCellSign1(nodeText);	
			
			//替换成回车
			if (tt.indexOf("<br/>")>0){
				var test = String.fromCharCode(13,10);
				tt = tt.replace("<br/>",test);
			}				
							
			//当前单元格前面的列数			
			precol = precolscnt(j,cnode,"colspan=");
			//当前单元格的跨列数		
			curcol = cell(nodeText,"colspan=");
			//当前单元格的跨行数
			currow = cell(nodeText,"rowspan=");
			
			ccc = fh(i+1,precol+1+m) + ":" + fh(i+currow+1,precol+1+curcol+m);
			
			ccc1 = fh(i,precol+1+m) + ":" + fh(i,precol+1+m);
					
			//写入内容
			if (i==0){
				
				ExcelApp.cells(i+1,j+m+1).value = tt;
				if (curcol>=1 || currow>=1){
					ExcelApp.Range(ccc).MergeCells = true;
				}	
				if (curcol>=1){
					m = m + curcol;
				}
				ccc = fh(i+1,precol+1+m) + ":" + fh(i+currow+1,precol+1+curcol+m);			
			}
			else{
				if (ExcelApp.Range(ccc).MergeCells==false){	
					//alert("i="+i);
					//alert("j="+j);
					if (typeof(ExcelApp.cells(i+1,j+1).value) != "undefined"){
						ExcelApp.cells(i+1,j+m+1).value = tt;
					}
					else{						
						ExcelApp.cells(i+1,j+1).value = tt;
					}	
					//alert("curcol="+curcol);
				}
				else{
					
					if (ExcelApp.Range(ccc1).MergeCells==false){
						
						ExcelApp.cells(i+1,j+m+1).value = tt;	
					}
					else{
						
												
						while (ExcelApp.Range(fh(i,precol+1+m) + ":" + fh(i,precol+1+m)).MergeCells==true)
						{
							m = m + 1;
						}
						ccc = fh(i+1,precol+1+m) + ":" + fh(i+currow+1,precol+1+curcol+m);
						ExcelApp.cells(i+1,j+m+1).value = tt;						
						
					}
					
				}
				if (curcol>=1){
						m = m + curcol;
					}
				//合并单元格
				if (curcol>=1 || currow>=1){
					ExcelApp.Range(ccc).MergeCells = true;
				}
			}
			
					
			//列宽
			csx = GetNodeAttributes(node);
			if (cell(csx,"width=")!=0){
				ExcelApp.Columns(j+m+1).ColumnWidth = zzh(cell(csx,"width=") + 1);
			}
			//字体属性
			fontsz = fontsx(nodeText,"font-size:");
			if (fontsz!=0){
				ExcelApp.Range(ccc).Font.Size = fontsz;
			}
			else{
				ExcelApp.Range(ccc).Font.Size = 9;
			}
			if (fontsxc(nodeText,"FONT-WEIGHT:bold")==1){
				ExcelApp.Range(ccc).Font.FontStyle = "加粗";
			}
								
			//对齐属性
			//alert(i);
			//alert(j);
			//alert(aligns(nodeText));
			//ExcelApp.Range("ccc").HorizontalAlignment = "xlLeft";//aligns(nodeText);
										
			//nodeText = FilterCellSign(nodeText);			
	    }
	}
	 
	//ExcelApp.Columns("C:C").NumberFormatLocal =  "yyyy-m-d h:mm;@";
	//ExcelApp.Columns(3).HorizontalAlignment=3;
	//ExcelApp.Columns(3).VerticalAlignment=3;
	//ExcelApp.Columns("C:C").Font.FontStyle = "加粗";
	//ExcelApp.Columns("C:C").Font.Size = 9;
	//ExcelApp.Columns("C:C").Font.ColorIndex = 3;
	//ExcelApp.Columns.Font.ColorIndex = 3;//颜色
	//ExcelApp.Columns.Font.Size = 9;
	//ExcelApp.Columns.Font.FontStyle = "加粗";
	ExcelApp.Columns.HorizontalAlignment=2;//对齐方式
	//ExcelApp.Columns(1).ColumnWidth = 31;//列宽
	//ExcelApp.Rows(3).RowHeight = 31;//行高
	ExcelApp.Rows("1:1").HorizontalAlignment = 3;
	ExcelApp.Visible = true;
	//if (prin==1){
		//ExcelApp.ActivePrinter = "\\192.168.99.40\HP LaserJet 5L 在 Ne02:";
		//ExcelApp.ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True;	
	//}
	 
	//ExcelApp.Quit();
}

//取各列的跨行数写入二维数组中
function rowk(cnode){
	var aa = new Array();
	
}

//像素值转为excel列值
function zzh(s){
	s = s - 5;
	s = s/8;
	return s;
}

//像素值转为excel行值
function zzh1(s){
	return s*0.75;
}

//截取字体大小属性
function fontsx(str,str1){
	var col,str0,i,j;
		if (str.length > 0){
			col = str.indexOf(str1);
			if (col == -1){
				return 0;
			}
			else{
				str0 = str.substring(col);
				i = str0.indexOf(":");			
				j = str0.indexOf("pt");
				m = str0.substring(i+1,j);
				return m;
			}
		}
}

//截取字体粗属性
function fontsxc(str,str1){
	var col,str0,i,j;
		if (str.length > 0){
			col = str.indexOf(str1);
			if (col == -1){
				return 0;
			}
			else{
				return 1;
			}
		}
}

//截取对齐属性
function aligns(str){
	var i,j,m;
	if (str.length > 0){
		i = str.indexOf("align='left'");
		j = str.indexOf("align='center'");
		m = str.indexOf("align='right'");
		if (i > 0){
			return "xlLeft";
		}
		if (j > 0){
			return "xlCenter";
		}
		if (m > 0){
			return "xlRight";
		}
		if (i <=0 && j <=0 && m<=0){
			return "xlLeft";
		}
	}
	else{
		return "xlLeft";
	}
}

//截取列属性
function cell(nodetext,str){
	var col,str0,i,j;
	if (nodetext.length > 0){
		col = nodetext.indexOf(str);
		if (col == -1){
			return 0;
		}
		else{
			str0 = nodetext.substring(col);
			i = str0.indexOf("=");			
			j = str0.indexOf(" ");
			m = str0.substring(i+2,j-1);
			return m-1;
		}
	}
	
}

//截取跨列属性返回1
function cell1(nodetext,str){
	var col,str0,i,j;
	if (nodetext.length > 0){
		col = nodetext.indexOf(str);
		if (col == -1){
			return 1;
		}
		else{
			str0 = nodetext.substring(col);
			i = str0.indexOf("=");			
			j = str0.indexOf(" ");
			m = str0.substring(i+2,j-1);
			
			return m;
		}
	}
	
}

//取当前列前面的所有列跨列的总和
function precolscnt(cellscnt,cnode,str){
	var i;
	var node;
	var zs=0;
	
	for (i=0;i<cellscnt;i++){
		node = cnode.childNodes.item(i);
		nodetext = node.xml;
		zs = zs + cell1(nodetext,str);
	}
	return zs;
}


//由行数及跨列数返回excel的跨列规格
function fh(i,ls){
	aa = fexcel(ls);
	return aa + i;
}


//由数字返回A、B等
function fexcel(cols){
	if (cols>=1 && cols<=26){
		if (cols==1){
			return 'A';
		}
		if (cols==2){
			return 'B';
		}
		if (cols==3){
			return 'C';
		}
		if (cols==4){
			return 'D';
		}
		if (cols==5){
			return 'E';
		}
		if (cols==6){
			return 'F';
		}
		if (cols==7){
			return 'G';
		}
		if (cols==8){
			return 'H';
		}
		if (cols==9){
			return 'I';
		}
		if (cols==10){
			return 'J';
		}
		if (cols==11){
			return 'K';
		}
		if (cols==12){
			return 'L';
		}
		if (cols==13){
			return 'M';
		}
		if (cols==14){
			return 'N';
		}
		if (cols==15){
			return 'O';
		}
		if (cols==16){
			return 'P';
		}
		if (cols==17){
			return 'Q';
		}
		if (cols==18){
			return 'R';
		}
		if (cols==19){
			return 'S';
		}
		if (cols==20){
			return 'T';
		}
		if (cols==21){
			return 'U';
		}
		if (cols==22){
			return 'V';
		}
		if (cols==23){
			return 'W';
		}
		if (cols==24){
			return 'X';
		}
		if (cols==25){
			return 'Y';
		}
		if (cols==26){
			return 'Z';
		}
	}
	else
	{
		return 0;
	}
	
}

//xmlrow转成excel
function xmlrowtoexcel(i,xmlnode,ExcelApp){
	var mcnt=xmlnode.childNodes.length;
	var j;
	var node;
	var nodetext;
			
	//alert(mcnt);
	    for (j = 0;j <=mcnt - 1;j++){
			node = xmlnode.childNodes.item(j);
			
			nodeText = node.xml;
			
			nodeText = FilterCellSign(nodeText);
			//a(i,j) = nodeText.length;
			//alert(a(i,j));
			ExcelApp.cells(i+3,j+1).value = nodeText;
			if (nodeText.length != 0){
				ExcelApp.Columns(j+1).ColumnWidth = nodeText.length;//列宽			
			}
			else{
				ExcelApp.Columns(j+1).ColumnWidth = 20;//列宽
			}		
			
	    }
	   //alert(a(0,0));
}

//滤去字符串中的xml的标记
function FilterCellSign1(str){
	var i,j,m,n,p;
	var tmpstr;
	tmpstr = str; 
	
    m = str.indexOf("<a");
    if (m > 0){
		str = str.substring(m + 1);
		n = str.indexOf(">");
		if (n > 0){
			p = str.indexOf("</a>");
			tmpstr = str.substring(n + 1,p);
		}
    }
    else{
		i = str.indexOf(">");
	
		if (i > 0) {
			j = str.indexOf("</cell>",i + 1);
			tmpstr = str.substring(i + 1, j );
		}
    }
	
		
	return tmpstr ;
}
