數據格式化

一、內容概述

在應用中,原始的數據格式經常不能滿足實際需求,這時就需要將數據進行格式化處理使其更符合需要。
比如圖中所示,將採購日期改成“年-月-日”格式,在未稅金額前面加上貨幣符號“¥”並去掉小數點後數字。

圖中的格式化效果可以透過屬性面板中的“數據格式”設置項實現,也可以透過函數運算式來實現。
運算式中常用的數據格式化函數有兩個:ToString和Format。

接下來我們就分別看一下如何使用屬性設置和數據格式化函數對數據進行格式化處理。

二、屬性設置與格式化函數

(1) 新建報表,添加數據集後,使用表格元件綁定數據欄位。

(2) 為了方便對比轉換效果,我們在“採購日期”和“未稅金額”分別增加兩列,並綁定同樣的數據欄位。

(4) 使用Format函數或ToString函數進行數據格式化,比如我們將採購日期顯示成“yyyy/MM/dd”格式,將未稅金額顯示成貨幣格式並且不顯示小數點後數位。

如果使用Format函數,則運算式為{Format([輸單日期(SYS_DATE)], “yyyy/MM/dd”)}和 {Format([未稅本位幣(AMTN)], “c0”)};

(5) 預覽報表,可見透過這兩種方式對數據進行格式化的效果是一致的。

提示
從格式化的步驟中可以看出,進行數據格式化的關鍵在於格式化參數的設定,如例子中使用了”yyyy/MM/dd”和”c0″。 除了這兩個以外,我們還可以使用下表中更多的格式化參數。 比如: ToString(“n2″)可以將數據轉換為帶有千分位元標識的數位格式,並且小數點後保留兩位。如果將n2改為n0,則表示不保留小數位數。 ToString(“p2″)可以將數據轉換為百分數格式,並且小數點後保留兩位。如果將p2改為p0,則表示不保留小數位數。
類型 字母 含義
數位類型 “C”或“c” 貨幣
“D”或“d” 數值
“E”或“e” 科學計數法
“F”或“f” 固定小數點
“G”或“g” 常規
“N”或“n” 數字
“P”或“p” 百分比
“R”或“r” 往返過程
“X”或“x” 十六進位
日期時間類型 “d” 短日期
“D” 長日期
“f” 完整日期/短時間
“F” 完整日期/長時間
“g” 普通日期/短時間
“G” 普通日期/長時間
“t” 短時間
“T” 長時間
“M”或“m” 月/日模式
“O”或“o” 往返日期
“R”或“r” RFC1123 模式
“s” 可排序日期
“u” 通用可排序日期
“U” 通用完整日期
“Y”或“y” 年月

三、格式化函數示例

一些場景中不能使用屬性設置進行格式化處理時,如處理運算式中的數據格式時,可以使用格式化函數來實現。

比如我們需要為表格添加一個表頭,以特定的數據格式來顯示查詢報表的時間和銷售總額,如圖所示。

此時便不能直接透過屬性設置來實現目標效果,只能使用格式化函數修改運算式中數據的格式。

使用的運算式為:報表生成日期:{Format(Today(), “yyyy年MM月dd日”)},訂單總未稅金額為:
{Format(Sum([未稅本位幣(AMTN)]), “c2”)}

返回頂端