# monthsend - 스크립트 및 차트 함수

이 함수는 기준 날짜를 포함하는 월, 2개월, 분기, 4개월 기간 또는 6개월의 마지막 밀리초의 타임스탬프에 해당하는 값을 반환합니다. 또한 이전 기간 또는 다음 기간에 대한 타임스탬프를 찾을 수도 있습니다.

구문:

MonthsEnd(n\_months, date[, period\_no [, first\_month\_of\_year]])

**반환 데이터 유형:** dual

인수:

MonthsEnd 인수

| 인수 | 설명 |
| --- | --- |
| 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() 함수의 반환 값이 표시된 열이 포함됩니다.

예 4 결과

| 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 |