   var pub_filwin;          //檔案預覽視窗
   var pub_urlwin;          //網頁預覽視窗
   var pub_codwin;          //代碼視窗
   var pub_xlswin;          //EXCEL檔視窗
   var pub_hlpwin;          //線上手冊視窗
   var pub_helpfile;
   var http_request;
   var http_rtncod=0;
   var http_scrmsg="";

   var msg_cnt=0;            // current news item
   var msg_curr = "";
   var msg_i=-1;            // current letter being typed
   var wordcolor = "#E3B600";
   var newmsg_sw="";
   var cur_scrMessage;
   var shownews_id;



   //判斷系統是否正確由入口登入使用
// if (top.length!=4) {
//    alert("請由入口首頁登入使用系統。");
//    top.location="mainpage.asp";
// }

   //顯示訊息
   function sendmsg(msgstr) {
      msg_cnt=0;
      msg_curr = "";
      msg_i=-1;
      newmsg_sw = "<span style='position:absolute;z-index:999'><img src='images/msgicon.gif'></span>"+"　&nbsp;&nbsp;"+msgstr;
      cur_scrMessage=top.m0frame.document.all.scrMessage;
      if (top.m0frame.document.all.scrMessage) {
         top.m0frame.document.all.scrMessage.innerHTML=newmsg_sw;
 //      shownews_ro();
         //可以傳入HMLT碼以強化系統訊息。
      } else {
         //暫無訊息顯示
         if (coms_trim(msgstr)!="") alert(msgstr);
      }
   }
   
   function clsmsg() {
      if (top.m0frame.document.all.scrMessage) {
         top.m0frame.document.all.scrMessage.innerHTML="<span style='position:absolute;z-index:999'><img src='images/msgicon.gif'></span>"+"";
         //可以傳入HMLT碼以強化系統訊息。
      }
   }


   function coms_sendmsg(strval) {
      msg_cnt=0;
      msg_curr = "";
      msg_i=-1;
      newmsg_sw = strval;
      cur_scrMessage = document.all.scrMessage;
      if (document.all.scrMessage) {
          document.all.scrMessage.innerHTML=newmsg_sw;
 //       shownews_ro();
      } else {
         //暫無訊息顯示
          if (coms_trim(strval)!="") alert(strval);
      }
   }

   function coms_clsmsg() {
      if (document.all.scrMessage) {
         document.all.scrMessage.innerHTML="";
         //可以傳入HMLT碼以強化系統訊息。
      }
   }


   function coms_seterror(obj, errstr) {
     coms_sendmsg(errstr);
     obj.focus;
     return false;
   }

   function win_sendmsg(msgstr) {
      msg_cnt=0;
      msg_curr = "";
      msg_i=-1;
      newmsg_sw = msgstr;
      cur_scrMessage=parent.m0frame.document.all.scrMessage;
      if (parent.m0frame.document.all.scrMessage) {
         parent.m0frame.document.all.scrMessage.innerHTML=msgstr;
 //      shownews_ro();
         //可以傳入HMLT碼以強化系統訊息。
      } else {
         //暫無訊息顯示
         if (coms_trim(msgstr)!="") alert(msgstr);
      }

   }

   function win_clsmsg() {
      if (parent.m0frame.document.all.scrMessage) {
         parent.m0frame.document.all.scrMessage.innerHTML="";
         //可以傳入HMLT碼以強化系統訊息。
      }
   }

//TRIM掉字串左邊０
   function coms_ntrimzero(numstr,x) {
     var i0;
     var retstr="";
     var trimfg=true;
     var dval="";
     if (x==1)
         dval = "0"
     else
         dval = "";
     if (numstr==null) return dval;
     for (i0=0;i0<=numstr.length-1;i0++) {
        if (trimfg) {
           if (numstr.substr(i0,1)!="0") {
              retstr+=numstr.substr(i0,1);
              trimfg=false;
           }
        } else {
           retstr+=numstr.substr(i0,1);
        }
     }
     if (retstr=="") return dval;
     else return retstr;
   }

//TRIM掉字串左邊０
   function coms_trimzero(numstr) {
     var i0;
     var retstr="";
     var trimfg=true;
     if (numstr==null) return "0";
     for (i0=0;i0<=numstr.length-1;i0++) {
        if (trimfg) {
           if (numstr.substr(i0,1)!="0") {
              retstr+=numstr.substr(i0,1);
              trimfg=false;
           }
        } else {
           retstr+=numstr.substr(i0,1);
        }
     }
     if (retstr=="") return "0";
     else return retstr;
   }

   //TRIM掉字串左邊０
   function lTrimZero(numstr) {  
      var i0;
      var retstr="";
      var trimfg=true;
      if (numstr==null) return "0";
      for (i0=0;i0<=numstr.length-1;i0++) {
         if (trimfg) {
            if (numstr.substr(i0,1)!="0") {
               retstr+=numstr.substr(i0,1);
               trimfg=false;
            }
         } else {
            retstr+=numstr.substr(i0,1);
         }
      }
      if (retstr=="") return "0";
      else return retstr;
   }
   
   //TRIM掉字串左邊空白
   function lTrim(str) {  
      var i0;
      var retstr="";
      var trimfg=true;
      if (str==null) return "";
      for (i0=0;i0<=str.length-1;i0++) {
         if (trimfg) {
            if (str.substr(i0,1)!=" ") {
               retstr+=str.substr(i0,1);
               trimfg=false;
            }
         } else {
            retstr+=str.substr(i0,1);
         }
      }
      return retstr;
   }
   
   //TRIM掉字串右邊空白
   function rTrim(str) {  
      var i0;
      var retstr="";
      if (str==null) return "";
      for (i0=str.length-1;i0>=0;i0--) {
         if (str.substr(i0,1)!=" ") {
            retstr=str.substring(0,i0+1);
            break;
         }
      }
      return retstr;
   }
   
   //TRIM掉字串左右邊空白
   function trim(str) {  
      if (str==null) return "";
      return lTrim(rTrim(str));
   }

   function padl(instr, strlen, inchr) {
      if (instr==null || strlen==null || inchr==null) return "";
      if (isNaN(strlen) || inchr.length==0) return "";
      var i0,retstr="";
      strlen=parseInt(strlen);
      inchr=inchr.substr(0,1);
      if (instr.length<=strlen) {
         for (i0=1;i0<=strlen-instr.length;i0++) retstr+=inchr;
         retstr+=instr;
      } else {
         retstr=instr.substr(instr.length-strlen,strlen);
      }
      return retstr;
   }

   function padr(instr, strlen, inchr) {
      if (instr==null || strlen==null || inchr==null) return "";
      if (isNaN(strlen) || inchr.length==0) return "";
      var i0,retstr="";
      strlen=parseInt(strlen);
      inchr=inchr.substr(0,1);
      if (instr.length<=strlen) {
         retstr+=instr;
         for (i0=1;i0<=strlen-instr.length;i0++) retstr+=inchr;
      } else {
         retstr=instr.substr(0,strlen);
      }
      return retstr;
   }

   function coms_ltrim(str) {
      var i0;
      var retstr="";
      var trimfg=true;
      if (str==null) return "";
      for (i0=0;i0<=str.length-1;i0++) {
         if (trimfg) {
            if (str.substr(i0,1)!=" ") {
               retstr+=str.substr(i0,1);
               trimfg=false;
            }
         } else {
            retstr+=str.substr(i0,1);
         }
      }
      return retstr;
   }

   function coms_rtrim(str) {
      var i0;
      var retstr="";
      if (str==null) return "";
      for (i0=str.length-1;i0>=0;i0--) {
         if (str.substr(i0,1)!=" ") {
            retstr=str.substring(0,i0+1);
            break;
         }
      }
      return retstr;
   }

   function coms_trim(str) {
      if (str==null) return "";
      return coms_ltrim(coms_rtrim(str));
   }

  function coms_padl(instr, strlen, inchr) {
     if (instr==null || strlen==null || inchr==null) return "";
     if (isNaN(strlen) || inchr.length==0) return "";
     var i0,retstr="";
     strlen=parseInt(strlen);
     inchr=inchr.substr(0,1);
     if (instr.length<=strlen) {
        for (i0=1;i0<=strlen-instr.length;i0++) retstr+=inchr;
        retstr+=instr;
     } else {
        retstr=instr.substr(instr.length-strlen,strlen);
     }
     return retstr;
  }

function coms_padls(instr, strlen, inchr) {
   instr = coms_tnull(instr);
   if (instr==null || coms_trim(instr)=="" || strlen==null || inchr==null) return "";
   if (isNaN(strlen) || inchr.length==0) return "";
   var i0,retstr="";
   strlen=parseInt(strlen);
   inchr=inchr.substr(0,1);
   if (instr.length<=strlen) {
      for (i0=1;i0<=strlen-instr.length;i0++) retstr+=inchr;
      retstr+=instr;
   } else {
      retstr=instr.substr(instr.length-strlen,strlen);
   }
   return retstr;
}

  function coms_tadl(instr, strlen) {
     var inchr;
     if (instr==null || strlen==null) return "";
     if (isNaN(strlen)) return "";
     var i0,retstr="";
     strlen=parseInt(strlen);
     inchr="&nbsp;";
     if (instr.length<=strlen) {
        for (i0=1;i0<=strlen-instr.length;i0++) retstr+=inchr;
        retstr+=instr;
     } else {
        retstr=instr.substr(instr.length-strlen,strlen);
     }
     return retstr;
  }

  function coms_padr(instr, strlen, inchr) {
     if (instr==null || strlen==null || inchr==null) return "";
     if (isNaN(strlen) || inchr.length==0) return "";
     var i0,retstr="";
     strlen=parseInt(strlen);
     inchr=inchr.substr(0,1);
     if (instr.length<=strlen) {
        retstr+=instr;
        for (i0=1;i0<=strlen-instr.length;i0++) retstr+=inchr;
     } else {
        retstr=instr.substr(0,strlen);
     }
     return retstr;
  }


   function coms_TrimByte(numstr,tix) {
      var i0;
      var retstr="";
      var trimfg=true;
      if (numstr==null) return "";
      numstr = coms_trim(numstr);
      for (i0=0;i0<=numstr.length-1;i0++) {
          if (numstr.substr(i0,1)!=tix) {
             retstr+=numstr.substr(i0,1);
          }
      }
      if (retstr=="") return "";
      else return retstr;
   }

   function coms_formatx(numstr) {
      var i0;
      var j0;
      var valcode;
      var retstr="";
      var trimfg=true;
      if ((numstr==null)||(coms_trim(numstr)=="")) return "";
      if (parseFloat(numstr)<0) {
         valcode = "Y";
         numstr=numstr.substr(1,numstr.length-1);
      } else valcode = "N";
      numstr = coms_unformatx(coms_trim(numstr));
      j0=0
      for (i0=numstr.length-1;i0>=0;i0--) {
          if (j0==3) {
             retstr=","+retstr;
             j0 = 0
          }
          retstr=numstr.substr(i0,1)+retstr;
          j0++;
      }
      if (retstr=="") return "";
      else {
         if (valcode=="Y") retstr = "-" + retstr;
         return retstr;
      }
   }

function coms_unformatx(numstr) {
      var i0;
      var j0;
      var retstr="";
      var intstr="";
      var trimfg=true;
      if ((numstr==null)||(coms_trim(numstr)=="")) return "";
      numstr = coms_trim(numstr);
      if (numstr.indexOf(",")<0) { return numstr; }
      i0=0;
      j0=0
      while(trimfg) {
        j0 = numstr.indexOf(",");
        if (j0<0) {
            retstr+=coms_trim(numstr);
            trimfg = false;
        } else {
          retstr+=numstr.substr(0,j0);
          numstr=numstr.substr(j0+1,numstr.length-j0);
        }
        i0++;
      }
      if (retstr=="") return "";
      else return retstr;
   }

function coms_set_format(obj) {
   if (obj.getAttribute("datatype")=="real" && obj.getAttribute("dataformat")!="") {
      var befstr="";                           
      var aftstr="";                           
      var valdot=obj.value.indexOf(".");       
      var fmtdot=obj.getAttribute("dataformat").indexOf(".");    
      var vallen=obj.value.length;             
      var fmtlen=obj.getAttribute("dataformat").length;          
      var valsen=0;                            
      var fmtsen=0;
      if (valdot>=0) {
         valsen=vallen-valdot-1;
      } else valsen=0;
      if (fmtdot>=0) {
         fmtsen=fmtlen-fmtdot-1;
      } else fmtsen=0;
      if (fmtdot>=0) {
         if (valdot>=0) {
            obj.value=coms_padl(obj.value.substr(0,valdot), fmtdot, " ")+
                          "."+
                          coms_padr(obj.value.substr(valdot+1,valsen), fmtsen, " ");
         } else {
            obj.value=coms_padl(obj.value, fmtdot, " ")+
                          "."+
                          coms_padr("", fmtsen, " ");
         }
      } else {
         if (valdot>=0) {
            obj.value=coms_padl(obj.value.substr(0,valdot), fmtlen, " ");
         } else {
            obj.value=coms_padl(obj.value, fmtlen, " ");
         }
      }
      valdot=obj.value.indexOf(".");
      vallen=obj.value.length;
      var i0, j0, k0;
      if (fmtdot>=0) k0=fmtdot-1;
      else k0=fmtlen-1;
      if (valdot>=0) j0=valdot-1;
      else j0=vallen-1;
      var negflg=false;          
      for (i0=k0;i0>=0;i0--) {
         if (j0<0) break;
         if (obj.getAttribute("dataformat").substr(i0,1)==",") {
            befstr=","+befstr;
         } else {
            if (obj.value.substr(j0,1)=="-") negflg=true;
            else befstr=coms_set_format_char(obj.getAttribute("dataformat").substr(i0,1),obj.value.substr(j0,1),obj.value.substr(0,j0))+befstr;
            j0-=1;
         }
      }
      if (fmtdot>=0) {
         if (valdot>=0) j0=valdot+1;
         else j0=vallen+1;
         for (i0=fmtdot+1;i0<fmtlen;i0++) {
            aftstr+=coms_set_format_char(obj.getAttribute("dataformat").substr(i0,1),obj.value.substr(j0,1));
            j0+=1;
         }
      }
      if (obj.value!="") {
         befstr=coms_ltrim(befstr,",");
         if (negflg) befstr="-"+befstr;
         if (fmtdot<0) obj.value=befstr;
         else obj.value=befstr+"."+aftstr;
      }
      if (obj.value=="."||obj.value=="0.00"||obj.value==".00") obj.value = "";
   }
   if (obj.getAttribute("datatype")=="date") {
      if (obj.value.indexOf("/")>=0) { obj.value = strReplace(obj.value,"/",""); }
      obj.value=coms_trim(obj.value);
      if (obj.value!="") {
         switch(obj.getAttribute("dataformat")) {
            case "yyymmdd":
               obj.value=coms_padl(obj.value,7,"0");
               obj.value=obj.value.substr(0,3)+"/"+obj.value.substr(3,2)+"/"+obj.value.substr(5,2);
               break;
            case "yyymm":
               obj.value=coms_padl(obj.value,5,"0");
               obj.value=obj.value.substr(0,3)+"/"+obj.value.substr(3,2);
               break;
            case "yyy":
               obj.value=coms_padl(obj.value,3,"0");
               break;
         }
      }
   }
   if (obj.getAttribute("datatype")=="time") {
      obj.value=coms_trim(obj.value);
      if (obj.value!="") {
         switch(obj.getAttribute("dataformat")) {
            case "hhmmss":
               obj.value=coms_padl(obj.value,6,"0");
               obj.value=obj.value.substr(0,2)+":"+obj.value.substr(2,2)+":"+obj.value.substr(4,2);
               break;
            case "hhmm":
               obj.value=coms_padl(obj.value,4,"0");
               obj.value=obj.value.substr(0,2)+":"+obj.value.substr(2,2);
               break;
            case "hh":
               obj.value=coms_padl(obj.value,2,"0");
               break;
         }
      }
   }
}
   
function coms_clear_format(obj) {
   if (obj.getAttribute("datatype")=="real") {
      obj.value=coms_trim_char(obj.value,",");
   }
   if (obj.getAttribute("datatype")=="date") {
      obj.value=coms_trim_char(obj.value,"/");
   }
   if (obj.getAttribute("datatype")=="time") {
      obj.value=coms_trim_char(obj.value,":");
   }
}

function coms_set_format_value(objval,objtyp,objfmt) {
   if (objtyp=="real" && objfmt!="") {
      var befstr="";                           
      var aftstr="";                           
      var valdot=objval.indexOf(".");       
      var fmtdot=objfmt.indexOf(".");    
      var vallen=objval.length;             
      var fmtlen=objfmt.length;          
      var valsen=0;                            
      var fmtsen=0;                            
      if (valdot>=0) {
         valsen=vallen-valdot-1;
      } else valsen=0;
      if (fmtdot>=0) {
         fmtsen=fmtlen-fmtdot-1;
      } else fmtsen=0;
      if (fmtdot>=0) {
         if (valdot>=0) {
            objval=coms_padl(objval.substr(0,valdot), fmtdot, " ")+
                   "."+
                   coms_padr(objval.substr(valdot+1,valsen), fmtsen, " ");
         } else {
            objval=coms_padl(objval, fmtdot, " ")+
                   "."+
                   coms_padr("", fmtsen, " ");
         }
      } else {
         if (valdot>=0) {
            objval=coms_padl(objval.substr(0,valdot), fmtlen, " ");
         } else {
            objval=coms_padl(objval, fmtlen, " ");
         }
      }
      valdot=objval.indexOf(".");
      vallen=objval.length;
      var i0, j0, k0;
      if (fmtdot>=0) k0=fmtdot-1;
      else k0=fmtlen-1;
      if (valdot>=0) j0=valdot-1;
      else j0=vallen-1;
      var negflg=false;          
      for (i0=k0;i0>=0;i0--) {
         if (j0<0) break;
         if (objfmt.substr(i0,1)==",") {
            befstr=","+befstr;
         } else {
            if (objval.substr(j0,1)=="-") negflg=true;
            else befstr=coms_set_format_char(objfmt.substr(i0,1),objval.substr(j0,1),objval.substr(0,j0))+befstr;
            j0-=1;
         }
      }
      if (fmtdot>=0) {
         if (valdot>=0) j0=valdot+1;
         else j0=vallen+1;
         for (i0=fmtdot+1;i0<fmtlen;i0++) {
            aftstr+=coms_set_format_char(objfmt.substr(i0,1),objval.substr(j0,1));
            j0+=1;
         }
      }
      if (objval!="") {
         befstr=coms_ltrim(befstr,",");
         if (negflg) befstr="-"+befstr;
         if (fmtdot<0) objval=befstr;
         else objval=befstr+"."+aftstr;
      }
   }
   if (objtyp=="date") {
      objval=coms_trim(objval);
      if (objval!="") {
         objval = strReplace(objval,"/","");
         switch(objfmt) {
            case "yyymmdd":
               objval=coms_padl(objval,7,"0");
               objval=objval.substr(0,3)+"/"+objval.substr(3,2)+"/"+objval.substr(5,2);
               break;
            case "yyymm":
               objval=coms_padl(objval,5,"0");
               objval=objval.substr(0,3)+"/"+objval.substr(3,2);
               break;
            case "yyy":
               objval=coms_padl(objval,3,"0");
               break;
         }
      }
   }
   if (objtyp=="time") {
      objval=coms_trim(objval);
      if (objval!="") {
         switch(objfmt) {
            case "hhmmss":
               objval=coms_padl(objval,6,"0");
               objval=objval.substr(0,2)+":"+objval.substr(2,2)+":"+objval.substr(4,2);
               break;
            case "hhmm":
               objval=coms_padl(objval,4,"0");
               objval=objval.substr(0,2)+":"+objval.substr(2,2);
               break;
            case "hh":
               objval=coms_padl(objval,2,"0");
               break;
         }
      }
   }
   return objval;
}

function coms_get_unformat(obj) {
   var valstr;
   var bakval;
   if (obj==null) return "";
   valstr=obj.value;
   bakval=valstr;
   if (obj.getAttribute("datatype")=="real") {
      obj.value=strReplace(valstr,",","");
      bakval = obj.value;
   }
   if (obj.getAttribute("datatype")=="date") {
      obj.value=strReplace(valstr,"/","");
      bakval = obj.value;
   }
   if (obj.getAttribute("datatype")=="time") {
      obj.value=strReplace(valstr,":","");
      bakval = obj.value;
   }
   return bakval;
}

function coms_get_unformat_value(obj) {
   var valstr;
   var bakval;
   if (obj==null) return "";
   valstr=obj.value;
   bakval=valstr;
   if (coms_trim(valstr)=="") return "";
   if (obj.getAttribute("datatype")=="real") {
      bakval=coms_trim_char(valstr,",");
   }
   if (obj.getAttribute("datatype")=="date") {
      bakval=coms_trim_char(valstr,"/");
   }
   if (obj.getAttribute("datatype")=="time") {
      bakval=coms_trim_char(valstr,":");
   }
   if (obj.tagName=="INPUT" && obj.type=="checkbox") {
      if (obj.checked) bakval="Y";
      else bakval="N";
   }
   return bakval;
}

function coms_set_format_char(fmtchr,valchr,leftchr){
   fmtchr=coms_tnull(fmtchr);
   valchr=coms_tnull(valchr);
   switch(fmtchr) {
      case "#":
         if (valchr=="0") {
            if (leftchr!=null) {
               leftchr=coms_trim(coms_trim_char(leftchr,"-,.0"));
               if (isNaN(leftchr) || leftchr=="") return "";
               else return valchr;
            }
         } else return coms_trim(valchr);
         break;
      case "0":
         if (valchr==" ") return "0";
         else return valchr;
         break;
      default :
         return "";
         break;
   }
}

function coms_trim_char(str,chr) {
   var i0, j0;
   var retstr="";
   var trimfg=false;
   if (str==null) return "";
   for (i0=0;i0<str.length;i0++) {
      trimfg=false;
      for (j0=0;j0<=chr.length-1;j0++) {
         if (str.substr(i0,1)==chr.substr(j0,1)) trimfg=true;
      }
      if (!trimfg) retstr+=str.substr(i0,1);
   }
   return retstr;
}

function coms_trim_hack_chars(str) {
   var bakval=String(str);
   if (bakval=="") return bakval;
   bakval=coms_trim_char(bakval,"<");
   bakval=coms_trim_char(bakval,">");
   bakval=coms_trim_char(bakval,"'");
   return bakval;
}


function coms_tnull(val) {
   if (val==null) return "";
   else return val;
}

function coms_renull() {
   return;
}


  function coms_lenx(instr) {
   var i0,strlen;
   strlen=0;
   for (i0=0;i0<instr.length;i0++) {
      if (instr.substr(i0,1).charCodeAt(0)>128 || instr.substr(i0,1).charCodeAt(0)<-128) {
         strlen+=2;
      } else {
         strlen+=1;
      }
   }
   return strlen;
  }

  function coms_midx(instr,dlen) {
   var i0,strlen;
   var recstr;
   var xlen;
   strlen=0;
   xlen=0;
   recstr="";
   xlen=coms_lenx(instr);
   if (xlen<dlen) dlen = xlen;
   xlen=0;
   for (i0=0;i0<dlen;i0++) {
      if (instr.substr(i0,1).charCodeAt(0)>128 || instr.substr(i0,1).charCodeAt(0)<-128) {
         if ((xlen+2)>dlen) break;
         xlen+=2;
      } else {
         if ((xlen+1)>dlen) break;
         xlen+=1;
      }
      recstr+=instr.substr(i0,1);
   }
   return recstr;
  }

  function coms_checkLen(obj) {
    var strlen;
    strlen=0;
    strlen=coms_lenx(obj.value);
    if (strlen>obj.maxLength) {
       alert("已超過本欄最大長度["+obj.maxLength+"]，將自動截取。");
       obj.value=coms_midx(obj.value,obj.maxLength);
    }
  }

//將obj裡所有的DISABLED物件設成ENABLED
function coms_allenabled(obj) {
   var i0;
   for (i0=0;i0<obj.length;i0++) {
      if (obj[i0].disabled) obj[i0].disabled=false;
   }
}

//將obj裡所有的ENABLED物件設成DISABLED
function coms_alldisabled(obj) {
   var i0;
   for (i0=0;i0<obj.length;i0++) {
      if (!obj[i0].disabled) obj[i0].disabled=true;
   }
}

//將OBJ物件中所有的SELECT物件的display設成none
function coms_setselectnone(obj) {
   var i0;
   for (i0=0;i0<obj.length;i0++) {
      if (obj[i0].tagName=="SELECT") {
         obj[i0].style.display="none";
      }
   }
}

//將OBJ物件中所有的SELECT物件的display設成inline
function coms_setselectblock(obj) {
   var i0;
   for (i0=0;i0<obj.length;i0++) {
      if (obj[i0].tagName=="SELECT") {
         obj[i0].style.display="inline";
      }
   }
}

//將obj裡的所有物件皆清空
function coms_resetcmd(obj) {
   var i0;
   for (i0=0;i0<obj.length;i0++) {
      if (((obj[i0].tagName=="INPUT" && obj[i0].type=="text") ||
           (obj[i0].tagName=="INPUT" && obj[i0].type=="password") ||
           (obj[i0].tagName=="TEXTAREA")) &&
          obj[i0].disabled==false && obj[i0].readOnly==false) obj[i0].value="";
      if (obj[i0].tagName=="SELECT" && obj[i0].disabled==false) obj[i0].value="";
      if (obj[i0].tagName=="INPUT" && obj[i0].type=="checkbox" && obj[i0].disabled==false && obj[i0].readOnly==false) obj[i0].checked=false;
      if (obj[i0].tagName=="INPUT" && obj[i0].type=="radio" && obj[i0].disabled==false && obj[i0].readOnly==false) obj[i0].checked=false;
   }
   return true;
}

function coms_resetcmdx(obj) {
   var i0;
   for (i0=0;i0<obj.length;i0++) {
      if (((obj[i0].tagName=="INPUT" && obj[i0].type=="text") ||
           (obj[i0].tagName=="INPUT" && obj[i0].type=="password") ||
           (obj[i0].tagName=="TEXTAREA")) ) obj[i0].value="";
      if (obj[i0].tagName=="SELECT" && obj[i0].disabled==false) obj[i0].value="";
      if (obj[i0].tagName=="INPUT" && obj[i0].type=="checkbox" && obj[i0].disabled==false && obj[i0].readOnly==false) obj[i0].checked=false;
      if (obj[i0].tagName=="INPUT" && obj[i0].type=="radio" && obj[i0].disabled==false && obj[i0].readOnly==false) obj[i0].checked=false;
   }
   return true;
}


//開窗預覽網頁
   function coms_openurl(filepath) {
     pub_urlwin=window.open(filepath,"winurl","menubar=1,toolbar=0,location=0,directories=0,status=0,scrollbars=1,resizable=1,width=690,height=500,top=20,left=50",true);
     pub_urlwin.focus();
   }

   function coms_win_close() {
      if (pub_urlwin!=null) {
         try {
            pub_urlwin.close();
         } catch(e) {
         }
      }
   }

   function getmsg(sid) {
      switch(sid) {
         case 1:
            return "資料新增完成，請繼續。"
            break;
         case 2:
            return "資料查詢完成，請繼續。"
            break;
         case 3:
            return "資料更正完成，請繼續。"
            break;
         case 4:
            return "資料刪除完成，請繼續。"
            break;
         case 5:
            break;
         case 6:
            break;
         case 7:
            break;
         case 8:
            break;
         case 9:
            break;
         case 10:
            return "資料處理中，請稍待。"
            break;
         case 11:
            return "讀取資料中，請稍待。"
            break;
         case 12:
            return "系統登入檢核中，請稍待。"
            break;
         case 13:
            return "資料傳輸中，請稍待。"
            break;
         case 14:
            return "程式啟動中，請稍待。"
            break;
         case 15:
            return "資料檢核中，請稍待。"
            break;
         case 21:
            return "錯誤！使用功能前請先登入系統。"
            break;
         case 31:
            return "錯誤！您所選擇的計畫不允許跨單位(包括所屬單位)。"
            break;
         default:
            return false;
            break;
      }
   }

function initMessage(s)
{
     sendmsg(s);
  // return true;
  // if (top.m0frame.document.all.scrMessage) {
  //     top.m0frame.document.all.scrMessage.innerHTML=s;
  //     //可以傳入HTML碼以強化系統訊息。
  //  }
}

  function getArrayIndex(curform,curobj) {
     var objnam=curobj.name;
     var i0;
     if (!eval(curform.name+"."+objnam+".length")) return null;
     else {
        for (i0=0; i0<eval(curform.name+"."+objnam+".length"); i0++) {
           if (curobj==eval(curform.name+"."+objnam+"["+i0+"]")) {
              return i0;
              break;
           }
        }
     } 
  }

//取得FORM物件在物件群中的Index
function coms_getElementIndex(fobjnam,gobjnam,obj) {
   var bakval,i0;
   bakval=0;
   if (eval("document."+fobjnam+"."+gobjnam+".length")) {
      for (i0=0;i0<eval("document."+fobjnam+"."+gobjnam+".length");i0++) {
         if (eval("document."+fobjnam+"."+gobjnam+"["+i0+"]")==obj) {
            bakval=i0;
            break;
         }
      }
   }
   return bakval;
}

function coms_setAlign(obj,p)
{
     if (p==1) {
        obj.style.textAlign="left";
     } else {
             obj.style.textAlign="right";
            }
}

function cursorPos(obj) {
  var rngobj=obj.createTextRange();
   rngobj.move("character",0);
   rngobj.select();
}

function coms_checkDate(datstr,tid) {
   var enyear;
   var dat_yy,dat_mm,dat_dd;
   switch(tid) {
      case "date":
         datstr=coms_padl(datstr,7,"0");
         break;
      case "dateym":
         datstr=coms_padl(datstr,5,"0")+"01";
         break;
      case "datey":
         datstr=coms_padl(datstr,3,"0")+"0101";
         break;
   }
   if (isNaN(datstr)) return false;
   dat_yy=parseFloat(datstr.substr(0,3));
   dat_mm=parseFloat(datstr.substr(3,2));
   dat_dd=parseFloat(datstr.substr(5,2));
   enyear=dat_yy+1911;
   if (dat_yy<=0) {
      return false;
   } else if (dat_mm<1 || dat_mm>12) {
      return false;
   } else if (dat_dd<1) {
      return false;
   } else if (dat_dd>31 && (dat_mm==1 || dat_mm==3 || dat_mm==5 || dat_mm==7 || dat_mm==8 || dat_mm==10 || dat_mm==12)) {
      return false;
   } else if (dat_dd>30 && (dat_mm==4 || dat_mm==6 || dat_mm==9 || dat_mm==11)) {
      return false;
   } else if (dat_dd>29 && dat_mm==2) {
      return false;
   } else if (dat_mm==2) {
      var i01 = enyear%4;
      var i02 = enyear%100;
      var i03 = enyear%400;
      if ((i01!=0 && dat_dd>28) || (i02==0 && i03!=0 && dat_dd>28)) {
         return false;
      } else {
         return true;
      }
   } else return true;
}

//將null值轉成0
function coms_tzero(val) {
   if ((val==null)||(coms_trim(val)=="")) return 0;
   else if (isNaN(strReplace(val,",",""))) return 0;
   else return val;
}

function setzerox(objd) {
  if (trim(objd.value)=="0") objd.value="";
}

function setzeroy(val) {
  var outval;
  outval = coms_tzero(coms_tnull(val));
  if (trim(outval)==0) return "";
}

//取得物件於網頁中的的絕對位置(TOP)
  function coms_compute_top(obj,val) {
     val=coms_tzero(val);
     val+=coms_tzero(obj.offsetTop);
     if (obj.offsetParent) return coms_compute_top(obj.offsetParent,val);
     return val;
  }

//取得物件於網頁中的的絕對位置(LEFT)
  function coms_compute_left(obj,val) {
     val=coms_tzero(val);
     val+=coms_tzero(obj.offsetLeft);
     if (obj.offsetParent) return coms_compute_left(obj.offsetParent,val);
     return val;
  }

function shownews_ro()
{
if (coms_trim(newmsg_sw)=="") {cur_scrMessage.innerHTML=""; return false; }
if (msg_i < newmsg_sw.length - 1)
{
msg_i++;
temp1 = newmsg_sw;
temp1 = temp1.split('');
msg_curr = msg_curr+temp1[msg_i];
cur_scrMessage.innerHTML = msg_curr;
setTimeout('shownews_ro()',100)
return;
}
msg_i = -1; msg_curr = "";
if (msg_cnt<newmsg_sw.length-1)
msg_cnt++;
else
msg_cnt=0;
setTimeout('shownews_ro()',3000)
}

