monthsend - 스크립트 및 차트 함수
이 함수는 기준 날짜를 포함하는 월, 2개월, 분기, 4개월 기간 또는 6개월의 마지막 밀리초의 타임스탬프에 해당하는 값을 반환합니다. 또한 이전 기간 또는 다음 기간에 대한 타임스탬프를 찾을 수도 있습니다.
구문:
MonthsEnd(n_months, date[, period_no [, first_month_of_year]])
반환 데이터 유형: dual
인수:
인수 | 설명 |
---|---|
n_months | 기간을 정의하는 개월 수입니다. 정수 또는 정수로 처리되는 표현식으로, 1(inmonth() 함수와 동일), 2(2개월), 3(inquarter() 함수와 동일), 4(4개월 기간) 또는 6(6개월) 중 하나여야 합니다. |
date | 평가할 날짜입니다. |
period_no | 기간은 period_no, 정수 또는 정수로 처리되는 표현식으로 오프셋을 지정할 수 있습니다. 값 0은 base_date를 포함하는 기간을 나타냅니다. period_no가 음수 값일 경우 이전 기간, 양수 값일 경우 다음 기간을 나타냅니다. |
first_month_of_year |
1월에 시작되지 않는 (회계)연도를 사용하려는 경우 first_month_of_year에 2와 12 사이의 값을 지정하십시오. |
예 및 결과:
아래 예에서는 날짜 서식 DD/MM/YYYY를 사용합니다. 날짜 서식은 로드 스크립트 맨 위에서 SET DateFormat 문으로 지정됩니다. 이 예제의 서식을 필요에 따라 변경하십시오.
예 1:
monthsend(4, '19/07/2013')
31/08/2013을 반환합니다.
예 2:
monthsend(4, '19/10/2013', -1)
31/08/2013을 반환합니다.
예 3:
monthsend(4, '19/10/2013', 0, 2)
31/01/2014을 반환합니다.
연도가 2월부터 시작되기 때문입니다.
예 4:
예제 스크립트를 문서에 추가하고 실행합니다. 그런 다음, 결과를 보기 위해 결과 열에 나열된 필드를 문서의 시트에 추가합니다.
이 예에서는 2개월 기간을 1회 시프트한 각 송장 날짜에 대한 2개월 기간의 마지막 날짜의 끝을 찾습니다.
TempTable:
LOAD RecNo() as InvID, * Inline [
InvDate
28/03/2012
10/12/2012
5/2/2013
31/3/2013
19/5/2013
15/9/2013
11/12/2013
2/3/2014
14/5/2014
13/6/2014
7/7/2014
4/8/2014
];
InvoiceData:
LOAD *,
MonthsEnd(2, InvDate, 1) AS BiMthsEnd
Resident TempTable;
Drop table TempTable;
결과 테이블에는 원래 날짜와 MonthsEnd() 함수의 반환 값이 표시된 열이 포함됩니다.
InvDate | BiMthsEnd |
---|---|
28/03/2012 | 30/06/2012 |
10/12/2012 | 28/02/2013 |
5/2/2013 | 30/04/2013 |
31/3/2013 | 30/06/2013 |
19/5/2013 | 31/08/2013 |
15/9/2013 | 31/12/2013 |
11/12/2013 | 28/02/2014 |
2/3/2014 | 30/06/2014 |
14/5/2014 | 31/08/2014 |
13/6/2014 | 31/08/2014 |
7/7/2014 | 31/10/2014 |
4/8/2014 | 31/10/2014 |