全部展開/全部摺疊  
                     inquarter  - 指令碼與圖表函數在此頁面  
                此函數會傳回 True ,前提是如果 timestamp  位於包含 base_date  的季度中。
                語法:    
                InQuarter 
 ( timestamp, base_date, period_no[, first_month_of_year] ) 
                
                傳回的資料類型:    布林
                在 Qlik Sense  中,布林值 true 值以 -1 代表,而 false 值以 0 代表。 
                
                    inquarter()  函數範圍的圖表
                    
                  
                換言之,inquarter()  函數將該年在 1 月 1 日和 12 月 31 日之間分為四個相等的季。您可以使用 first_month_of_year  引數變更哪個月視為應用程式 中的第一個月,季度將會根據該引數變更。base_date  函數識別哪一季應作為該函數的比較子使用。最後,該函數會在比較日期值與該季區段時,傳回布林值結果。
                什麼情況下使用
                inquarter()  函數會傳回布林值結果。通常,此函數類型將作為 if expression  中的條件使用。這根據日期是否發生於所選的季中傳回彙總 或計算。
                例如,inquarter()  函數可用來根據設備製造日期識別在季區段中製造的所有設備。
                
                    引數 
                     
                    
                     
                    
                    
                        
                     
                    
                        
                            timestamp 
                             
                            您要與 base_date  比較的日期。 
                         
                        
                            base_date 
                             
                            用來評估季度的日期。 
                         
                        
                            period_no 
                             
                            
                                季度可以使用 period_no  位移。period_no  是一個整數,其中值 0 表示包含 base_date  的季度。負值的 period_no  表示之前的季度,正值表示之後的季度。 
                             
                         
                        
                            first_month_of_year 
                             
                            如果要使用不起始於 1 月的 (會計) 年度,可在 first_month_of_year  中指定介於 2 和 12 之間的值。  
                         
                     
                
 
                您可以在 first_month_of_year  引數中使用下列值設定一年的第一個月:
                
                    first_month_of_year 值 
                     
                     
                    
                        
                            月 
                            值  
                         
                     
                    
                        
                            二月  
                            2 
                         
                        
                            三月  
                            3 
                         
                        
                            四月  
                            4 
                         
                        
                            五月  
                            5 
                         
                        
                            六月  
                            6 
                         
                        
                            七月  
                            7 
                         
                        
                            八月  
                            8 
                         
                        
                            九月 
                            9 
                         
                        
                            十月 
                            10 
                         
                        
                            十一月 
                            11 
                         
                        
                            十二月 
                            12 
                         
                     
                
 
                區域設定 
                除非另有說明,否則此主題中的範例皆使用下列日期格式:MM/DD/YYYY。日期格式是在資料載入指令碼的 SET DateFormat  陳述式中指定。由於地區設定和其他因素,您系統中的預設日期格式可能會不同。您可以變更以下範例中的格式,以滿足您的需求。或者,您可以在載入指令碼中變更格式,以符合這些範例。如需詳細資訊,請參閱 修改用於應用程式和指令碼的區域設定  。 
                應用程式中的預設地區設定是根據使用者設定檔。這些地區格式設定與 Qlik Cloud  使用者介面中顯示的語言無關。Qlik Cloud  顯示的語言將與您正在使用的瀏覽器相同。
                若您是應用程式建立者,可以為您建立的應用程式設定預設地區。如需詳細資訊,請參閱Qlik Cloud 分析 中設定用於建立應用程式和指令碼的偏好區域設定  。
                
                    函數範例 
                     
                     
                    
                        
                            範例   
                            結果   
                         
                     
                    
                        
                            inquarter ('01/25/2013', '01/01/2013', 0)   
                            傳回 TRUE  
                         
                        
                            inquarter ('01/25/2013', '04/01/2013', 0)   
                            傳回 FALSE  
                         
                        
                            inquarter ('01/25/2013', '01/01/2013', -1)   
                            傳回 FALSE  
                         
                        
                            inquarter ('12/25/2012', '01/01/2013', -1)   
                            傳回 TRUE  
                         
                        
                            nquarter ('01/25/2013', '03/01/2013', 0, 3)   
                            傳回 FALSE  
                         
                        
                            inquarter ('03/25/2013', '03/01/2013', 0, 3)   
                            傳回 TRUE  
                         
                     
                
 
                
                    範例 1 - 無其他引數 
                    載入指令碼和結果  
                            概覽
                            開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。 
                            載入指令碼包含:
                            
                            載入指令碼
                            SET DateFormat='MM/DD/YYYY'; 
Transactions: 
    Load 
       *, 
       inquarter (date,'05/15/2022', 0) as in_quarter 
       ; 
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 
];  
                            結果
                            載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度:
                            
                            
                                結果表格 
                                 
                                 
                                
                                    
                                        日期   
                                        in_quarter   
                                     
                                 
                                
                                    
                                        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   
                                        -1   
                                     
                                    
                                        6/15/2022   
                                        -1   
                                     
                                    
                                        6/26/2022   
                                        -1   
                                     
                                    
                                        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_quarter 」欄位使用 inquarter()  函數在前置 LOAD 陳述式中建立。第一個引數識別正在評估哪個欄位。第二個引數是 5 月 15 日的硬式編碼日期,這識別哪一季要定義為比較子。0  的 period_no  是最終引數,並確保 inquarter()  函數沒有比較分割的季之前或之後的季。
                            
                                以 5 月 15 日作為基底日期的 inquarter()  函數圖表
                                
                              
                            發生在 4 月 1 日和 6 月 30 日結束之間的任何交易都會傳回布林值結果 TRUE。
                          
                    範例 2 - period_no 
                    載入指令碼和結果  
                            概覽
                            開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。 
                            載入指令碼包含:
                            
                            載入指令碼
                            SET DateFormat='MM/DD/YYYY'; 
Transactions: 
    Load 
       *, 
       inquarter (date,'05/15/2022', -1) as previous_qtr 
       ; 
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 
];  
                            結果
                            載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度:
                            
                            
                                結果表格 
                                 
                                 
                                
                                    
                                        日期   
                                        previous_qtr   
                                     
                                 
                                
                                    
                                        1/7/2022   
                                        -1   
                                     
                                    
                                        1/19/2022   
                                        -1   
                                     
                                    
                                        2/5/2022   
                                        -1   
                                     
                                    
                                        2/28/2022   
                                        -1   
                                     
                                    
                                        3/16/2022   
                                        -1   
                                     
                                    
                                        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   
                                     
                                 
                            
 
                            使用 -1  作為 inquarter()  函數中的 period_no  引數,可將比較子季度的邊界往回偏移完整一季。5 月 15 日落在該年的第二季,因此該區段原本等於 4 月 1 日至 6 月 30 日該季。period_no  將此區段偏移負三個月,造成日期邊界變成 1 月 1 日到 3 月 30 日。
                            
                                以 5 月 15 日作為基底日期的 inquarter()  函數圖表
                                
                              
                            因此,發生在 1 月 1 日和 3 月 30 日之間的任何交易將會傳回布林值結果 TRUE。 
                          
                    範例 3 - first_month_of_year   
                    載入指令碼和結果  
                            概覽
                            開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。 
                            載入指令碼包含:
                            
                            不過,在此範例中,組織政策適用於 3 月作為會計年度第一個月份的情況。
                            載入指令碼
                            SET DateFormat='MM/DD/YYYY'; 
Transactions: 
    Load 
       *, 
       inquarter (date,'05/15/2022', 0, 3) as in_quarter 
       ; 
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 
];  
                            結果
                            載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度:
                            
                            
                                結果表格 
                                 
                                 
                                
                                    
                                        日期   
                                        previous_qtr   
                                     
                                 
                                
                                    
                                        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   
                                        -1   
                                     
                                    
                                        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   
                                     
                                 
                            
 
                            使用 3  作為 inquarter()  函數中的 first_month_of_year  引數,會將 3 月 1 日設為該年的開始,然後將該年分為幾個季。因此,該季區段為 3 月-5 月、6 月-8 月、9 月-11 月、12 月-2 月。值為 5 月 15 日的 base_date  將 3 月-5 月該季設定為該函數的比較子季度。
                            
                                將 3 月設定為該年第一個月的 inquarter()  函數圖表
                                
                              
                            因此,發生在 3 月 1 日和 5 月 31 日之間的任何交易將會傳回布林值結果 TRUE。
                          
                    範例 4 - 圖表物件範例 
                    載入指令碼和圖表運算式 
                            概覽
                            開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。 
                            載入指令碼包含:
                            
                            載入指令碼
                            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 
];  
                            結果
                            載入資料並開啟工作表。建立新的表格並將此欄位新增為維度:
                            
                            建立下列量值 ,以計算交易是否發生在與 5 月 15 日同一季:
                            =inquarter(date,'05/15/2022', 0)
                            
                                結果表格 
                                 
                                 
                                
                                    
                                        日期   
                                        in_quarter   
                                     
                                 
                                
                                    
                                        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   
                                        -1   
                                     
                                    
                                        6/15/2022   
                                        -1   
                                     
                                    
                                        6/26/2022   
                                        -1   
                                     
                                    
                                        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   
                                     
                                 
                            
 
                            會使用 inquarter()  函數在圖表中建立「in_quarter 」量值。第一個引數識別正在評估哪個欄位。第二個引數是 5 月 15 日的硬式編碼日期,這識別哪一季要定義為比較子。0  的 period_no  是最終引數,並確保 inquarter()  函數沒有比較分割的季之前或之後的季。 
                            
                                以 5 月 15 日作為基底日期的 inquarter()  函數圖表
                                
                                
                            發生在 4 月 1 日和 6 月 30 日結束之間的任何交易都會傳回布林值結果 TRUE。
                          
                    範例 5 - 情境 
                    載入指令碼和結果  
                            概覽
                            開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。 
                            載入指令碼包含:
                            
                                
                                    載入到稱為「Products 」之表格的資料集。
                                 
                                
                                    該表格含有下列欄位:
                                    
                                 
                             
                            這識別出由於設備錯誤,在 2022 年 5 月 15 日該季製造的產品有瑕疵。最終使用者希望圖表依季度名稱顯示製造的哪些產品狀態為「瑕疵」或「無缺失」,以及在該季製造的產品成本。
                            載入指令碼
                            Products: 
Load 
* 
Inline  
[ 
product_id,manufacture_date,cost_price 
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 
];  
                            結果
                            載入資料並開啟工作表。建立新的表格並將此欄位新增為維度:
                            =quartername(manufacture_date) 
                            
                            建立下列量值:
                            
                                
                                    =if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless') ,用來使用 inquarter()  函數識別哪些產品為瑕疵,那些為無缺失。
                                 
                                
                                    =sum(cost_price) ,用來顯示每個產品成本的總和。
                                 
                             
                            請執行下列動作:
                            
                                
                                    將量值的數字格式 設定為金錢 。
                                 
                                
                                    在外觀 之下,關閉總計 。
                                 
                             
                            
                                結果表格 
                                 
                                 
                                 
                                
                                    
                                        quartername(manufacture_date)   
                                        =if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless')   
                                        Sum(cost_price)   
                                     
                                 
                                
                                    
                                        2022 年 1 月至 3 月   
                                        無缺失   
                                        253.89   
                                     
                                    
                                        2022 年 4 月至 6 月   
                                        瑕疵   
                                        351.48   
                                     
                                    
                                        2022 年 7 月至 9 月   
                                        無缺失   
                                        446.31   
                                     
                                    
                                        2022 年 10 月至 12 月   
                                        無缺失   
                                        163.91   
                                     
                                 
                            
 
                            inquarter()  函數會在評估每個產品的製造日期時傳回布林值。對於在包含 5 月 15 日該季製造的任何產品,inquarter()  函數會傳回布林值 TRUE 並將產品標記為「瑕疵」。對於傳回 FALSE 值的任何產品 (因此這不是在該季製造),會將產品標記為「無缺失」。