# inmonthstodate 스크립트 및 차트 함수

이 함수는 타임스탬프가 `base_date`의 마지막 밀리초를 포함하여 월, 2개월, 분기, 4개월 기간 또는 6개월 기간에 속하는지 여부를 찾습니다. 또한 타임스탬프가 이전 기간 또는 다음 기간 내에 속하는지도 알아낼 수 있습니다.

구문:

InMonths (n\_months, timestamp, base\_date, period\_no[, first\_month\_of\_year ])

반환 데이터 유형: 부울

`inmonthstodate` 함수 다이어그램.

`inmonthstodate` 함수 다이어그램.

`inmonthstodate`inmonthstodate 함수 다이어그램. ![월별 누계 함수가 타임스탬프가 설정된 시간 세그먼트 내에 있는지 또는 외부에 있는지 식별하는 데 사용될 수 있는 방법을 보여주는 다이어그램.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthstodate-diagram1.png)

인수

| 인수 | 설명 |
| --- | --- |
| n\_months | 기간을 정의하는 개월 수입니다. 정수 또는 정수로 처리되는 표현식으로, 1(inmonth() 함수와 동일), 2(2개월), 3(inquarter() 함수와 동일), 4(4개월 기간) 또는 6(6개월) 중 하나여야 합니다. |
| timestamp | base\_date와 비교할 날짜입니다. |
| base\_date | 기간을 평가하는 데 사용되는 날짜입니다. |
| period\_no | 기간은 period\_no, 정수 또는 정수로 처리되는 표현식으로 오프셋을 지정할 수 있습니다. 값 0은 base\_date를 포함하는 기간을 나타냅니다. period\_no가 음수 값일 경우 이전 기간, 양수 값일 경우 다음 기간을 나타냅니다. |
| first\_month\_of\_year | 1월에 시작되지 않는 (회계)연도를 사용하려는 경우 first\_month\_of\_year에 2와 12 사이의 값을 지정하십시오. |

`inmonthstodate()` 함수에서 `base_date`는 특정 연도 세그먼트의 종료 지점 역할을 합니다.

예를 들어, 연도가 3차 세그먼트로 분할되고 `base_date`가 5월 15일인 경우 1월 초와 4월 말 사이의 타임스탬프는 부울 결과 FALSE를 반환합니다. 5월 1일과 5월 15일 사이의 날짜는 TRUE를 반환합니다. 연도의 나머지 날짜는 FALSE를 반환합니다.

`inmonthstodate` 함수의 부울 결과 범위 다이어그램.

`inmonthstodate` 함수의 부울 결과 범위 다이어그램.

`inmonthstodate`inmonthstodate 함수의 부울 결과 범위 다이어그램. ![inmonthstodate 함수의 부울 결과 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthstodate-diagram2.png)

함수에서 `n_month` 인수로 사용할 수 있는 연도의 세그먼트는 다음과 같습니다.

`n_month`n\_month 인수

| 기간 | 개월 수 |
| --- | --- |
| 월 | 1 |
| 2개월 | 2 |
| 분기 | 3 |
| 4개월 | 4 |
| 6개월 | 6 |

inmonthstodate를 사용하는 경우

`inmonthstodate()` 함수는 부울 결과를 반환합니다. 일반적으로 이 유형의 함수는 `if expression`의 조건으로 사용됩니다. `inmonthstodate()` 함수를 사용하여 평가하려는 기간을 선택할 수 있습니다. 예를 들어, 사용자가 특정 날짜까지의 월, 분기 또는 6개월 동안 제조된 제품을 식별할 수 있는 입력 변수를 제공합니다.

## 국가별 설정

달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다: MM/DD/YYYY. 날짜 형식은 데이터 로드 스크립트의 `SET DateFormat` 문에 지정됩니다. 기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다. 아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다. 또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다. 자세한 내용은 [응용 프로그램 및 스크립트에 대한 지역 설정 수정](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm)를 참조하십시오.

응용 프로그램의 기본 지역 설정은 사용자 프로필을 기반으로 합니다. 이러한 국가별 형식 설정은 Qlik Cloud 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Cloud는 사용 중인 브라우저와 동일한 언어로 표시됩니다.

응용 프로그램 작성자인 경우 만든 응용 프로그램의 기본 지역을 설정할 수 있습니다. 자세한 내용은 [Qlik Cloud 분석에서 앱 및 스크립트 만들기를 위한 기본 지역 설정 지정](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting)을 참조하십시오.

함수 예

| 예제 | 결과 |
| --- | --- |
| `inmonthstodate(4, '01/25/2013', '04/25/2013',<br>0)` | timestamp 값인 01/25/2013이 base\_date 값인 04/25/2013이 속하는 01/01/2013 ~ 04/25/2013의 4개월 기간 내에 포함되므로 True를 반환합니다. |
| `inmonthstodate(4, '04/26/2013', '04/25/2006',<br>0)` | 04/26/2013이 이전 예와 동일한 기간에서 벗어나므로 False를 반환합니다. |
| `inmonthstodate(4, '09/25/2005', '02/01/2006',<br>-1)` | True 값인 period\_no이 검색 기간을 역방향으로 4개월(-1 값)을 1회 시프트하므로 n-months를 반환합니다. 이렇게 하면 검색 기간이 01/09/2005 ~ 02/01/2006으로 지정됩니다. |
| `inmonthstodate(4, '04/25/2006', '06/01/2006',<br>0, 3)` | first\_month\_of\_year 값을 3으로 설정했으므로 True를 반환합니다. 이렇게 하면 검색 기간이 05/01/2006 ~ 06/01/2006 대신 03/01/2006 ~ 06/01/2006으로 지정됩니다. |

## 예 1 – 추가 인수 없음

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthstodate.htm)

#### 로드 스크립트 및 결과

개요

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* '`Transactions`'라는 테이블에 로드되는 2022년 트랜잭션 집합을 포함하는 데이터 집합.

* `DateFormat` 시스템 변수 `(MM/DD/YYYY)` 형식의 날짜 필드.

* 다음을 포함하는 선행 LOAD 문:

  * '`in_months_to_date`' 필드로 설정된 `inmonthstodate()` 함수. 이는 2022년 5월 15일까지 분기에 발생한 트랜잭션을 확인합니다.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthstodate(3,date,'05/15/2022', 0) as in_months_to_date 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* `date`
* `in_months_to_date`

결과 테이블

| 날짜 | 월별 누계 |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | -1 |
| 5/7/2022 | -1 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | 0 |
| 7/22/2022 | 0 |
| 7/23/2022 | 0 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

‘`in_months_to_date`’ 필드는 `inmonthstodate()` 함수를 사용하여 선행 LOAD 문에서 만들어집니다.

제공된 첫 번째 인수는 `3`이며, 연도를 분기 세그먼트로 나눕니다. 두 번째 인수는 평가 중인 필드를 식별합니다. 세 번째 인수는 5월 15일의 하드 코딩된 날짜이며 세그먼트의 끝 경계를 정의하는 `base_date`입니다. `period_no` `0`이 마지막 인수입니다.

추가 인수가 없는 `inmonthstodate` 함수 다이어그램.

추가 인수가 없는 `inmonthstodate` 함수 다이어그램.

추가 인수가 없는 `inmonthstodate`inmonthstodate 함수 다이어그램. ![inmonthstodate 함수에 의해 TRUE로 식별되는 트랜잭션 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthstodate-diagram2.png)

4월 1일과 5월 15일 사이에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다. 해당 기간 이외의 트랜잭션 날짜는 FALSE를 반환합니다.

## 예 2 – period\_no

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthstodate.htm)

#### 로드 스크립트 및 결과

개요

첫 번째 예와 동일한 데이터 집합 및 시나리오가 사용됩니다.

그러나 이 예에서 작업은 트랜잭션이 5월 15일 이전 분기에 발생했는지 여부를 확인하는 필드 '`previous_qtr_to_date`'를 만드는 것입니다.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthstodate(3,date,'05/15/2022', -1) as previous_qtr_to_date 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* `date`

* `previous_qtr_to_date`

결과 테이블

| 날짜 | 이전\_분기\_현재까지 |
| --- | --- |
| 1/7/2022 | -1 |
| 1/19/2022 | -1 |
| 2/5/2022 | -1 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | 0 |
| 7/22/2022 | 0 |
| 7/23/2022 | 0 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

`inmonthstodate()` 함수에서 `period_no` 인수로 `-1`을 사용하면 이 함수는 비교 연도 세그먼트의 경계를 1/4만큼 시프트합니다.

5월 15일은 연도의 2분기에 속하므로 이 세그먼트는 초기에 4월 1일과 5월 15일 사이에 해당합니다. `period_no` 인수는 이 세그먼트를 3개월 뒤로 오프셋합니다. 날짜 경계는 1월 1일 ~ 2월 15일입니다.

period\_no가 -1로 설정된 `inmonthstodate` 함수 다이어그램.

period\_no가 -1로 설정된 `inmonthstodate` 함수 다이어그램.

period\_no가 -1로 설정된 `inmonthstodate`inmonthstodate 함수 다이어그램. ![period_no 인수가 -1로 설정된 트랜잭션 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthstodate-example2-diagram.png)

따라서 1월 1일과 2월 15일 사이에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다.

## 예 3 – first\_month\_of\_year

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthstodate.htm)

#### 로드 스크립트 및 결과

개요

첫 번째 예와 동일한 데이터 집합 및 시나리오가 사용됩니다.

이 예에서 조직 정책은 회계 연도의 첫 번째 달이 되는 3월입니다.

2022년 5월 15일까지 같은 분기에 발생한 트랜잭션을 확인하는 필드 '`in_months_to_date`'를 만듭니다.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthstodate(3,date,'05/15/2022', 0,3) as in_months_to_date 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* `date`

* `in_months_to_date`

결과 테이블

| 날짜 | 이전\_분기\_현재까지 |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | -1 |
| 4/1/2022 | -1 |
| 5/7/2022 | -1 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | 0 |
| 7/22/2022 | 0 |
| 7/23/2022 | 0 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

`inmonthstodate()` 함수에서 `first_month_of_year`인수로 `3`을 사용하면 이 함수는 3월 1일에 연도를 시작한 다음 제공된 첫 번째 인수를 기준으로 연도를 분기로 나눕니다. 따라서 분기 세그먼트는 다음과 같습니다.

* 3월-5월

* 6월-8월

* 9월-11월

* 12월-2월

그런 다음 `base_date`가 5월 15일이면 끝 경계가 5월 15일로 설정되어 3월-5월 분기가 세그먼트로 분할됩니다.

3월을 연도의 첫 번째 달로 설정한 `inmonthstodate` 함수 다이어그램.

3월을 연도의 첫 번째 달로 설정한 `inmonthstodate` 함수 다이어그램.

3월을 연도의 첫 번째 달로 설정한 `inmonthstodate`inmonthstodate 함수 다이어그램. ![연도의 첫 번째 달을 3월로 설정한 트랜잭션 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthstodate-example3-diagram.png)

따라서 3월 1일에서 5월 15일 사이에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환하고 날짜가 이 경계를 벗어난 트랜잭션은 FALSE 값을 반환합니다.

## 예 4 – 차트 예

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthstodate.htm)

#### 로드 스크립트 및 차트 표현식

개요

첫 번째 예와 동일한 데이터 집합 및 시나리오가 사용됩니다.

이 예에서 데이터 집합은 변경되지 않고 응용 프로그램에 로드됩니다. 5월 15일과 같은 분기에 트랜잭션이 발생했는지 여부를 응용 프로그램의 차트에서 측정값으로 결정하는 계산을 만드는 작업입니다.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
						 
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 이 필드를 차원으로 추가합니다.

`date`

트랜잭션이 5월 15일과 같은 분기에 발생했는지 여부를 계산하려면 다음 측정값을 만듭니다.

`=inmonthstodate(3,date,'05/15/2022', 0)` ` `

결과 테이블

| 날짜 | =월별 누계(3,date,'05/15/2022', 0) |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | -1 |
| 5/7/2022 | -1 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | 0 |
| 7/22/2022 | 0 |
| 7/23/2022 | 0 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

`‘in_months_to_date`' 측정값은 `inmonthstodate()` 함수를 사용하여 차트에 만들어집니다.

제공된 첫 번째 인수는 `3`이며, 연도를 분기 세그먼트로 나눕니다. 두 번째 인수는 평가 중인 필드를 식별합니다. 세 번째 인수는 하드 코딩된 날짜 5월 15일이며 세그먼트의 끝 경계를 정의하는 `base_date`입니다. `period_no` `0`이 마지막 인수입니다.

분기 세그먼트가 있는 `inmonthstodate` 함수 다이어그램.

분기 세그먼트가 있는 `inmonthstodate` 함수 다이어그램.

분기 세그먼트가 있는 `inmonthstodate`inmonthstodate 함수 다이어그램. ![TRUE 부울 값을 반환하는 트랜잭션 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthstodate-example4-diagram.png)

4월 1일과 5월 15일 사이에 발생하는 모든 트랜잭션은 TRUE의 부울 결과를 반환합니다. 해당 세그먼트 이외의 트랜잭션 날짜는 FALSE를 반환합니다.

## 예 5 – 시나리오

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthstodate.htm)

#### 로드 스크립트 및 결과

개요

이 예에서 데이터 집합은 'Sales'라는 테이블에 로드됩니다. 테이블에는 다음 필드가 포함됩니다.

* 제품 ID

* 제품 유형

* 판매 날짜

* 판매 가격

최종 사용자는 2022년 12월 24일까지의 기간에 판매된 제품의 판매량을 제품 유형별로 표시하는 차트를 원합니다. 사용자는 이 기간의 길이를 정의할 수 있기를 원합니다.

로드 스크립트

```
SET vPeriod = 1; 

Products: 
Load 
* 
Inline  
[ 
product_id,product_type,sales_date,sales_price 
8188,product A,'9/19/2022',37.23 
8189,product D,'10/27/2022',17.17 
8190,product C,'10/30/2022',88.27 
8191,product B,'10/31/2022',57.42 
8192,product D,'11/16/2022',53.80 
8193,product D,'11/28/2022',82.06 
8194,product A,'12/2/2022',40.39 
8195,product B,'12/5/2022',87.21 
8196,product C,'12/15/2022',95.93 
8197,product B,'12/16/2022',45.89 
8198,product C,'12/19/2022',36.23 
8199,product D,'12/22/2022',25.66 
8200,product D,'12/23/2022',82.77 
8201,product A,'12/24/2022',69.98 
8202,product A,'12/24/2022',76.11 
8203,product B,'12/26/2022',25.12 
8204,product B,'12/27/2022',46.23 
8205,product B,'12/27/2022',84.21 
8206,product C,'12/28/2022',96.24 
8207,product D,'12/29/2022',67.67 
]; 
```

결과

데이터를 로드하고 시트를 엽니다.

로드 스크립트 시작 시 변수 입력 컨트롤에 연결된 변수 vPeriod가 만들어집니다.

다음과 같이 하십시오.

1. 자산 패널에서 차트를 클릭합니다.

2. 대시보드 개체 아래에서 변수 입력을 시트 위로 끕니다.

3. 차트의 제목을 입력합니다.

4. 변수에서 이름으로 vPeriod를 선택하고 드롭다운으로 표시할 개체를 설정합니다.

5. 값에서 동적 값을 클릭합니다. 다음을 입력합니다.

   ```
   ='1~month|2~bi-month|3~quarter|4~tertial|6~half-year'.
   ```

6. 시트에 새 테이블을 추가합니다.

7. 속성 패널의 데이터에서 차원으로 product\_type을 추가합니다.

8. 다음 표현식을 측정값으로 추가합니다.

   =sum(if(inmonthstodate($(vPeriod),sales\_date,makedate(2022,12,24),0),sales\_price,0))

9. 측정값의 숫자 형식을 화폐로 설정합니다.

결과 테이블

| product\_type | =sum(if(월별 누계($(vPeriod),sales\_date,makedate(2022,12,24),0),sales\_price,0)) |
| --- | --- |
| 제품 A | $186.48 |
| 제품 B | $190.52 |
| 제품 C | $220.43 |
| 제품 D | $261.46 |

inmonthstodate() 함수는 사용자 입력을 해당 인수로 사용하여 연도의 시작 세그먼트 크기를 정의합니다.

이 함수는 각 제품의 판매 날짜를 inmonthstodate() 함수의 두 번째 인수로 전달합니다. 12월 24일을 inmonthstodate() 함수의 세 번째 인수로 사용하면 12월 24일까지 정의된 기간에 발생한 판매 날짜가 있는 제품은 부울 값 TRUE를 반환합니다. 합계 함수는 이 제품들의 판매액을 더합니다.