SAP Business Objects Web Intelligence (WebI) 中的時間顯示

在 SAP BusinessObjects Web Intelligence (WebI) 中,將「秒數」轉換為 HH:mm:ss 的格式,最快且最精準的方法是使用公式邏輯,分別計算出時、分、秒,再用 FormatNumber() 補足二位數。

假設原始秒數變數名稱為 [秒數],請建立一個新變數,並輸入以下公式:

轉換公式

SQL
=FormatNumber(Floor([秒數] / 3600); "00") + ":" + 
 FormatNumber(Floor(Mod([秒數]; 3600) / 60); "00") + ":" + 
 FormatNumber(Mod([秒數]; 60); "00")

新增一個變數,將公式中的 [秒數] 置換成要轉換的欄位值

image

公式邏輯拆解說明

這個公式主要由三個部分組成,並透過 + 號與冒號 ":" 串接:

  1. 小時 (HH):
    • Floor([秒數] / 3600):將總秒數除以 3600(1小時=3600秒),並使用 Floor() 無條件捨去取得整數小時。
    • FormatNumber(…; “00”):強制將數字顯示為二位數(例如:5 小時會變成 05)。
  2. 分鐘 (mm):
    • Mod([秒數]; 3600):先找出不滿 1 小時的剩餘秒數。
    • Floor(… / 60):再除以 60(1分鐘=60秒),無條件捨去取得整數分鐘。
    • FormatNumber(…; “00”):同樣確保顯示為二位數。
  3. 秒數 (ss):
    • Mod([秒數]; 60):求出除以 60 之後的餘數,即為剩餘的秒數。

注意事項

  • 如果您的秒數資料包含小數點(例如 125.5 秒),建議在公式最內層先對 [秒數] 使用 Floor() 或 Round() 處理,以避免計算分秒時出現非預期的微小誤差。
  • 轉換後的結果會變成文字(String)型態。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *