'Nexacro-Function'에 해당되는 글 51건

  1. 2017.01.27 Nexacro.Date - 연도,년월,일자 검증

                         [  ◎ 연도,년월,일자 검증  ]

- 날짜 형식이 맞는지 확인
- 날짜에 대한 형식 체크
- 년월 형식이 맞는지 확인
- 두 개 일자 비교
- 두 개 년월 비교
- 두 개 년도 비교


/*******************************************************************************
 ★ 설명
    날짜 형식이 맞는지 확인
 ★ parameter
    sDate : yyyyMMdd형태의 날짜 ( 예 : "20121122" )
 ★ return
    - 날짜형식이 맞는 경우 = true
    - 날짜형식이 맞지 않는 경우 = false
    - sDate가 입력되지 않은 경우 = false
******************************************************************************/  

function gfn_IsDate(sDate)

{

 if( fn_IsNull(sDate) )  return false;

 

 if( sDate.length != 8 )

        return false;

 

 if( IsNum(sDate) != true )

        return false;

 

 var nMonth  = parseInt(sDate.substring(4,6), 10);

 var nDate  = parseInt(sDate.substring(6,8), 10);

 

   if( nMonth < 1 || nMonth > 12 )

        return false;

        

    if( nDate < 1 || nDate > LastDateNum(sDate) )

        return false;

 

    return true;

}

 

/******************************************************************************************
 * 기능 : 날짜에 대한 형식 체크
 * 인자 : sFdate   검사일자
 * 리턴 : 유효성반환 (날짜형식이 아닐경우 FLASE)
 * 예문 :
 *****************************************************************************************/

function gfn_DateCheck(sDate)

{

    sDate = sDate.replace(" ", "").replace("-", "").replace("/", "");

 

    if (isNumeric(sDate) == false || gfn_GetDay(sDate) == -1 /*|| datetime(sDate) == datetime("00000101")*/)

    {

        return false;

    }

 

    return true;

}

/******************************************************************************************
 * 기      능 : 년월 형식이 맞는지 확인
 * 함  수  명 : gfn_IsYM()
 * 인      자 : psYM
 * 반      환 : - 년월 형식이 맞으면 true
 *              - 년월 형식이 만지 않으면 false
 *****************************************************************************************/

 function gfn_IsYM(psYM){

    return gfn_IsDate(psYM || "01");

 }

 

/******************************************************************************************
 * 기      능 : 두 개 일자 비교
 * 함  수  명 : gfn_DateCompare
 * 인      자 : psFrom     : 시작일자
 *              psTo       : 종료일자
 *              psCompGubn : 비교 방법 (lessEqual : default, less)
 *              psMsg      : 오류시 메세지 조회 값
 * 반      환 : 시작일자 <= 종료일자  면 정상이면 true
 *               시작일자 <= 종료일자 그렇지 않으면 false
 *               psFrom, psTo : 값이 null이면 true
 * 참      고 :
 *****************************************************************************************/

function gfn_DateCompare(psFrom, psTo, psCompGubn, psMsg){

    // 1. 값 검증

    if (gfn_IsNull(psFrom) || gfn_IsNull(psTo)) return true;

    

    //2. 두 개 컬럼 대소 비교 (첫번째 일자 <= 두번째 일자)

    if (psCompGubn == "lessEqual" || gfn_IsNull(psCompGubn)){

        if (psFrom <= psTo){

            return true;

        }else{

            if (gfn_IsNotNull(psMsg)) alert(psMsg);

            return false;

        }

    }else if (psCompGubn == "less"){

        if (psFrom < psTo){

            return true;

        }else{

            if (gfn_IsNotNull(psMsg)) alert(psMsg);

            return false;

        }

    }

    

    return true;

}

 

/******************************************************************************************
 * 기      능 : 두 개 년월 비교
 * 함  수  명 : gfn_YMCompare
 * 인      자 : psFrom     : 시작년월
 *              psTo       : 종료년월
 *              psCompGubn : 비교 방법 (lessEqual : default, less)
 *              psMsg      : 오류시 메세지 조회 값
 * 반      환 : 시작년월 <= 종료년월  면 정상이면 true
 *               시작년월 <= 종료년월 그렇지 않으면 false
 *               psFrom, psTo : 값이 null이면 true
 * 참      고 :
 *****************************************************************************************/

function gfn_YMCompare(psFrom, psTo, psCompGubn, psMsg){

    return gfn_DateCompare(psFrom || '01', psTo || '01', psCompGubn, psMsg)

}

 

/******************************************************************************************
 * 기      능 : 두 개 년도 비교
 * 함  수  명 : gfn_YearCompare
 * 인      자 : psFrom     : 시작년도
 *              psTo       : 종료년도
 *              psCompGubn : 비교 방법 (lessEqual : default, less)
 *              psMsg      : 오류시 메세지 조회 값
 * 반      환 : 시작년도 <= 종료년도  면 정상이면 true
 *               시작년도 <= 종료년도 그렇지 않으면 false
 *               psFrom, psTo : 값이 null이면 true
 * 참      고 :
 *****************************************************************************************/

function gfn_YearCompare(psFrom, psTo, psCompGubn, psMsg){

    return gfn_DateCompare(psFrom || '0101', psTo || '0101', psCompGubn, psMsg)

}

 
 

  

 

Posted by 농부지기
,