1. 程式人生 > >如何通過flow修正SharePoint Online時差問題

如何通過flow修正SharePoint Online時差問題

office365 flow sharepoint 工作流

大家好,今天跟大家分享一個flow和SharePoint(SPO)時差的問題。我們前面的博文分享過如何通過flow來制作請假審批工作流,那麽如果你的需求是需要申請人填寫請假的時間,這個時候你有可能會遇到這個問題。

當FLOW將SPO LIST中的時間獲取並發送郵件的時候,郵件中的時間會有時差的問題,此時我們應該如何處理。

首先我們來模擬一下問題的現象(當你的SPO LIST中有一項是需要填寫時間的項)

通過下面標黃的時間我們可以清楚的看到,當flow把審批請求通過郵件發送出來的時候時間是有問題的。接下來我們通過flow把時間糾正過來,這個過程需要根據你所處位置的實際情況計算一下時差是差幾個小時。

技術分享圖片

技術分享圖片

接下來我們調整一下flow的內容把時間修正過來,在獲取動態時間前面添加操作。(先獲取在使用)這個原則在flow裏面基本試用的。

技術分享圖片

我們現在要做的是修改時間,所以我們的連接器選擇“數據操作”

技術分享圖片

連接器選擇完,我們的操作內容選擇“數據操作 - 編輯”

技術分享圖片

打開“數據操作 - 編輯”後我們按照圖中提示,點擊“表達式”並在表達式中找到“日期和時間”選擇

“addHours(timestamp,hours,format?)”將小時數的整數值添加到傳入的字符串時間戳

技術分享圖片

當選擇完addHours()表達式後,光標會自動跳轉到括號內部,此時鼠標點擊“動態內容”將我們需要修改的時間添加進來,由於我的環境中SPO LIST項使用的中文所以會獲取一串數值,如果你的SPO LIST項是英文的話,看著會舒服一點。

技術分享圖片

在動態內容選擇完“開始時間”後,會自動跳轉回表達式欄,這時我們需要將表達式補充完整。

addHours(triggerBody()?[‘OData__x5f00__x59cb__x65f6__x95f4_‘],-8,‘yyyy/MM/dd HH:mm‘)

分解一下

addHours() 將小時數的整數值添加到傳入的字符串時間戳

triggerBody()?[‘OData__x5f00__x59cb__x65f6__x95f4_‘] 動態內容中的開始時間

-8 根據實際情況調整時差小時數

yyyy/MM/dd HH:mm 時間格式

接下來我們需要將數據操作做一下重命名,當然了這也不是必須要做的,主要是怕弄混了。

技術分享圖片

在重命名後,我們要將編輯後的數據添加到“發送審批電子郵件”中,將原有的選項刪除掉,換上我們剛剛做好的數據操作

技術分享圖片

點擊更新流,我們本次的調整工作就完成了,我們來看一下效果

技術分享圖片

技術分享圖片

好的,通過我們上面的調整已經可以看到現在郵件中的時間已經與SPO LIST中的時間一致了。本次分享與之前的分享多了一個表達式的使用,大家有時間可以看一下表達式的內容可以為我們的flow增加很多多樣性。


本文出自 “用文字記錄生活” 博客,請務必保留此出處http://jerrysay.blog.51cto.com/2988555/1983004

如何通過flow修正SharePoint Online時差問題