高度なトピック

日付パラメータを増分し、宛先ファイル名を動的に定義できます。

日付パラメータの増分

レポートの日付パラメータ・フィールドには、式を指定できます。

スケジュールされたレポートに日付パラメータが含まれている場合、スケジュールの日付に値を入力すると、日付の値は変更できなくなります。スケジュールされたレポートのインスタンスが実行されるたびに、同じ日付パラメータが使用されます。実行ごとに日付パラメータを変更する必要がある場合は、スケジューラの日付パラメータ・フィールドに式を入力して、レポート・ジョブが実行されるたびに日付が計算されるようにできます。

たとえば、前の週のデータを取得するために毎週月曜日に実行されるレポートのスケジュールを作成する場合、前の週の最初の日と最後の日の値を増加させるように、このレポートの日付パラメータを更新する必要があります。

次に示す関数をここに示す構文のとおりに入力すると、スケジュールに従ってレポートが実行されるときに、該当する日付が計算されます。

  • {$SYSDATE()$} - 現在の日付。Publisherを実行しているサーバーのシステム日付。

  • {$FIRST_DAY_OF_MONTH()$} - 現在の月の最初の日

  • {$LAST_DAY_OF_MONTH()$} - 現在の月の最後の日

  • {$FIRST_DAY_OF_YEAR()$} - 当年の初日

  • {$LAST_DAY_OF_YEAR()$} - 当年の最終日

パラメータ値での日付関数のコールは、スケジューラによってレポート・ジョブが処理されるまで評価されません。

次のように、プラス記号(+)とマイナス記号(-)を使用して、日数を加算または減算する式を入力することもできます。

  • {$SYSDATE()+1$}

  • {$SYSDATE()-7$}

この例では、スケジュールが実行されるたびにすぐ前の週のデータを取得するために、レポートの日付パラメータのフィールドに次のように入力します。

  • 開始日: {$SYSDATE()-7$}

  • 終了日: {$SYSDATE()-1$}

日付関数は、データ・モデルのデフォルト・パラメータ値として設定できます。その場合は、ユーザーがレポート・ビューアでレポートを表示するたびに、デフォルト値として指定された式に従って日付パラメータが計算されます。

日付式を使用した宛先ファイル名の動的な定義

WebフォルダやFTPの宛先となるリモート・ファイル名を入力する場合は、日付式を入力することで、ファイル名に動的に日付が含まれるようにすることができます。この日付は、実行時にサーバーのタイムゾーンを使用して設定されます。

日付の式の説明は、次の表のとおりです。

説明

%y

年を4桁で表示します(例: 2011)。

%m

月を2桁(01~12)で表示します(01 = 1月)。

%d

日を2桁(01~31)で表示します。

%H

24時制の時間を2桁(00~24)で表示します。

%M

分を2桁(00~59)で表示します。

%S

秒数を2桁(00~59)で表示します。

%l

ミリ秒を3桁(000~999)で表示します。

後ろに日付が付加されたファイル名、および前に日付が付加され、後ろに時刻が付加されたファイル名を作成するには、次のステップを使用します。

後ろに日付、月および年が付加された、次のようなファイル名を作成します。

myfile_01_11_2010.pdf

次のように入力します。

myfile_%d_%m_%y.pdf

前に日付、月および年が付加され、後ろに時間と分が付加された、次のようなファイル名を作成します。

01_01_2010_myfile_22_57.pdf

次のように入力します。

%d_%m_%y_myfile_%H_%M.pdf

my_file_%a%b%c.pdfのように、ファイル名に未定義の式が含まれている場合、ファイルはmy_file_%a%b%c.pdfという名前で作成されます。