2013年12月16日 星期一

[COGNOS] Cognos Report Studio Date Pattern



畢竟對於 Cognos Report Studio 不是那麼熟悉,處理 Layout 的日期顯示格式,花了一點時間摸索。基於從 Oracle 與 VB 習得的經驗,並不完全適用於 Cognos。

因為久了就會忘記,所以還是紀錄一下



我必須先抱怨一下 IBM,要不是 Cognos 給我錯誤的指引,或許不會搞那麼久。

我開發出來的 Cognos Report Studio 報表,若 SQL 欄位是日期型態,則報表與設的格式是Dec 17, 2013 12:00:00 AM。

這個並不符合我的使用者的閱讀習慣,同時我的欄位只需要日期,不需要時間,所以後面的 Time 舊顯得累贅。User 需要的格式,就只有 2013/12/17 這麼簡單。

Cognos 的 List Column,有 Data Format 的屬性,可以指定該欄位的資料型態。
 

其中,我要的 2013/12/17 樣式,顯然是 Date 型態


參數有不少,但在我的需求中,重要的其實是 Pattern 這個屬性
瞧瞧他的說明,所以如果我要 2013/12/17 這樣的格式,那 pattern 應該給 yyyy/mm/dd


結果,跑出來長這樣 ....,這個 00 的月份是怎麼回事?!





於是,我是了各式各樣的組合去做測試,我也不知道我花了多久時間,總之測到火氣都來了(可憐了我的鍵盤),才總算試出來,原來我希望的 2013/12/17,他的 Pattern 是 yyyy/MM/dd,大小寫有分!!


最後,還是放棄 Cognos 上面的說明,Google 找到了一篇說明,看這個表才是正確的
Symbol
Meaning
Presentation
Example
G
era designator
Text
AD
y
year
Number
1999
M
month in year
Text & Number
July & 07
d
day in month
Number
31
h
hour in am/pm (1-12)
Number
12
H
hour in day (0-23)
Number
0
m
minute in hour
Number
30
s
second in minute
Number
55
S
millisecond
Number
978
E
day in week
Text
Tuesday
D
day in year
Number
189
F
day of week in month
Number
2 (2nd Wed in July)
w
week in year
Number
27
W
week in month
Number
2
a
am/pm marker
Text
PM
k
hour in day (1-24)
Number
24
K
hour in am/pm (0-11)
Number
0
z
time zone
Text
Pacific Standard Time

沒有留言: