ユーザー定義フィールドの使用による 24 時間形式での時刻の出力

問題またはエラー: Campaign で 24 時間形式 (military time) を使用して時刻を出力するにはどのようにするのですか。

解決方法: 24 時間形式で出力するには、次のステートメントを使用して Campaign でユーザー定義フィールドを作成することができます。

if((string_seg(10, 11, Current_Time()) = 'PM' 
AND number(string_seg(1, 2, Current_Time()))< 12) , 
string_concat(format((number(string_seg(1, 2, Current_Time()))+ 12),2), 
string_seg(3, 8, Current_Time())), 
if ((string_seg(10, 11, Current_Time()) = 'AM' 
AND number(string_seg(1, 2, Current_Time())) = 12), 
string_concat('00', string_seg(3, 8, Current_Time())), 
string_concat(string_seg(1, 2, Current_Time()), 
string_seg(3, 8, Current_Time()))))
注: この例では、時刻が先行ゼロで (1:01:53 PM ではなく 01:01:53 PM) フォーマット設定されていることを想定しています。Windows オペレーティング・システムでは先行ゼロが提供されないことがありますが、UNIX では提供されます。

次の代替方式でも同じ結果が得られます。

StripHour = string_seg(1, 2, Current_time())
HourNum = number(StripHour)
StripPM = string_seg(10, 11, Current_time())
StripRest = string_seg(3, 8, Current_time())
if((StripPM = 'PM' AND HourNum < 12), 
string_concat(format((HourNum + 12),2), StripRest),
if ((StripPM = 'AM' AND HourNum = 12), string_concat('00', StripRest),
string_concat(Strip_Hour, StripRest)