2014-05-23 4 views
2

나는 휴일 날짜를 볼 수 있습니다. 그리고 내 휴일 날짜 목록과 다른 날짜 필드가 있어야합니다. 그래서 검사를 위해 유효성 검사기를 만들었습니다.날짜와 날짜 비교

이렇게하면 수식 언어에서 잘 작동하지만 xpages에는 이상한 날짜 형식이 있기 때문에 비교할 수 없습니다.

+0

보기에서 날짜를 serialize하고 문자열로 비교하여 내 문제를 해결했습니다. 이것은 잘 작동하지만 그것을 할 수있는 적절하고 실용적인 방법인지 알고 싶습니다. var dHolidays = @DbColumn (@DbName(), "(lookupHolidaySerialized)", 1); sValue = @Right (@Text (100 + @ Day (value)), 2) + "." + @ Right (@Text (100 + @ Month (value)), 2) + "." + @ 텍스트 (@Year (value)); ! @IsMember (sValue, dHolidays) – senbon

답변

1

당신은 문자열로 날짜 값을 변환 java.text.SimpleDateFormat을 사용할 수 있으며 validateExpression에서 그들을 비교 :

var sdf = new java.text.SimpleDateFormat("dd/MM/yyyy"); 
    var dHolidays = @DbColumn(@DbName(),"(lookupHoliday)", 1); 
    var newDate = sdf.format(value); 
    for (var i=0; i < dHolidays.length; i++) { 
     if (sdf.format(dHolidays[i]) === newDate) { 
      return false; 
     } 
    } 
    return true; 

당신은보기의 첫 번째 열의 일반 노트 날짜 (문자열이 아니라)이 방법을 나열 할 수 있습니다.

+0

날짜를 미리 형식화하는 것이 좋습니다. 그것은 나에게 많은 도움이 될 것입니다. – senbon