致遠OA表單自定義函式(計算N年後今天的日期 )

2022-10-11 18:45:10 字數 923 閱讀 1892

需求背景

看到這個標題,可能好些人懵了,n年後的今天這麼簡單,還需要計算麼?

的確,人腦算很簡單,但是咱們的表單中……

前日,有人跟大表哥來電,就說客戶要根據檔案的歸檔日期和儲存年限,自動計算出檔案的銷毀日期。說白了,就是要計算出n年後同月同日那天的日期。貌似簡單,可是在咱們表單中,目前還真沒有找到快捷的方法計算出來,就因為公曆中有閏年。

但是,問題難不倒咱,試試咯。結果,兜兜轉轉,還是能得到想要的結果。

根據現有的函式和計算方式,需要增加3個引數:試算日期,試算日期年,試算日期誤差天數(實際使用時,這3個字段請勿顯示在表單檢視頁面中)。

計算公式設定如下:

1.試算日期:試算日期等於存檔日期加上儲存年限乘以365。

calcdate(,*365)

2.試算日期年:取出試算日期的年度(用來判斷這年是否閏年,注意2100年是平年)。

year()

3.試算日期誤差天數:用來計算試算日期和真實的銷毀日期之間相差多少天。

4.銷毀日期:用試算日期加上誤差天數。

calcdate(,)

最後,上圖!

對了,這個方法可不是萬能的!當儲存年限不大於110時,試算日期誤差天數計算才是正確的,即上述計算公式只適用於儲存年限在110年及以內的場景。

以上就是致遠oa表單計算n年後今天的日期的分享,指令碼用的語言是groovy 。

自定義實現strcmp,atoi,itoa函式

1.mystrcmp函式,字串比較 abc x abc abc ab aa 第乙個大於第二個則返回正數,相等返回0,第乙個小於第二個返回負數。include include intmystrcmp const char str1,const char str2 int tmp 0 while tmp...

DEDE自定義表單

1.專案需要提交表單 2.表單在 設定呢 發現後台頻道模型中有個自定義表單 自定義表單太麻煩了,唯一的好處就是用來新增欄位及管理提交資訊 列表模板 內容模板 發布模板 感覺跟專案修改起來太麻煩了 因為要寫整個頁面,而專案中這個頁面還有其它模組化部分,比如產品列表等,所以俺就直接放在templets ...

自定義表單驗證

判斷 號碼格式 judgephone function phone var isphone 0 9 0 9 if strtemp.test phone isphone.test phone else 這是判斷 號碼格式的方法,有移動形式和座機形式,符合標準返回1,不符合標準返回 1 格式 非必填 c...

Hibernate使用MySQL自定義函式

新建表 create table sys user id varchar 32 not null comment id name varchar 50 not null comment 登入名 parent id varchar 32 default null comment 父id primary...

Spark sparksql中使用自定義函式

中分別用物件導向和面向函式兩種寫法自定義了兩個函式 low2up 小寫轉大寫 up2low 大寫轉小寫 import org.apache.spark.sql.types.stringtype import org.apache.spark.sql.object sparksqlfunction s...