ActiveReportsでは、TextBoxコントロールのOutputFormatプロパティを使用して、日付、時刻、通貨をはじめとする数値に使用する文字列の出力書式を設定することができます。また、[出力書式の設定]ダイアログでも、国際通貨の値の選択や、定義済みのフォーマットおよび任意の.NET標準フォーマットを使用した出力書式の設定が可能です。これらのフォーマット(数値および日付/時刻フォーマット)に関する情報は、MSDNライブラリを参照してください。
メモ: ReportInfoコントロールのFormatStringプロパティには、RunDateTimeとPageNumberに対して、定義済みのフォーマットオプションが用意されています。詳細については、「ページ番号と日付の表示」を参照してください。
注意:
- OutputFormatプロパティの出力書式は、DataFieldプロパティに設定されたフィールドの値、またはValueプロパティにセットされた値に対して適用されます。Textプロパティに文字列データをセットした場合には適用されません。
- OutputFormatプロパティの書式設定が有効になるのは、データが数値型、または日付・時刻型の場合のみです。データに対して型が指定されていない場合や文字型(String)の場合は、そのデータが数値型(Double、)または日付・時刻型(DateTime)に変換可能なデータの時のみ、これらの型に自動的に変換した上で書式設定を反映します。これらの型に変換できないデータの場合、書式設定は反映されません。
OutputFormatプロパティでは、書式をセミコロン(;)で区切ることにより、TextBoxにセットされたデータの値に応じて出力書式を変更することができます。セミコロンで区切られた各セクションは、下記の書式を提供します。
- 1番目のセクションには、正数値に適用する書式を記述します。
- 2番目のセクションには、負数値に適用する書式を記述します。
- 3番目のセクションには、ゼロ(0)に適用する書式を記述します。
- 4番目のセクションには、Null値またはSystem.DBNull値に適用する書式を記述します。
メモ:
- セミコロンまたは書式を省略した場合は、1番目のセクション(正数値)に設定した書式が適用されます。
- OutputFormatプロパティでアンダースコア"_"を使用すると、アンダースコアの後ろに入力した文字の分のスペースが出力できます。たとえば、出力される値が負の数の時に括弧で値を囲いたい場合に、OutputFormatプロパティに「0.00_);(0.00)」のような値を設定すると、出力される正の値の右側には")"の分のスペースが出力されます。これにより、正と負の両方の値の小数点の位置を整列することができます。
- "#,###;▲#,###" (3桁ごとにカンマで区切り、値が負の場合は先頭に▲を付ける)
- "0.00;;#" (小数点第2位の桁まで出力し、ゼロの場合は何も出力しない)
- ";;;No Data" (データがNullの場合は"No Data"を出力)
日付:
- dddd, MMMM d, yyyy = 土曜日、12月25、2012
- dd/MM/yyyy = 25/12/2012
- d or dd = 日(数字書式)
- ddd = 曜日(短い文字列書式。例:土曜日は土になります)
- dddd = 曜日(文字列書式。例:土曜日)
- MM = 月(数字書式)
- MMM = 月(短い文字列書式。例:12月は12になります)
- MMMM = 月(文字列書式。例:12月)
- y or yy = 年(下2桁の書式。例:2012年は12になります)
- yyyy = 年(4桁の書式。例:2012)
- ggyy年M月d日=(文字列書式。例:平成30年04月09日)
- ggyy年M月=(文字列書式。例:平成30年04月)
時刻:
- hh:mm tt = 09:00 午前(ttについては、下記のttの説明を参照してください)
- HH:mm = 21:00(24時間表示)
- HH = 時(24時間表示)
- hh = 時(12時間表示)
- mm = 分
- ss = 秒
- tt = マシンに設定された午前と午後の記号(コントロールパネルの「地域と言語のオプション」で「地域のオプション」タグから<カスタマイズ>ボタンを押します。表示される「地域のオプションのカスタマイズ」の「時刻」タブに設定されている午前と午後の記号)
通貨および数字:
- 0 = 数字、またはゼロ
- # = 数字、または何も表示しません
- % = パーセント。文字列式を100倍します
- ¥¥#,##0 = \1,234,567
- ¥¥00.00 = \07.50
注意: "\"(円記号、またはバックスラッシュ)は定義済み文字のため、出力するには"\\"と2つ記述する必要があります。
関連トピック