intra-mart Accel Platform ジョブ インポート・エクスポート仕様書 第3版 2015-04-01

ファイルフォーマット

この章では、ジョブのインポート・エクスポート機能で利用するファイルのフォーマットについて説明します。

XMLファイルフォーマット

<im-job-scheduler-data> タグ内に1つのジョブに関連する情報をすべてを記述します。
ジョブに関連する情報については「インポート・エクスポートで扱う情報」を参照してください。

複数のジョブに関する情報を一括で扱う場合は、XMLファイルのルートタグ内に`<im-job-scheduler-data>`` タグを複数記述します。

ジョブカテゴリ情報

<im-job-scheduler-data> タグ内に <job-category> タグを記述します。
<im-job-scheduler-data>
    <job-category id="sample-job-category">
        <parent-id>parent-job-category</parent-id>
        <localize locale="ja">
            <name>サンプルジョブカテゴリ</name>
        </localize>
    </job-category>
</im-job-scheduler-data>
<job-category> に記述できる設定は以下のとおりです。
  • <job-category> に記述できる属性

    属性 必須 デフォルト値 説明
    id 文字列 (なし) ジョブカテゴリを一意に識別するIDを指定します。
    update-mode 文字列 × merge
    ジョブカテゴリをインポートする際の更新モードを指定します。
    更新モードについては「更新モード」を参照してください。
  • <job-category> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    parent-id 文字列 × × (なし) 親カテゴリのIDを指定します。
    localize カテゴリ国際化情報 × (なし) ジョブカテゴリの国際化情報を指定します。

ジョブネットカテゴリ情報

<im-job-scheduler-data> タグ内に <jobnet-category> タグを記述します。
<im-job-scheduler-data>
    <jobnet-category id="sample-jobnet-category">
        <parent-id>parent-jobnet-category</parent-id>
        <localize locale="ja">
            <name>サンプルジョブネットカテゴリ</name>
        </localize>
    </jobnet-category>
</im-job-scheduler-data>
<jobnet-category> に記述できる設定は以下のとおりです。
  • <jobnet-category> に記述できる属性

    属性 必須 デフォルト値 説明
    id 文字列 (なし) ジョブネットカテゴリを一意に識別するIDを指定します。
    update-mode 文字列 × merge
    ジョブネットカテゴリをインポートする際の更新モードを指定します。
    更新モードについては「更新モード」を参照してください。
  • <jobnet-category> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    parent-id 文字列 × × (なし) 親カテゴリのIDを指定します。
    localize カテゴリ国際化情報 × (なし) ジョブネットカテゴリの国際化情報を指定します。

カテゴリ国際化情報

<localize> に記述できる設定は以下のとおりです。
  • <localize> に記述できる属性

    属性 必須 デフォルト値 説明
    locale 文字列 (なし) ロケールIDを指定します。
  • <localize> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    name 文字列 × × (なし) カテゴリの名前を指定します。

ジョブ情報

<im-job-scheduler-data> タグ内に <job-detail> タグを記述します。
<im-job-scheduler-data>
    <job-detail id="sample-job">
        <category-id>sample-job-category</category-id>
        <job-type>JAVA</job-type>
        <job-path>jp.co.intra_mart.sample.SampleJob</job-path>
        <parameter key="parameter-key">parameter-value</parameter>
        <localize locale="ja">
            <name>サンプルジョブ</name>
            <description></description>
        </localize>
    </job-detail>
</im-job-scheduler-data>
<job-detail> に記述できる設定は以下のとおりです。
  • <job-detail> に記述できる属性

    属性 必須 デフォルト値 説明
    id 文字列 (なし) ジョブを一意に識別するIDを指定します。
    update-mode 文字列 × merge
    ジョブをインポートする際の更新モードを指定します。
    更新モードについては「更新モード」を参照してください。
  • <job-detail> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    category-id 文字列 × × (なし) このジョブのカテゴリを指定します。
    job-type 文字列 [1] × (なし)
    ジョブ実行言語を指定します。
     ・JAVA : JAVAプログラム
     ・SCRIPT : スクリプト開発モデル
    job-path 文字列 [1] × (なし)
    ジョブプログラムのパスを指定します。
    job-type が JAVA の場合はジョブクラスのクラス名を指定します。
    job-type が SCRIPT の場合はJSファイルのパスを指定します。
    parameter 実行パラメータ情報 × (なし) ジョブの実行パラメータを指定します。
    localize ジョブ国際化情報 × (なし) ジョブの国際化情報を指定します。

ジョブ国際化情報

<localize> に記述できる設定は以下のとおりです。
  • <localize> に記述できる属性

    属性 必須 デフォルト値 説明
    locale 文字列 (なし) ロケールIDを指定します。
  • <localize> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    name 文字列 × × (なし) ジョブの名前を指定します。
    description 文字列 × × (なし) ジョブの説明を指定します。

ジョブネット情報

<im-job-scheduler-data> タグ内に <jobnet> タグを記述します。
<im-job-scheduler-data>
    <jobnet id="sample-jobnet">
        <category-id>sample-jobnet-category</category-id>
        <parameter key="parameter-key">parameter-value</parameter>
        <localize locale="ja">
            <name>サンプルジョブネット</name>
            <description></description>
        </localize>
        <disallowConcurrent>true</disallowConcurrent>
        <serialize>
            <job-id>sample-job</job-id>
        </serialize>
    </jobnet>
</im-job-scheduler-data>
<jobnet> に記述できる設定は以下のとおりです。
  • <jobnet> に記述できる属性

    属性 必須 デフォルト値 説明
    id 文字列 (なし) ジョブネットを一意に識別するIDを指定します。
    update-mode 文字列 × merge
    ジョブネットをインポートする際の更新モードを指定します。
    更新モードについては「更新モード」を参照してください。
  • <jobnet> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    category-id 文字列 × × (なし) このジョブネットのカテゴリを指定します。
    parameter 実行パラメータ情報 × (なし) ジョブネットの実行パラメータを指定します。
    localize ジョブネット国際化情報 × (なし) ジョブネットの国際化情報を指定します。
    disallowConcurrent 真偽値 × × false 同時実行を禁止する場合、trueを指定します。
    serialize 実行ジョブリスト情報 [1] × (なし) このジョブネットで実行されるジョブを指定します。

ジョブネット国際化情報

<localize> に記述できる設定は以下のとおりです。
  • <localize> に記述できる属性

    属性 必須 デフォルト値 説明
    locale 文字列 (なし) ロケールIDを指定します。
  • <localize> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    name 文字列 × × (なし) ジョブネットの名前を指定します。
    description 文字列 × × (なし) ジョブネットの説明を指定します。

実行ジョブリスト情報

<serialize> に記述できる設定は以下のとおりです。
  • <serialize> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    job-id 文字列 (なし)
    実行するジョブのジョブIDを指定します。
    ジョブは指定された順に実行されます。

トリガー情報

<im-job-scheduler-data> タグ内に <trigger> タグを記述します。
<im-job-scheduler-data>
    <trigger id="sample-trigger">
        <jobnet-id>sample-jobnet</jobnet-id>
        <description></description>
        <enable>false</enable>
        <start-date>2014-03-24T17:21:57.000+09:00</start-date>
        <repeat>
            <count>1</count>
        </repeat>
    </trigger>
</im-job-scheduler-data>
<trigger> に記述できる設定は以下のとおりです。
  • <trigger> に記述できる属性

    属性 必須 デフォルト値 説明
    id 文字列 (なし) トリガーを一意に識別するIDを指定します。
    update-mode 文字列 × merge
    トリガーをインポートする際の更新モードを指定します。
    更新モードについては「更新モード」を参照してください。
  • <trigger> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    jobnet-id 文字列 [1] × (なし) このトリガーで実行されるジョブネットのIDを指定します。
    parameter 実行パラメータ情報 × (なし) トリガーの実行パラメータを指定します。
    description 文字列 × × (なし) トリガーの説明を記述します。
    enable 真偽値 × × false このトリガーを有効にする場合、trueを指定します。
    start-date 日時 (Datetime) × × (なし)
    この要素は非推奨です
    トリガーの開始日を指定します。
    トリガーを有効にしている場合、この開始日以降が有効です。
    end-date 日時 (Datetime) × × (なし)
    この要素は非推奨です
    トリガーの終了日を指定します。
    トリガーを有効にしている場合、この終了日まで有効です。
    start-point 文字列 × × (なし)
    この要素は非推奨です
    ジョブネットを実行する際の開始位置を指定します。
    repeat 繰り返し指定トリガー情報 [1] × (なし) 繰り返し指定のトリガーを設定します。
    datetime 日時指定トリガー情報 [1] × (なし) 日時指定のトリガーを設定します。
    business-day 営業日指定トリガー情報 [1] × (なし) 営業日指定のトリガーを設定します。

注意

<repeat><datetime><business-day> 要素は1つのトリガー情報に対して1つのみ設定できます。
複数のトリガー情報を設定する場合は、 <im-job-scheduler-data>` 要素を追加してください。

繰り返し指定トリガー情報

<trigger> タグ内に <repeat> タグを記述します。
<repeat>
    <count>5</count>
    <interval>10</interval>
</repeat>
<repeat> に記述できる設定は以下のとおりです。
  • <repeat> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    count 数値 × × (なし)
    繰り返し回数を指定します。
    指定がない場合は、無限に繰り返しを行います。
    interval 数値 × (なし)
    繰り返し間隔(秒)を指定します。
    繰り返し回数が1回以上の場合、必須です。

日時指定トリガー情報

<trigger> タグ内に <datetime> タグを記述します。
<datetime>
    <time-zone>Asia/Tokyo</time-zone>
    <years>2015</years>
    <months>11</months>
    <days-of-month>31</days-of-month>
    <hours>0</hours>
    <minutes>0</minutes>
</datetime>
<datetime> に記述できる設定は以下のとおりです。
  • <datetime> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    time-zone 文字列 [1] × (なし) 指定された日時のタイムゾーンIDを指定します。
    years 数値 × (なし) 年を指定します。
    months 数値 × (なし) 月を指定します。
    days-of-month 数値 × (なし) 日を指定します。
    days-of-week 数値 × (なし)
    曜日を表す次の数値を指定します。
     1:日曜 ~ 7:土曜
    hours 数値 × (なし) 時を指定します。
    minutes 数値 × (なし) 分を指定します。
    seconds 数値 × (なし) 秒を指定します。

営業日指定トリガー情報

<trigger> タグ内に <business-day> タグを記述します。
<business-day>
    <calendar-id>JPN_CAL</calendar-id>
    <time-zone>Asia/Tokyo</time-zone>
    <hours>0</hours>
    <minutes>0</minutes>
</business-day>
<business-day> に記述できる設定は以下のとおりです。
  • <business-day> に記述できる子要素

    要素 必須 複数指定 デフォルト値 説明
    calendar-id 文字列 × (なし) 使用するカレンダーのカレンダーIDを指定します。
    time-zone 文字列 [1] × (なし) 指定された日時のタイムゾーンIDを指定します。
    hours 数値 × (なし) 時を指定します。
    minutes 数値 × (なし) 分を指定します。
    seconds 数値 × (なし) 秒を指定します。

実行パラメータ情報

<parameter> には、key 属性にパラメータのキーを、要素の値にパラメータの値を指定してください。
<parameter key="file">sample.xml</parameter>
<parameter key="format-xml">true</parameter>

注釈

[1](1, 2, 3, 4, 5, 6, 7, 8, 9) 更新モードが「replace」、または新規登録の場合、必須です。

要素に指定する値について

  • ロケールID

    ロケールマスタに定義されているロケールのロケールIDを指定する必要があります。

    コラム

    ロケールマスタの設定については「設定ファイルリファレンス - ロケールマスタ」を参照してください。

  • タイムゾーンID

    タイムゾーンマスタに定義されているタイムゾーンのタイムゾーンIDを指定する必要があります。

    コラム

    タイムゾーンマスタの設定については「設定ファイルリファレンス - タイムゾーン」を参照してください。

  • カレンダーID

    カレンダー情報として登録されているカレンダーのカレンダーIDを指定する必要があります。
  • 日時指定トリガーの曜日指定

    1(日曜日)、2(月曜日)、3(火曜日)、4(水曜日)、5(木曜日)、6(金曜日)、または、7(土曜日)のみ指定可能です。

XMLファイルサンプル

以下はインポート・エクスポートのXMLファイルの例です。
<?xml version="1.0" encoding="UTF-8"?>
<root xmlns="http://www.intra-mart.jp/job-scheduler/data">
    <im-job-scheduler-data>
        <job-category id="sample-job-category">
            <parent-id>parent-job-category</parent-id>
            <localize locale="ja">
                <name>サンプルジョブカテゴリ</name>
            </localize>
        </job-category>
    </im-job-scheduler-data>
    <im-job-scheduler-data>
        <jobnet-category id="sample-jobnet-category">
            <parent-id>parent-jobnet-category</parent-id>
            <localize locale="ja">
                <name>サンプルジョブネットカテゴリ</name>
            </localize>
        </jobnet-category>
    </im-job-scheduler-data>
    <im-job-scheduler-data>
        <job-detail id="sample-job">
            <category-id>sample-job-category</category-id>
            <job-type>JAVA</job-type>
            <job-path>jp.co.intra_mart.sample.SampleJob</job-path>
            <parameter key="parameter-key">parameter-value</parameter>
            <localize locale="ja">
                <name>サンプルジョブ</name>
                <description></description>
            </localize>
        </job-detail>
    </im-job-scheduler-data>
    <im-job-scheduler-data>
        <jobnet id="sample-jobnet">
            <category-id>sample-jobnet-category</category-id>
            <parameter key="parameter-key">parameter-value</parameter>
            <localize locale="ja">
                <name>サンプルジョブネット</name>
                <description></description>
            </localize>
            <disallowConcurrent>true</disallowConcurrent>
            <serialize>
                <job-id>sample-job</job-id>
            </serialize>
        </jobnet>
    </im-job-scheduler-data>
    <im-job-scheduler-data>
        <trigger id="sample-trigger">
            <jobnet-id>sample-jobnet</jobnet-id>
            <description></description>
            <enable>false</enable>
            <start-date>2014-03-24T17:21:57.000+09:00</start-date>
            <repeat>
                <count>1</count>
            </repeat>
        </trigger>
    </im-job-scheduler-data>
</root>