//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：numberToXXBytes(obj,objlength)
// 機能						：指定文字数まで左側からから0で埋める
// 引数						：対象オブジェクト
// 戻り値					：して文字数まで0埋めした値
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function numberToXXBytes(obj,objlength)
{
	var s=obj.value;
	
	if(objlength >= obj.value.length && isNumberString(obj))
	{
		for(var i=0;i<(objlength-obj.value.length);i++)
		{
			s = "0" + s;
		}
		if(isNull(obj))
		{
			obj.value=s;
		}
		return s;
	}
	else
	// 文字数オーバー
	{
		return false;
	}
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isMailAddress(obj)
// 機能						：メールアドレスの形式チェック
// 引数						：data(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isMailAddress( data )
{
  //変数宣言
  var tempStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#()=~@{[]}:;+*_/?><-,." ;
  var thisChar ;
  var check = /.+@.+\..+/;

  //使用可能文字のチェック
  for( var i=0 ; i < data.length ; i++ ){
     thisChar = data.substring( i, i+1 ) ;

     if ( tempStr.indexOf(thisChar, 0) == -1 ){
        return false;
     }
  }

  //形式チェック
  if (!data.match(check)) return false;

  return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isKanaString(obj)
// 機能						：カナ(全角)チェック
// 引数						：data(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isKanaString( str )
{
  var i ;
  var strChar = "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロンパピプペポガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポァィゥェォッャュョヮヵヶーワヲヴ";
  var thisChar = "";

  for( i = 0 ; i < str.length ; i++ ){
    thisChar = str.substring( i, i+1 ) ;
    if(strChar.indexOf(thisChar,0) == -1){
       return(false);
    }
  }
  return( true ) ;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isHankakuString(obj)
// 機能						：カナ(半角)チェック
// 引数						：data(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isHankakuString( str )
{
  var i ;
  var strChar = "ｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾗﾘﾙﾚﾛﾜｦﾝｧｨｩｪｫｯｬｭｮﾞﾟ-ｰ";
  var thisChar = "";

  for( i = 0 ; i < str.length ; i++ ){
    thisChar = str.substring( i, i+1 ) ;
    if(strChar.indexOf(thisChar,0) == -1){
       return(false);
    }
  }
  return( true ) ;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isCodeString(obj)
// 機能						：英数字(一部記号含)チェック
// 引数						：str(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isCodeString( str )
{
  var i ;
  var strChar = "0123456789/-+-=_,.#%&?\\abcdefghrjklmnopqrstuvwxyzABCDEFGHRJKLMNOPQRSTUVWXYZ";
  var thisChar = "";

  for( i = 0 ; i < str.length ; i++ ){
    thisChar = str.substring( i, i+1 ) ;
    if(strChar.indexOf(thisChar,0) == -1){
       return(false);
    }
  }
  return( true ) ;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isNumberString(obj)
// 機能						：数字(一部記号含)チェック
// 引数						：str(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isNumberString( obj )
{
  var i ;
  var strChar = "0123456789";
  var thisChar = "";

  for( i = 0 ; i < obj.value.length ; i++ ){
    thisChar = obj.value.substring( i, i+1 ) ;
    if(strChar.indexOf(thisChar,0) == -1){
       return(false);
    }
  }
  return( true ) ;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isNumberString(obj)
// 機能						：空白文字チェック
// 引数						：moji(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isSpaceOrNull(moji) {
  var i;
  var cnt = 0;
  for (i=0; i < moji.length; i++) {
     if ( moji.charAt(i) != "" && moji.charAt(i) != " " && moji.charAt(i)!="　" )
        cnt++;
  }
  if ( cnt > 0 ) return false;
  else return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isLengthOver(obj)
// 機能						：入力文字数制限
// 引数						：moji(チェック対象データ),制限文字数
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isLengthOver(moji,standartlen) {
  var i;
  var len = 0;
  if ( getBytes(moji) > standartlen ) return true;
  else return false;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：getBytes(moji)
// 機能						：バイト数取得
// 引数						：s(チェック対象データ)
// 戻り値					：バイト数
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function getBytes(s) {
    var r = 0;
    for (var i = 0; i < s.length; i++) {
        var c = s.charCodeAt(i);
        // Shift_JIS: 0x0 〜 0x80, 0xa0  , 0xa1   〜 0xdf  , 0xfd   〜 0xff
        // Unicode  : 0x0 〜 0x80, 0xf8f0, 0xff61 〜 0xff9f, 0xf8f1 〜 0xf8f3
        if ( (c >= 0x0 && c < 0x81) || (c == 0xf8f0) || (c >= 0xff61 && c < 0xffa0) || (c >= 0xf8f1 && c < 0xf8f4)) {
            r += 1;
        } else {
            r += 2;
        }
    }
    return r;
}


//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：replace(data,before,after)
// 機能						：文字の置換
// 引数						：data,before,after(対照データ,変換対象文字列,変換後文字列)
// 戻り値					：置換後の文字列
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function replace(data,before,after)
{
  if(data){
    text = data;
    text = text.split(before);
    text = text.join(after);
    return text;
  }else{
    window.alert("エラー：文字が記入されていません");
  }
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：replace(data,before,after)
// 機能						：日付の妥当性チェック
// 引数  					：objYear,objMonth,objDay(チェック対象「年」,「月」,「日」)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isDate(objYear,objMonth,objDay){

  dayCheck_mes = new Array(7);
  dayCheck_mes[0] = "年には 数字 を入力してください。";
  dayCheck_mes[1] = "年には 西暦４桁を入力してください。";
  dayCheck_mes[2] = "月には 数字 を入力してください。";
  dayCheck_mes[3] = "月に正しい値を入力してください。";
  dayCheck_mes[4] = "日には 半角数字 を入力してください。";
  dayCheck_mes[5] = "日には 正しい値を入力してください。";
  dayCheck_mes[6] = "日が間違っています。##replace## 日までです。";

  var checkOK = "0123456789";
  var allValid = true;
  var checkStr = objYear.value;
  var ch;
  var i, j;

  for(i = 0; i < checkStr.length; i++){
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length){
      allValid = false;
      break;
    }
  }

  if(!allValid){
    alert(dayCheck_mes[0]);
    objYear.focus();
    return (false);
  }
  if(objYear.value.length != 4){
    alert(dayCheck_mes[1]);
    objYear.focus();
    return (false);
  }

  allValid = true;
  checkStr = objMonth.value;

  for(i = 0; i < checkStr.length; i++){
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length){
      allValid = false;
      break;
    }
  }

  if(!allValid){
    alert(dayCheck_mes[2]);
    objMonth.focus();
    return (false);
  }
  if(mon_chk(objMonth.value)){
    alert(dayCheck_mes[3]);
    objMonth.focus();
    return (false);
  }

  allValid = true;
  checkStr = objDay.value;

  for(i = 0; i < checkStr.length; i++){
    ch = checkStr.charAt(i);
    for(j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if(j == checkOK.length){
      allValid = false;
      break;
    }
  }

  if(!allValid){
    alert(dayCheck_mes[4]);
    objDay.focus();
    return (false);
  }
  if((objDay.value.length == "") || (objDay.value =="0") || (objDay.value =="00")){
    alert(dayCheck_mes[5]);
    objDay.focus();
    return (false);
  }
  var d=daymonth(objYear.value,objMonth.value);
  if(d < objDay.value){
    alert(replace(dayCheck_mes[6],"##replace##",d));
    objDay.focus();
    return(false);
  }

  return(true);
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：daymonth(year,month)
// 機能						：日付の範囲のチェック
// 引数  					：year 年 、month 月
// 戻り値					：指定月の日数
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function daymonth(year,month){
  day = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
  if(month==2 && leapyear(year)) return 29;
  return day[month-1];
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：leapyear(year)
// 機能						：うるう年のチェック
// 引数  					：year
// 戻り値					：boolean(true:うるう年,false:うるう年以外)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function leapyear(year){
  return year%4==0 && (year%100!=0 || year%400==0);
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：leapyear(year)
// 機能						：月の範囲
// 引数  					：year
// 戻り値				：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function mon_chk(month){
  if((month >= 1) && (month <= 12)) return false;
  return true;
}

//*****************************************************
//* FunctionName:	isNull()
//* Purpose:		未入力チェック
//* Date:			2001/11/30
//* Modified:
//* Parameter1:		入力フィールドのオブジェクト
//* Return:			true/false
//* Example:		isNull(document.MyForm.Num)
//*****************************************************
function isNull(inField){
	if (inField.value=="" || inField.length==0)
		return false;
	else
		return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isKaiinCd(obj)
// 機能						：社員コード入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isKaiinCd(obj){

	if(!isNull(obj))
	{
		alert("会員コードを入力してください");
		return false;
	}
	if(!isNumberString(obj))
	{
		alert("会員コードは数字で入力してください");
		return false;
	}
	if(isLengthOver(obj.value,8))
	{
		alert("会員コードは8文字で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isShimei1()
// 機能						：氏名(名字)入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isShimei1(obj)
{
	if(!isNull(obj.value))
	{
		alert("氏名は入力必須です");
		return false;
	}
	if(isLengthOver(obj.value,10))
	{
		alert("氏名は全角5文字(半角10文字)以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isShimei2()
// 機能						：氏名(名前)入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isShimei2(obj)
{
	if(!isNull(obj.value))
	{
		alert("氏名は入力必須です");
		return false;
	}
	if(isLengthOver(obj.value,10))
	{
		alert("氏名は全角5文字(半角10文字)以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isO_Shimei()
// 機能						：旧姓入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isO_Shimei(obj)
{
	if(isLengthOver(obj.value,16))
	{
		alert("旧姓は全角8文字(半角16文字)以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isShimeiKana1()
// 機能						：氏名ｶﾅ(名字)入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isShimeiKana1(obj)
{
	if(!isNull(obj.value))
	{
		alert("氏名ｶﾅ（半角） は入力必須です");
		return false;
	}
	if(!isHankakuString(obj.value))
	{
		alert("氏名ｶﾅ（半角） は半角で入力してください");
		return false;
	}
	if(isLengthOver(obj.value,20))
	{
		alert("氏名ｶﾅは半角10文字以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isShimeiKana2()
// 機能						：氏名(ｶﾅ)入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isShimeiKana2(obj)
{
	if(!isNull(obj.value))
	{
		alert("氏名ｶﾅ（半角） は入力必須です");
		return false;
	}
	if(!isHankakuString(obj.value))
	{
		alert("氏名ｶﾅ（半角） は半角で入力してください");
		return false;
	}
	if(isLengthOver(obj.value,20))
	{
		alert("氏名ｶﾅは半角10文字以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isO_ShimeiKana()
// 機能						：旧性ｶﾅ入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/11
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isO_Furigana(obj)
{
	if(!isHankakuString(obj))
	{
		alert("旧性ｶﾅ（半角） は半角で入力してください");
		return false;
	}
	if(isLengthOver(obj.value,16))
	{
		alert("旧性ｶﾅは半角16文字以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isShozokuCd(obj)
// 機能						：所属コード入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/04/15
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isShozokuCd(obj){

	if(!isNull(obj.value))
	{
		alert("所属コードは入力必須です");
		return false;
	}
	if(!isNumberString(obj))
	{
		alert("所属コードは数字で入力してください");
		return false;
	}
	if(isLengthOver(obj.value,8))
	{
		alert("所属コードは8文字で入力してください");
		return false;
	}
	obj.value = numberToXXBytes(obj,8);
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isJinShozokuCd(obj)
// 機能						：所属コード入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/05/13
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isJinShozokuCd(obj){

	if(!isNull(obj.value))
	{
		alert("固定所属にチェックをつけた場合、人件費所属コードは入力必須です");
		return false;
	}
	if(!isNumberString(obj))
	{
		alert("人件費所属コードは数字で入力してください");
		return false;
	}
	if(isLengthOver(obj.value,8))
	{
		alert("人件費所属コードは8文字で入力してください");
		return false;
	}
	obj.value = numberToXXBytes(obj,8);
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isPassword(data)
// 機能						：パスワードの形式チェック
// 引数						：obj(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isPassword( obj )
{
  //変数宣言
  var tempStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" ;
  var thisChar ;
	
  //使用可能文字のチェック
  for( var i=0 ; i < obj.length ; i++ ){
     thisChar = obj.substring( i, i+1 ) ;
     if ( tempStr.indexOf(thisChar, 0) == -1 ){
				alert("パスワードは英数字で入力してください");
        return false;
     }
  }
	if(!isNull(obj.value))
	{
		alert("パスワードを入力してください");
		return false;
	}
	// 4文字以下か8文字以上
	if( obj.value.length < 4 || obj.value.length > 8 )
	{
		alert("パスワードは4文字以上8文字以内で入力してください");
		return false;
	}

  return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isPostNo(data)
// 機能						：郵便番号の形式チェック
// 引数						：obj(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isPostNo( obj )
{
  //変数宣言
  var tempStr = "0123456789-" ;
  var thisChar ;
  var check = /.+@.+\..+/;
	
  //使用可能文字のチェック
  for( var i=0 ; i < obj.length ; i++ ){
     thisChar = obj.substring( i, i+1 ) ;

     if ( tempStr.indexOf(thisChar, 0) == -1 ){
				alert('郵便番号は数字及び｢-｣で入力してください');
        return false;
     }
  }
  return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isTel(data)
// 機能						：電話番号の形式チェック
// 引数						：obj(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/04/08
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isTel( obj )
{
  //変数宣言
  var tempStr = "0123456789-" ;
  var thisChar ;
	
  //使用可能文字のチェック
  for( var i=0 ; i < obj.length ; i++ ){
     thisChar = obj.substring( i, i+1 ) ;

     if ( tempStr.indexOf(thisChar, 0) == -1 ){
        return false;
     }
  }
  return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isJusho1(obj)
// 機能						：住所1入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/04/15
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isJusho1(obj){

	if(isLengthOver(obj.value,40))
	{
		alert("住所1は全角20文字(半角40文字)以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isJusho2(obj)
// 機能						：住所2入力形式チェック
// 引数						：対象オブジェクト
// 戻り値					：true：形式は正しい　false：形式は正しくない
// 作成日					：2004/04/15
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isJusho2(obj){

	if(isLengthOver(obj.value,40))
	{
		alert("住所2は全角20文字(半角40文字)以内で入力してください");
		return false;
	}
	return true;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime()
// 機能						：時間チェック
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pHH	- [object]	時間(HH)
//							：pMM	- [object]	時間(MM)
//	 						：pNece	- [boolean]	必須 true ／ 任意 false
//	 						：pName	- [string]  項目名称
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime(pKbn, pHH, pMM, pNece, pName) {

	// nullチェック 
	if ((isNull(pHH) == false) && (isNull(pMM) == false)) {
		if(pNece){
			alert("【"+pName+"】が入力されてません。");
			moveFocus(pHH);
			return false;
		} else {
			return true;
		}
	// nullチェック(時が未入力の場合)
	} else if  ((isNull(pHH) == false) && isNull(pMM)) {
		alert("【"+pName+"(時)】が入力されてません。");
		moveFocus(pHH);
		return false;
	// nullチェック(分が未入力の場合)
	} else if  ((isNull(pMM) == false) && isNull(pHH)) {
		alert("【"+pName+"(分)】が入力されてません。");
		moveFocus(pMM);
		return false;
	}

	// 文字チェック (時)
	if (checkTime_Hour(pHH) == false) {
		moveFocus(pHH);				
		return false;
	} 
	// 文字チェック (分)
	if (checkTime_Minutes(pKbn,pMM) == false) {
		moveFocus(pMM);				
		return false;
	} 
			
}	

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_StratEnd()
// 機能						：開始時間と終了時間チェック
// 引数						：pS_hh	- [object]	時間(HH)
//							：pS_mm	- [object]	時間(MM)
//							：pE_hh	- [object]	時間(HH)
//	 						：pE_mm	- [object]	時間(MM)
//							：pName-  [string]	項目名称
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime_StratEnd(pS_hh, pS_mm, pE_hh, pE_mm, pName) {

	var startTime	= pS_hh.value + pS_mm.value;
	var endTime		= pE_hh.value + pE_mm.value;
	//alert("startTime="+startTime.length+":endTime="+endTime.length);

	// nullチェック(双方とも未入力の場合)【正常】 
	if ((startTime.length <= 0 ) && (endTime.length <= 0 )) {
		return true;
	
	// nullチェック(開始時間が未入力の場合)【ERROR】
	} else if ((startTime.length <= 0 ) && (endTime.length > 0 )) {
		alert("【"+ pName+"開始】が入力されてません。");
		moveFocus(pS_hh);
		return false;
	// nullチェック(終了時間が未入力の場合)【ERROR】
	} else if ((startTime.length > 0 ) && (endTime.length <= 0 )) {
		alert("【"+ pName+"終了】が入力されてません。");
		moveFocus(pE_hh);
		return false;

	// nullチェック(双方とも入力で、且つ同一の時間が入力されてた場合)【ERROR】
	} else {
		if (startTime == endTime) {
			alert("【"+ pName +"開始】と【" +pName+ "終了】には異なる時刻を入力してください。");
			moveFocus(pS_hh);
			return false;
		}
		return true;
	}
			
}	
		


//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_StratKyukei()
// 機能						：開始(終了)時間と休憩(終了)時間チェック
// 引数						：pS_hh	- [object]	時間(HH)
//							：pS_mm	- [object]	時間(MM)
//							：pE_hh	- [object]	時間(HH)
//	 						：pE_mm	- [object]	時間(MM)
//							：pName1-  [string]	項目名称
//							：pName2-  [string]	項目名称
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime_StratKyukei(pS_hh, pS_mm, pE_hh, pE_mm, pName1, pName2) {
		
	var startTime	= pS_hh.value + pS_mm.value;	
	var endTime		= pE_hh.value + pE_mm.value;


	if (startTime == endTime) {
		alert("【"+pName1+"】と【"+pName2+"】には異なる時刻を入力してください。");
		moveFocus(pS_hh);
		return false;
	}	
	return true;		
		
}		
		
//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkOenCd_Umu()
// 機能						：応援有無チェック
// 引数						：pCd	- [object]	応援コード
//	 						：pHH	- [object]	応援開始時間
//							：pName-  [string]	項目名称
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkOenCd_Umu(pCD, pHH, pName) {
		
	if ((isNull(pCD) == false) && (isNull(pHH) == false)){
		return true;
	} else if (isNull(pCD) && (isNull(pHH) == false)){		 
		alert("【"+ pName+"開始】が入力されてません。");
		moveFocus(pHH);		
		return false;
			
	} else if ((isNull(pCD) == false) && isNull(pHH)){
		alert("【"+ pName+"店舗】が入力されてません。");
		moveFocus(pHH);		
		return false;

	}	
	return true;		
}				


//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkOenCd()
// 機能						：入力された応援コードが自所属コードでないかチェックする。
// 引数						：pCD	- [object]	所属コード
//	 						：pOenCD- [object]	応援コード
//							：pName-  [string]	項目名称
// 作成日					：2004/07/05 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkOenCd(pCD, pOenCD, pName){
			
	if (pCD.value == pOenCD.value){
		alert(pName+"に自所属コードは登録できません");
		moveFocus(pOenCD);	
		return false;
	} else  {
		return true;			
	}
}


//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkOenCd()
// 機能						：入力された応援コードが他の応援コードと同じでないかチェックする。
// 引数						：pOenCD1- [object]	応援コード1
//	 						：pOenCD2- [object]	応援コード2
//	 						：pOenCD3- [object]	応援コード3
//							：pName-  [string]	項目名称
// 作成日					：2004/07/05 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkOenCd3(pOenCD1, pOenCD2, pOenCD3, pName){
			
	if ((pOenCD1.value == pOenCD2.value) && (isNull(pOenCD2))){
		alert("同じ応援所属コードは登録できません");
		moveFocus(pOenCD2);	
		return false;
	} else if ((pOenCD2.value == pOenCD3.value) && (isNull(pOenCD2))){
		alert("同じ応援所属コードは登録できません");
		moveFocus(pOenCD3);	
		return false;
	} else if ((pOenCD1.value == pOenCD3.value) && (isNull(pOenCD3))){
		alert("同じ応援所属コードは登録できません");
		moveFocus(pOenCD3);	
		return false;	
	} else  {
		return true;			
	}
}		


//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_Minutes()
// 機能						：時間の文字チェック
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pMM	- [object]	時間(MM)
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
/*
function checkTime_Minutes(pKbn,pMM){
		
	var i, errMsg;
	var ArrMin;
	HonMin = new Array(7);
	HonMin[0] = "00";
	HonMin[1] = "10";
	HonMin[2] = "15";
	HonMin[3] = "20";
	HonMin[4] = "30";
	HonMin[5] = "40";
	HonMin[6] = "45";
	HonMin[7] = "50";
		
	TenMin = new Array(4);
	TenMin[0] = "00";
	TenMin[1] = "15";
	TenMin[2] = "30";
	TenMin[3] = "45";

	if (pKbn == '1') {	// --- 本社
		ArrMin = HonMin;
		errMsg = "分は00,10,15,20,30,40,45,50から入力して下さい。";
	} else {			// --- 店舗
		ArrMin = TenMin;
		errMsg = "分は00,15,30,45から入力して下さい。";
	}
	for(i = 0; i < ArrMin.length; i++){
		if (ArrMin[i] == pMM.value) {
			return true;
		}
	} 
	alert(errMsg);
	return false;
}	
*/
//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_Minutes()
// 機能						：時間の文字チェック
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pMM	- [object]	時間(MM)
// 戻り値					：true/false
// 作成日					：2004/08/13 　K.Nakayama
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime_Minutes(pKbn,pMM){
		
	var i, errMsg;
	var ArrMin;
	
	ArrMin = "59"
	errMsg = "分は" + ArrMin + "までの数値で入力して下さい。";

	if (ArrMin < pMM.value) {
		alert(errMsg);
		return false;
	}
	else{
		return true;
	}
}	


//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime2()
// 機能						：時間チェック
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pHH	- [object]	時間(HH)
//							：pMM	- [object]	時間(MM)
//	 						：pNece	- [boolean]	必須 true ／ 任意 false
//	 						：pName	- [string]  項目名称
// 戻り値					：true/false
// 作成日					：2004/06/02 　H.Takamatsu
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime2(pKbn, pHH, pMM, pNece, pName) {

	// nullチェック 
	if ((isNull(pHH) == false) && (isNull(pMM) == false)) {
		if(pNece){
			alert("【"+pName+"】が入力されてません。");
			moveFocus(pHH);
			return false;
		} else {
			return true;
		}
	// nullチェック(時が未入力の場合)
	} else if  ((isNull(pHH) == false) && isNull(pMM)) {
		alert("【"+pName+"(時)】が入力されてません。");
		moveFocus(pHH);
		return false;
	// nullチェック(分が未入力の場合)
	} else if  ((isNull(pMM) == false) && isNull(pHH)) {
		alert("【"+pName+"(分)】が入力されてません。");
		moveFocus(pMM);
		return false;
	}

	// 文字チェック (時)
	if (checkTime_Hour(pHH) == false) {
		moveFocus(pHH);				
		return false;
	} 
	// 文字チェック (分)
	if (checkTime_Minutes2(pKbn,pMM) == false) {
		moveFocus(pMM);				
		return false;
	} 
			
}	

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_Minutes2()
// 機能						：時間の文字チェック
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pMM	- [object]	時間(MM)
// 戻り値					：true/false
// 作成日					：2004/06/02 　H.Takamatsu
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime_Minutes2(pKbn,pMM){
		
	var i, errMsg;
	var ArrMin;
	HonMin = new Array(2);
	HonMin[0] = "00";
	HonMin[1] = "30";

	TenMin = new Array(4);
	TenMin[0] = "00";
	TenMin[1] = "15";
	TenMin[2] = "30";
	TenMin[3] = "45";

	if (pKbn == '30') {	// --- 本社
		ArrMin = HonMin;
		errMsg = "00,30から入力して下さい。";
	} else {			// --- 店舗
		ArrMin = TenMin;
		errMsg = "00,15,30,45から入力して下さい。";
	}
	for(i = 0; i < ArrMin.length; i++){
		if (ArrMin[i] == pMM.value) {
			return true;
		}
	} 
	alert(errMsg);
	return false;
}	

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_Hour()
// 機能						：時間の文字チェック
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pMM	- [object]	時間(MM)
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime_Hour(pHH){
		
	if (isNumberString(pHH) == false){
		alert("半角数字以外は入力しないで下さい。");
		return false;
	} else if (24 <= parseFloat(pHH.value)) {
		alert("23時以上は入力しないで下さい。");
		return false;			
	}
			
}
//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：checkTime_Hour24()
// 機能						：時間の文字チェック(24時まで入力可能)
// 引数						：pKbn	- [string]  所属区分（1:本社　2:店舗）
//							：pMM	- [object]	時間(MM)
// 戻り値					：true/false
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function checkTime_Hour24(pHH){
		
	if (isNumberString(pHH) == false){
		alert("半角数字以外は入力しないで下さい。");
		return false;
	} else if (25 <= parseFloat(pHH.value)) {
		alert("24時以上は入力しないで下さい。");
		return false;			
	}
			
}	
//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：moveFocus()
// 機能						：エラーにフォーカスを当てる
// 引数						：
// 作成日					：2004/05/11 　H.kenmochi
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function moveFocus(vObj) {
			
	vObj.focus();
	vObj.select();
			
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：Win_Close()
// 機能						：検索（社員）ボタン押下時処理
// 引数						：
// 戻り値					：なし
// 作成日					：2004/04/15
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function Win_Close() {
	if(winShozoku){
		if (!winShozoku.closed) { winShozoku.close(); }
	}
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isKinsiString(obj)
// 機能						：禁則文字チェック
// 引数						：str(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/08/12
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isKinsiString(obj)
{
	var i ;
	var strChar = ",;<>&";
	var thisChar = "";

	for( i = 0 ; i < obj.value.length ; i++ ){
		thisChar = obj.value.substring( i, i+1 ) ;
		if(strChar.indexOf(thisChar,0) != -1){
			alert("[ , ]カンマ　[ ; ]セミコロン　[ < ][ > ][ & ] は使用できません。")
			obj.focus();
			return(false);
		}
	}
	return( true ) ;
}

//****1*********2*********3*********4*********5*********6*********7*********
// 関数名					：isSpaceString(obj)
// 機能						：半角スペースチェック
// 引数						：str(チェック対象データ)
// 戻り値					：boolean(true:形式は正しい,false:形式は正しくない)
// 作成日					：2004/08/26
// 更新日					：
// 備考						：
//****1*********2*********3*********4*********5*********6*********7*********
function isSpaceString(obj)
{
	var i ;
	var strChar = " ";
	var thisChar = "";

	for( i = 0 ; i < obj.length ; i++ ){
		thisChar = obj.substring( i, i+1 ) ;
		if(strChar.indexOf(thisChar,0) != -1){
			return(false);
		}
	}
	return( true ) ;
}
////////////////////////////////////////////////////////////////////////////////
// 機能  ：日付(年)入力補助
// 引数  ：obj.value(変換前)
// 戻り値：obj.value(変換後)
////////////////////////////////////////////////////////////////////////////////
function inputSupportYear( obj )
{
  switch(obj.value)
  {
    case '0':
      obj.value='2001';
      break;
    case '1':
      obj.value='2001';
      break;
    case '2':
      obj.value='2002';
      break;
    case '3':
      obj.value='2003';
      break;
    case '4':
      obj.value='2004';
      break;
    case '5':
      obj.value='2005';
      break;
    case '6':
      obj.value='2006';
      break;
    case '7':
      obj.value='2007';
      break;
    case '8':
      obj.value='2008';
      break;
    case '9':
      obj.value='2009';
      break;
    case '00':
      obj.value='2001';
      break;
    case '01':
      obj.value='2001';
      break;
    case '02':
      obj.value='2002';
      break;
    case '03':
      obj.value='2003';
      break;
    case '04':
      obj.value='2004';
      break;
    case '05':
      obj.value='2005';
      break;
    case '06':
      obj.value='2006';
      break;
    case '07':
      obj.value='2007';
      break;
    case '08':
      obj.value='2008';
      break;
    case '09':
      obj.value='2009';
      break;
    case '000':
      obj.value='2001';
      break;
    case '001':
      obj.value='2001';
      break;
    case '002':
      obj.value='2002';
      break;
    case '003':
      obj.value='2003';
      break;
    case '004':
      obj.value='2004';
      break;
    case '005':
      obj.value='2005';
      break;
    case '006':
      obj.value='2006';
      break;
    case '007':
      obj.value='2007';
      break;
    case '008':
      obj.value='2008';
      break;
    case '009':
      obj.value='2009';
      break;
    default :
      break;
  }
}
