當前為10.0版本文檔,更多實例內容將在最新幫助文檔中展現,點選跳轉至 最新版幫助文檔

日期控件填報時自動匹配

1. 概述

1.1 問題描述

填報報表中,有兩個日期控件,當第一個日期控件選擇完成後,希望第二個日期控件能自動匹配日期,例如:改變前一個控件日期後,後一個控件的日期 +90 天。該如何實現呢?

8656308B-FA38-475C-9A32-DB64EE647A49.GIF

1.2 解決思路

方案一:在後一個日期控件所在單元格插入公式。

方案二:給前一個日期控件添加「編輯結束」事件,通過 JavaScript 實現。

2. 示例

2.1 報表設計

新建普通報表,A2、B2 單元格添加「日期控件」,設計表格樣式如下圖所示:

1611648611716473.png


2.2 方案一:插入公式

選中 B2 單元格,單擊右鍵,選擇「單元格元素>插入公式」,公式爲format(DATEDELTA(A2,90),"yyyy-MM-dd")。如下圖所示:

Snag_1b34223c.png

2.3 方案二:編輯結束事件

選中 A2 單元格,在「控件設置>事件」中添加「編輯結束」事件,輸入 JavaScript 代碼如下:

var date=new Date(this.getValue());
date.setDate(date.getDate() + 90); 
var newdate = FR.contentFormat(date, 'Dyyyy-MM-dd')
contentPane.setCellValue("B2",null,newdate);

步驟如下圖所示:

Snag_1b31925a.png

2.4 效果預覽

2.4.1 PC 端

保存報表,點擊「填報預覽」,效果同 1.1 節效果一緻。

2.4.2 移動端

注:方案二使用 JS 不支持移動端。

方案一 App 端和 HTML5 端均支持,效果如下圖所示:

CE8D6D46-6D53-4567-8E31-1CE0DED60329.GIF

3. 模板下載

已完成模板可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\JS實現填報日期控件自動匹配.cpt

點擊下載:JS實現填報日期控件自動匹配.cpt

附件列表


主題: 原簡體文檔
  • 有幫助
  • 沒幫助
  • 只是瀏覽

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

9s後關閉

反饋已提交

網絡繁忙