Visual Basic の関数

SunSystems Reporting Services では Visual Basic (VB) のさまざまな関数を使用できます。使用可能な関数の一例を次に示します。

  • 全般
  • 日付
  • 決定

一般的な関数

よく使用される一般的な関数と演算子は次のとおりです。

Visual Basic (VB) の一般的な関数 説明
ABS(Expression) 式の絶対値を返します。
MOD RowNumber(Nothing) MOD 2 の式を使って、データセットの偶数行と奇数行を決めることができます。
MID, LEFT, RIGHT, LEN and TRIM テキストデータを操作する文字列関数です。
LCASE, UCASE 文字列を小文字または大文字に変換します。
FORMAT(Expression, "Standard") 数値を標準の数値書式に変換します。
CSTR, CDATE, CDBL 式を文字列、日付、Double 型の数値に変換します。
注: CDBL 関数の中に IF 文を含めることによって、数値を返すと予想される複雑な IF 文を変換しなければならない場合があります。
ME.Value テキストボックスの値によって条件が決まる場合に、テキストボックスの現在の値を返します。可視設定や条件付き書式設定で便利です。

日付関数

一般的な日付関数は次のとおりです。

日付関数 説明
DAY(Date) 日付を表す 1 - 31 の整数型の値を返します。
MONTH(Date) 月を表す 1 - 12 の整数型の値を返します。
MONTHNAME(Date) 月の名前を返します (例: 9 月)。
WEEKDAY(Date) 曜日を表す 1 (日曜) - 7 (土曜) の整数型の値を返します。
WEEKDAYNAME(Date) 曜日の名前を返します (例: 火曜日)。
YEAR(Date) 指定された日付から年を表す 1 - 9999 の整数型の値を返します。
DATEPART("interval", Date) 特定の日付型の指定コンポーネントを含む整数型の値を返します。
  • [d] 日付 (月)
  • [y] 日 (年間通算日)
  • [h] 時
  • [n] 分
  • [m] 月
  • [q] 四半期
  • [s] 秒
  • [w] 曜日
  • [ww] 週 (1 - 53)
  • [yyyy] 年
DATEADD("interval", number, Date) 指定された時間間隔を加算した日付と時刻を日付型の値で返します。
  • [d] 日付: 整数。小数点以下は切り捨てられます。
  • [y] 日 (年間通算日): 整数。小数点以下は切り捨てられます。
  • [h] 時刻: ミリ秒以下は四捨五入します。
  • [n] 分: ミリ秒以下は四捨五入します。
  • [m] 月: 整数。小数点以下は切り捨てられます。
  • [q] 四半期: 整数値に切り捨てられます。
  • [s] 時刻: ミリ秒以下は四捨五入します。
  • [w] 日 (曜日): 整数。小数点以下は切り捨てられます。
  • [ww] 週 (年間通算週): 整数。小数点以下は切り捨てられます。
  • [yyyy] 年: 整数値に切り捨てられます。
DATEDIFF("interval", Date1, Date2) Date1 と Date2 の時間間隔数を指定する Long 型の値を返します。
  • [d] 曜日
  • [y] 日 (上記の Day と同じように処理されます。)
  • [h] 時
  • [n] 分
  • [m] 月
  • [q] 四半期
  • [s] 秒
  • [w] 週
  • [ww] 年間通算週 (週の第 1 日を基準にします。)
DATESERIAL(Year, Month, Day) 次の場合:
  • Year は必ず指定します。1 - 9999 の整数型の式です。ただし、この範囲より小さい値も指定できます。0 - 99 の年であれば、1930 - 2029 と解釈されます。1 より小さい値を指定すると、その値が現在の年度から差し引かれます。
  • Month は必ず指定します。1 - 12 の整数型の式です。ただし、この範囲外の値も指定できます。Month の値から 1 が引かれ、計算された月の 1 月に加えられます。つまり、(Month - 1) が 1 月に加算されます。年は必要に応じて再計算されます。次の結果はこの効果を示しています。
    • Month が 1 の場合、結果は計算された年の 1 月です。
    • Month が 0 の場合、結果は前年の 12 月です。
    • Month が -1 の場合、結果は前年の 11 月です。
    • Month が 13 の場合、結果は翌年の 1 月です。
  • Day は必ず指定します。1 - 31 の整数型の式です。ただし、この範囲外の値も指定できます。Day の値から 1 が引かれ、計算された月の第 1 日に加えられます。つまり、(Day - 1) が月の 1 日に加算されます。月と年は、必要に応じて再計算されます。次の結果はこの効果を示しています。
    • Day が 1 の場合、結果は計算された月の 1 日です。
    • Day が 0 の場合、結果は前月の末日です。
    • Day が -1 の場合、結果は最後から 2 日目です。
    • Day が当月の末日を過ぎている場合、結果は翌月の該当日です。たとえば、Month が 4 で Day が 31 の場合、結果は 5 月 1 日です。

次の式でもマーカーの値に応じて 3 つの値のいずれかが返されますが、代わりに Switch 関数を使用することにより、式の中で True の評価をする最初の式と関連付けられた値が返されます。

=Switch(Fields!Marker.Value >= 7, "Green", Fields!Marker.Value >= 5, "Amber", Fields!Marker.Value < 5, "Red")

カウンタに式を使用する

レポートカウンタ機能でレポート実行開始時に開始番号を指定するための式を使用し、ドキュメントが処理されるたびに番号を増やすことができます。開始番号を実行時にパラメータとして入力するのか、データフィールド値から取得するのかを指定できます。

フィールド値の変化に基づいてカウンタ番号を増やすことができ、実行時に特定のフィルタを設定する場合にだけ使用できます。

作成したカウンタをレポートに追加できます。[表示] > [特殊フィールド] を選択して、 [特殊フィールド] ブラウザに表示されるカウンタをレポートにドラッグアンドドロップします。