1. 概述
1.1 版本
報表伺服器版本 | 功能變更 |
---|---|
11.0 | -- |
1.2 預期效果
在日期元件中選擇年月,可查詢到該月份下的天數和週。如下圖所示:
1.3 實現思路
使用 RANGE 公式和 DAYSOFMONTH 獲取該月的天數,並且使用元件的值連接起來;
使用 SWITCH 和 WEEKDAY 公式獲取該天是週幾。
2. 範例
2.1 公式介紹
公式 | 備註 |
---|---|
DAYSOFMONTH($time+"01") | 獲取日期元件的月份有多少天 |
RANGE(1, DAYSOFMONTH($time + "-01")) | 獲取日期的第一天到最後一天的日期 |
$time + "-" + FORMAT(A1, "#00") | 將前面獲取的天數和日期連接 |
SWITCH(WEEKDAY($time + "-" + FORMAT(A1, "#00")), "1", "週一", "2", "週二", "3", "週三", "4", "週四", "5", "週五", "6", "週六", "0", "週日") | 用 WEEKDAY 公式獲取當前天是週幾,並且用 SWITCH 公式轉成漢字展示 |
2.2 插入公式
在 FineReport 設計器中,點選「檔案>建立普通報表」;
1)右擊 A1 儲存格,選擇「儲存格元素>插入公式」,公式為:RANGE(1, DAYSOFMONTH($time + "-01")) 。
2)右擊 A2 儲存格,選擇「儲存格元素>插入公式」,公式為:$time + "-" + FORMAT(A1, "#00") 。
3)右擊 A3 儲存格,選擇「儲存格元素>插入公式」,公式為:SWITCH(WEEKDAY($time + "-" + FORMAT(A1, "#00")), "1", "週一", "2", "週二", "3", "週三", "4", "週四", "5", "週五", "6", "週六", "0", "週日")。
將儲存格內容置中顯示,併為這三個儲存格加上邊框(邊框自訂)。下圖為 A1 儲存格輸入公式的步驟,A2 和 A3 儲存格輸入公式的步驟與之相同。如下圖所示:
2.3 儲存格屬性
A1、A2、A3 儲存格內容置中顯示,並加上邊框(邊框自訂)。
左鍵選中 A1 儲存格,在右側屬性面板中選擇「儲存格屬性>擴展」,擴展方向選擇「橫向」擴展。如下圖所示:
2.4 日期元件
進入該範本的參數面板,向參數面板中拖入「日期元件」和「查詢按鈕」;
「日期元件」的元件名稱為 time ,元件值為 2019/10/01,格式選擇 yyyy-MM 。如下圖所示:
2.5 效果查看
儲存範本,點選「填報預覽」,效果如本文 1.1 節所示。
注:該方法不支援行動端。
注:表頭下面不能放字元,否則分頁會有錯列的情況。
3. 範本下載
點選下載範本:根據年月查詢月份的天和週.cpt