function	chgMode(formName) {
	var	value,mode,len,defa	;
	for	( part = 0 ; part < csiMode.length ; part ++ ) {
		if	(csiName[part] != formName) continue ;
		fieldsEN	=	eval('fieldsEN'+part) ;
		fieldsMODE	=	eval('fieldsMODE'+part) ;
		csiButton	=	eval('csiButton'+part) ;
		csiOrButton	=	eval('csiOrButton'+part) ;
		csiImage	=	eval('csiImage'+part) ;
		csiOrImage	=	eval('csiOrImage'+part) ;
		csiMode[part]	=	1 ;
		csiOrMode[part]	=	0 ;
		skip			=	false ;
		for	(x = 0 ; x < fieldsEN.length ; x++) {
			if	(skip)	break ;
			fieldSignal	=	true ;
			fieldResult	=	false ;
			if		(fieldsEN[x].indexOf('csiMode') >= 0)	fieldResult	=	eval(fieldsEN[x])
			else if (fieldsEN[x].indexOf('csiOrMode') >= 0)	fieldResult	=	eval(fieldsEN[x])
			else if	(eval('document.' + formName + '.' + fieldsEN[x])) {
				value		=	eval('document.' + formName + '.' + fieldsEN[x]).value ;
				mode		=	eval('document.' + formName + '.' + fieldsEN[x]).checked ;
				len			=	eval('document.' + formName + '.' + fieldsEN[x]).length ;
				if		(fieldsMODE[x] == 'true')	fieldResult	= true ;
				else if	(fieldsMODE[x] == 'int')	fieldResult	= (value > 0) ? true : false ;
				else if (fieldsMODE[x] == '1')		fieldResult	= value.length ;
				else if	(len > 0)	{	//	For Radio objects
					if	(fieldsMODE[x] != false)	{
						fieldSignal	=	false ;
						for	(i = 0 ; i < len ; i++) {
							if	(eval('document.' + formName + '.' + fieldsEN[x])[i].checked &&
								 eval('document.' + formName + '.' + fieldsEN[x])[i].value == fieldsMODE[x])	fieldResult = true ;
						}
						if	(fieldResult == false)	skip	=	true ;
					}
					else	{
						for	(i = 0 ; i < len ; i++) {
							if		(eval('document.' + formName + '.' + fieldsEN[x])[i].checked == true	)	fieldResult = true ;
							else if	(eval('document.' + formName + '.' + fieldsEN[x])[i].selected == true &&
								 eval('document.' + formName + '.' + fieldsEN[x])[i].value != ''	)	fieldResult = true ;
						}
					}
				}
				else if (typeof(fieldsMODE[x]) == 'boolean')	fieldResult	=	mode ;

				if	(eval('document.img'+fieldsEN[x]) && fieldSignal)	{
					if	(fieldResult == false || fieldResult == 0)	{
						fieldResult	=	false ;
						if	(fieldResult != csiBalls[part * 100 + x].mode)	{
							eval('document.img'+fieldsEN[x]).src	=	redBall.src ;
							csiBalls[part * 100 + x].mode			=	fieldResult ;
						}
					}
					else							{
						fieldResult	=	true ;
						if	(fieldResult != csiBalls[x].mode)	{
							eval('document.img'+fieldsEN[x]).src	=	greenBall.src ;
							csiBalls[part * 100 + x].mode			=	fieldResult ;
						}
					}
				}
				if	(fieldResult == false || fieldResult == 0)	{
					$('div#div'+fieldsEN[x]).html('<FONT STYLE="color:red;font-size:11px">◎</FONT>') ;
				}
				else	{
					$('div#div'+fieldsEN[x]).html('<FONT STYLE="color:C0C0C0;font-size:11px">◎</FONT>') ;
				}
				// 欄位類別變更
				$('#' + formName).find('TABLE').find('TR#tr_' + fieldsEN[x] + ' TD.form_field')
					.each(function(){
						if		(fieldSignal && $(this).hasClass('status_normal') && (fieldResult == false || fieldResult == 0))	{
							$(this).removeClass('status_normal').addClass('status_warning') ;
						}
						else if	(fieldSignal && ($(this).hasClass('status_error') || $(this).hasClass('status_warning')) && fieldResult)	{
							$(this).removeClass('status_error').removeClass('status_warning').addClass('status_normal') ;
						}
					});
			}
			if		(fieldResult > 0)		{ csiMode[part] *= 1 ; }
			else if	(fieldResult == true)	{ csiMode[part] *= 1 ; }
			else if	(fieldResult == false)	{ csiMode[part] *= 0 ; }
			csiOrMode[part]	= fieldResult || csiOrMode[part] ;
		}
		//	整理全體比對過後的狀態
		if	(csiMode[part])	{
			for	( i = 0 ; i < csiButton.length ; i ++ ) {
				if	(eval('document.' + formName + '.CMD' + csiButton[i])) {
					eval('document.' + formName + '.CMD' + csiButton[i]).disabled = false ;
				}
				$(':button[name=CMD' + csiButton[i] + ']').attr('disabled',false).css('cursor','pointer').css('opacity',1).css('border','#000 solid 1px') ;
			}
			for	( i = 0 ; i < csiImage.length ; i ++ )	{
				if	(csiBalls[part * 100 + i].mode == false && eval('document.img'+csiImage[i])) {
					csiBalls[part * 100 + i].mode		=	true ;
					eval('document.img'+csiImage[i]).src=	greenBall.src ;
				}
				$('div#div'+csiImage[i]).html('<FONT STYLE="color:C0C0C0;font-size:11px">◎</FONT>') ;
				// 欄位類別變更
				$('#' + formName).find('TABLE').find('TR#tr_' + csiImage[i] + ' TD.form_field')
					.each(function(){
						if	(($(this).hasClass('status_error') || $(this).hasClass('status_warning')))	{
							$(this).removeClass('status_error').removeClass('status_warning').addClass('status_normal') ;
						}
					});
			}
		}
		else {
			for	( i = 0 ; i < csiButton.length ; i ++ ) {
				if	(eval('document.' + formName + '.CMD' + csiButton[i])) {
					eval('document.' + formName + '.CMD' + csiButton[i]).disabled = true ;
				}
				$(':button[name=CMD' + csiButton[i] + ']').attr('disabled',true).css('cursor','default').css('opacity',0.3).css('border','#888 solid 1px') ;
			}
			for	( i = 0 ; i < csiImage.length ; i ++ )	{
				if	(csiBalls[part * 100 + i].mode == true && eval('document.img'+csiImage[i])) {
					csiBalls[part * 100 + i].mode		=	false ;
					eval('document.img'+csiImage[i]).src	=	redBall.src ;
				}
				$('div#div'+csiImage[i]).html('<FONT STYLE="color:red;font-size:11px">◎</FONT>') ;
				// 欄位類別變更
				$('#' + formName).find('TABLE').find('TR#tr_' + csiImage[i] + ' TD.form_field')
					.each(function(){
						if	($(this).hasClass('status_normal'))	{
							$(this).removeClass('status_normal').addClass('status_warning') ;
						}
					});
			}
		}
		if	(csiOrMode[part])	{
			for	( i = 0 ; i < csiOrButton.length ; i ++ )	{
				if	(eval('document.' + formName + '.CMD' + csiOrButton[i])) {
					eval('document.' + formName + '.CMD' + csiOrButton[i]).disabled = false ;
				}
				$(':button[name=CMD' + csiButton[i] + ']').attr('disabled',false).css('cursor','pointer').css('opacity',1).css('border','#000 solid 1px') ;
			}
			for	( i = 0 ; i < csiOrImage.length ; i ++ )	{
				if	(csiBalls[part * 100 + i].mode == false && eval('document.img'+csiOrImage[i])) {
					csiBalls[part * 100 + i].mode		=	true ;
					eval('document.img'+csiOrImage[i]).src	=	greenBall.src ;
				}
				$('div#div'+csiOrImage[i]).html('<FONT STYLE="color:C0C0C0;font-size:11px">◎</FONT>') ;
				// 欄位類別變更
				$('#' + formName).find('TABLE').find('TR#tr_' + csiOrImage[i] + ' TD.form_field')
					.each(function(){
						if	(($(this).hasClass('status_error') || $(this).hasClass('status_warning')))	{
							$(this).removeClass('status_error').removeClass('status_warning').addClass('status_normal') ;
						}
					});
			}
		}
		else {
			for	( i = 0 ; i < csiOrButton.length ; i ++ )	{
				if	(eval('document.' + formName + '.CMD' + csiOrButton[i])) {
					eval('document.' + formName + '.CMD' + csiOrButton[i]).disabled = true ;
				}
				$(':button[name=CMD' + csiButton[i] + ']').attr('disabled',true).css('cursor','default').css('opacity',0.3).css('border','#888 solid 1px') ;
			}
			for	( i = 0 ; i < csiOrImage.length ; i ++ )	{
				if	(csiBalls[part * 100 + i].mode == true && eval('document.img'+csiOrImage[i])) {
					csiBalls[part * 100 + i].mode		=	false ;
					eval('document.img'+csiOrImage[i]).src	=	redBall.src ;
				}
				$('div#div'+csiOrImage[i]).html('<FONT STYLE="color:red;font-size:11px">◎</FONT>') ;
				// 欄位類別變更
				$('#' + formName).find('TABLE').find('TR#tr_' + csiOrImage[i] + ' TD.form_field')
					.each(function(){
						if	($(this).hasClass('status_normal'))	{
							$(this).removeClass('status_normal').addClass('status_warning') ;
						}
					});
			}
		}
	}
}
function initCsiBalls() {	//	單項最多允許 100 項欄位設定
	var	value,mode,len,defa	;
	for	( part = 0 ; part < csiMode.length ; part ++ ) {
		fieldsEN	=	eval('fieldsEN'+part) ;
		for (x = 0 ; x < fieldsEN.length ; x++) {
			csiBalls[part * 100 + x]	=	new csiBall(fieldsEN[x],false) ; // 先定義燈號物件
		}
	}
}
function	csiBall(name,mode) {
	this.name	=	name ;
	this.mode	=	mode ;
}
