2.5.6 JP1/AJSのルートジョブネット移行(SYSTEM)
機能
このサービステンプレートは,CSV(Comma Separated Values)ファイルまたはMicrosoft Excelによって作成されたルートジョブネットの一覧情報(これ以降,ルートジョブネット定義ファイルと呼びます)を使用して,JP1/AJS3 - Manager (以降JP1/AJSと呼びます)のルートジョブネットを開発サーバから一括して取得し,業務サーバへ移行します。
JP1/AOサーバがWindows環境の場合はCSVファイルまたはExcelファイル,UNIX環境の場合はCSVファイルを使用します。
このサービステンプレートが前提とするサーバを次に示します。
・開発サーバ
JP1/AJSが動作するサーバです。取得対象のルートジョブネットが登録されている必要があります。
・業務サーバ
JP1/AJSが動作するサーバです。取得したルートジョブネットを登録します。
jp1ajs.jobnetListFilePathプロパティで指定するルートジョブネット定義ファイルからキー値を記載した列を取り出し,すべてのキー値に対して次の処理を実行します。
(1) キー値に合致する行の,ルートジョブネット名,ジョブ実行エージェントホスト名,実行ユーザー名を読み取ります。
(2) 処理(1)で読み取った情報を使用して,開発サーバでajsprintコマンドを実行し,ルートジョブネットの情報をユニット定義ファイルとして出力します。
(3) JP1/AOサーバをいったん経由して(2)で出力されたユニット定義ファイルを業務サーバへ転送します。
(4) 業務サーバでajsdefineコマンドを実行し,ルートジョブネットを登録します。
(5) ジョブ実行エージェントホスト名が指定されている場合,業務サーバでajschangeコマンドを実行し,ルートジョブネット配下すべてのジョブのジョブ実行エージェントホスト名を変更します。
(6) 実行ユーザー名が指定されている場合,業務サーバでajschangeコマンドを実行し,ルートジョブネット配下すべてのジョブの実行ユーザー名を変更します。
ルートジョブネット定義ファイルには,ルートジョブネット情報を99件(99行)まで記載できます。
各変更処理は,繰り返し部品で逐次的に実行します。繰り返しの中で処理が失敗した場合は,処理が失敗した時点でタスクが異常終了します。
ルートジョブネット定義ファイル読み込みに失敗した場合は,OS.fileOpenRetryIntervalプロパティに指定した秒数待ってファイル読み込みをリトライする処理を,OS.fileOpenRetryCountプロパティに指定した回数繰り返します。各プロパティの値は,利用している環境に合わせて調整してください。
前提条件
【システム内前提製品】/【サービステンプレート実行システム内前提製品】/【サービステンプレート実行システム内前提製品の稼働OS】の最新のサポート状況については,リリースノートを参照してください。
【システム内前提製品】
JP1/Automatic Operation 12-00以降
【サービステンプレート実行システム内前提製品】
(1)JP1/AOサーバがWindows環境の場合,次に示すMicrosoft社のプログラムがJP1/AOサーバにインストールされていること。
2007 Office system ドライバ,または
Microsoft Access データベース エンジン 2010(32bit版),または
Microsoft Access Database Engine 2016(32bit版)
(2)開発サーバ,および業務サーバに次の製品が稼働していること。
JP1/Automatic Job Management System 3 - Manager 09-00以降
【サービステンプレート実行システム内前提製品の稼働OS】
(1) Windows Server 2008 R2 Standard/Enterprise/Datacenter
(2) Windows Server 2012 Standard/Datacenter,Windows Server 2012 R2 Standard/Datacenter
(3) Windows Server 2016 Standard/Datacenter
(4) Windows Server 2019 Standard/Datacenter
(5) Red Hat Enterprise Linux Server 6 (32-bit x86),Red Hat Enterprise Linux Server 6 (64-bit x86_64)
(6) Red Hat Enterprise Linux Server 7 (64-bit x86_64)
(7) Red Hat Enterprise Linux Server 8 (64-bit x86_64)
(8) AIX V6
(9) AIX V7
【サービステンプレート実行システム内前提製品の使用条件】
(1)JP1/AJSのスケジューラーサービスが起動されていること。
(2)jp1ajs.jp1UserNameプロパティに指定したJP1ユーザーが,開発サーバと業務サーバに登録されていること。
(3)移行対象となっているルートジョブネットが,業務サーバに登録されていないこと。
ルートジョブネットが既に登録されている場合,「JP1/AJSのルートジョブネット削除」サービスを使用することで一括して削除できます。
(4)このサービステンプレートはルートジョブネットの移行だけサポートします。ジョブグループの一括移行はサポートしません。
(5)開発サーバと業務サーバのOS種別(Windows/UNIX)が同一であること。
(6)JP1/AOサーバ上に,次に示す内容を記載したルートジョブネット定義ファイルを格納していること。
・列数
データの読み取り開始列から数えた列数が255列以内となるようにしてください。
・列名
・CSVファイルの場合
・列名が必要な場合は,ファイルの1行目に記載してください。
列名が不要の場合は,列名の記載は必要ありません。
・列名の記載有無に関わらず,データの読み取り開始行は2行目からとなります。
・Excelファイルの場合
・列名は必ず記載してください。1行目以降で最初に記述がある行が列名となります。
・データの読み取り開始行は列名が記載されている行の次の行からとなります。
列名の指定の際は(8)を参照してください。
・キー情報
ルートジョブネット定義ファイルの各行でユニークなキーとなる値を格納した列です。キー情報の内容は任意ですが,1から始まる整数値など,短い値を指定することを推奨します。また,キー情報には「"」および「'」以外の文字を使用してください。(すべてのキー情報の合計バイト数+データの行数)が1017バイト以下になるようにしてください。各行への値の指定は任意です。省略した場合,該当する行の処理は行なわれません。
・上位ユニット名
ルートジョブネットの上位ユニット名を指定します。開発サーバと業務サーバで同じ名称を使用します。ルートジョブグループを指定する場合は空文字を指定してください。
・ルートジョブネット名
ルートジョブネット名を指定します。ジョブ名やジョブグループ名,ルートジョブネットを除くジョブネット名は指定できません。開発サーバと業務サーバで同じ名称を使用します。各行への値の指定は必須です。
・ジョブ実行エージェントホスト名
業務サーバに登録したルートジョブネットで使用するジョブ実行エージェントホスト名を指定します。ルートジョブネット配下のジョブすべてを変更します。値を指定しない場合,開発サーバ上のジョブネットで定義された実行ホストが業務サーバへ引き継がれます。ジョブ実行エージェントホスト名を開発サーバの定義より変更する場合は値を指定してください。各行への値の指定は任意です。
・実行ユーザー名
業務サーバに登録したルートジョブネットで使用する実行ユーザー名を指定します。ルートジョブネット配下のジョブすべてを変更します。値を指定しない場合,開発サーバ上のジョブネットで定義された実行ユーザー名が業務サーバへ引き継がれます。実行ユーザー名を開発サーバの定義より変更する場合は値を指定してください。各行への値の指定は任意です。
(例)
キー情報,上位ユニット名,ルートジョブネット名,実行ホスト名,実行ユーザー名
1,/parent1,jobnet1,host1,jp1user1
2,/parent2,jobnet2,host2,jp1user2
3,/parent3,jobnet3,,jp1user3
4,/parent4,jobnet4,host4,
5,/parent5,jobnet5,,
(7)このサービスを実行する場合,エージェントレス接続先としてJP1/AOサーバ("localhost"で解決されるループバックアドレス),開発サーバ,および業務サーバを設定すること。
(8)ルートジョブネット定義ファイルの列名には次に示す内容を指定すること。
・必ず文字列で指定すること。数値データは指定しないこと。
・次の文字は列名に使用できない。
・キー情報の列名の先頭には次の文字を使用できない。
「!」「"」「#」「$」「%」「&」「'」「(」「)」「-」「=」「^」「~」「¥」「|」「`」「;」「+」「*」「[」「]」「{」「}」「,」「.」「<」「>」「?」「_」「/」「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」
・キー情報の列名の2文字目以降には次の文字を使用できない。
「"」「#」「%」「&」「'」「(」「)」「-」「=」「^」「~」「¥」「|」「@」「;」「:」「+」「*」「[」「]」「{」「}」「,」「.」「<」「>」「?」「/」
・キー情報以外の列名には次の文字を使用できない。
「!」「[」「]」「`」「,」「.」
・文字数は半角全角混合で64文字まで指定できる。
(9)ルートジョブネット定義ファイルから読み込んだフィールドには次のチェックを行います。どれかの条件に当てはまると,タスクは異常終了します。
・フィールドに次の特殊記号を含む
「,」(JP1/AOサーバがWindows環境の場合),「<」,「>」,「|」,「;」,「&」,両端以外の「"」および末尾の「¥」
なおフィールドのデータが空の場合,無視して次の行を読み取ります。
・フィールドに制御文字(0x00〜0x1f)を含む
注意事項
【ルートジョブネット定義ファイルに関する注意事項】
・JP1/AOサーバがWindows環境の場合
(1) Excelファイルのセルが結合されている場合,数式がエラーとなっている場合は取得される値が空になります。また,書き込みパスワードが設定されている場合はタスクが異常終了します。ルートジョブネット定義ファイルからはこれらの状態を取り除いてください。
(2) 読み取る列は,文字列型データと数値型データを混在させないでください。混在していると,ODBCドライバの仕様によって,正常に値を取得できない場合があります。
(a) 数値型データとは次の形式の文字列のことです。
符号付き整数値(10 進数) 例:-12345
固定小数点数(10 進数) 例:3.1415
浮動小数点数(10 進数) 例:6.543E+10
(b) 文字列型データとは上の数値型以外の形式の文字列のことです。
(3) 異なるデータ型が混在する列を取得する場合は,次の対処が必要です。
・Excel ファイルの場合は数値型データの先頭に「'」を付けてください。
・CSV ファイルの場合は数値型データを「"」で囲んでください。
(4) データの途中に空白行がある場合,空白行も行数としてカウントされます。データが記述された行が99行以内であっても,途中の空白行を含めた行数が100以上となる場合,タスクが異常終了するのでご注意ください。
・JP1/AOサーバがUNIX環境の場合
(1) データの途中に空白行がある場合,空白行も行数としてカウントされます。データが記述された行が99行以内であっても,途中の空白行を含めた行数が100以上となる場合,タスクが異常終了するのでご注意ください。
(2) データには「,」は使用できません。使用した場合,列を正しく区切ることができないため,データを取得できません。
(3) ルートジョブネット定義ファイルの行の先頭または末尾に存在する半角スペースおよびタブ記号は,その個数に関係なく,存在しないものとみなします。
【ルートジョブネット定義ファイル以外の注意事項】
(1) 次のプロパティ,および,ジョブネット定義ファイルに指定する文字列長は,記載の長さ以下で指定してください。
・jp1ajs.logicalHostNameRemoteプロパティ:64文字
・jp1ajs.logicalHostNameDevelopプロパティ:64文字
・jp1ajs.workDirectoryRemoteプロパティ:128文字
・jp1ajs.workDirectoryDevelopプロパティ:128文字
・ジョブネット定義ファイルの上位ユニット名:512文字
・ジョブネット定義ファイルの実行ホスト名:64文字
これらの文字列長を超えると,タスクで実行するコマンドラインの最大長を超過し,長さが切りつめられた不当な形式でコマンドが実行される場合があります。最大長を超過した場合はタスクログにKNAE08015-Wメッセージが出力されます。
(2) 開発サーバと業務サーバのOS種別がWindowsのときは,次の値に「%」を指定する場合,「%」でエスケープした文字「%%」を指定してください。
・jp1ajs.jp1UserNameプロパティ
・jp1ajs.serviceNameRemoteプロパティ
・jp1ajs.serviceNameDevelopプロパティ
・ルートジョブネット定義ファイル内の値。ただし,ルートジョブネット名には「%」を指定できません。
(3) 開発サーバと業務サーバのOS種別がWindowsのときは,次の値に「"」を指定できません。
・jp1ajs.serviceNameRemoteプロパティ
・jp1ajs.serviceNameDevelopプロパティ
(4) 開発サーバと業務サーバのOS種別がUNIXのときは,次の値に「'」を指定できません。
・jp1ajs.jp1UserNameプロパティ
・jp1ajs.serviceNameRemoteプロパティ
・jp1ajs.serviceNameDevelopプロパティ
・jp1ajs.workDirectoryRemoteプロパティ
・jp1ajs.workDirectoryDevelopプロパティ
・ルートジョブネット定義ファイル内の値
(5) 上記以外の注意事項は,JP1/AJSのマニュアル「コマンドリファレンス1」のajsprintコマンド,ajschangeコマンド,ajsdefineコマンドの注意事項を参照してください。
実行権限
Administratorsグループに所属するユーザー
また,jp1ajs.jp1UserNameで指定されるユーザーであり,JP1/AJS3共通情報の環境設定パラメーター"ADMACLIMIT"に"yes"が設定されている場合,次の権限が必要です。
[Windows,UNIX共通]
・開発サーバに対する権限
JP1_AJS_Guest権限,JP1_AJS_Operator権限,JP1_AJS_Editor権限,JP1_AJS_Manager権限,JP1_AJS_Admin権限のどれかの権限
・業務サーバに対する権限
JP1_AJS_Editor権限,JP1_AJS_Manager権限,JP1_AJS_Admin権限のどれかの権限
バージョン
03.10.02
タグ
Configure JP1,AJS
プロパティ一覧
プロパティに設定されているプロパティグループの一覧を次に示します。
プロパティグループ |
説明 |
初期表示 |
---|---|---|
ルートジョブネット情報 |
ルートジョブネットの情報です。 |
表示されます。 |
業務サーバ/開発サーバ情報 |
業務サーバ/開発サーバの情報です。 |
表示されます。 |
JP1/AOサーバ情報 |
JP1/AOサーバの情報です。 |
表示されます。 |
[サービス設定]画面に表示されるプロパティの一覧を次に示します。
- (凡例)
-
○:プロパティの指定は必須です。
△:プロパティの指定は省略可能です。ただし,ほかのプロパティの指定内容によっては,指定が必須になります。各プロパティの「説明」を確認してください。
プロパティキー |
プロパティ名 |
説明 |
入出力種別 |
共有設定 |
必須区分 |
プロパティグループ |
---|---|---|---|---|---|---|
jp1ajs.hostNameRemote |
ホスト名(業務サーバ) |
業務サーバのホスト名またはIPアドレスを指定します。IPv6アドレスには対応していません。クラスタ構成の場合は,実行系サーバの物理ホストまたは論理ホストを指定してください。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
jp1ajs.hostNameDevelop |
ホスト名(開発サーバ) |
開発サーバのホスト名またはIPアドレスを指定します。IPv6アドレスには対応していません。クラスタ構成の場合は,実行系サーバの物理ホストまたは論理ホストを指定してください。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
jp1ajs.logicalHostNameRemote |
論理ホスト名(業務サーバ) |
業務サーバのJP1/AJSがクラスタ構成の場合,JP1/AJSの論理ホスト名を指定します。 |
入力 |
無効 |
△ |
業務サーバ/開発サーバ情報 |
jp1ajs.logicalHostNameDevelop |
論理ホスト名(開発サーバ) |
開発サーバのJP1/AJSがクラスタ構成の場合,JP1/AJSの論理ホスト名を指定します。 |
入力 |
無効 |
△ |
業務サーバ/開発サーバ情報 |
OS.osKind |
OSの種類 |
OSの種類(Windows/UNIX)を指定します。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
OS.fileOpenRetryCount |
ファイル読み込み時のリトライ回数:Windows固有 |
ルートジョブネット定義ファイルファイルの読み込みに失敗した場合のリトライ回数を指定します(Windowsの場合だけ)。ファイル読み込み時のリトライ間隔と組み合わせて最大待ち時間となります。"0"を指定した場合はリトライしません。 |
入力 |
無効 |
○ |
ルートジョブネット情報 |
OS.fileOpenRetryInterval |
ファイル読み込み時のリトライ間隔:Windows固有 |
ルートジョブネット定義ファイルの読み込みに失敗した場合のリトライ間隔を秒単位で指定します(Windowsの場合だけ)。 |
入力 |
無効 |
○ |
ルートジョブネット情報 |
[サービス設定]画面および[サービス実行]画面に表示されるプロパティの一覧を次に示します。
プロパティキー |
プロパティ名 |
説明 |
入出力種別 |
共有設定 |
必須区分 |
プロパティグループ |
---|---|---|---|---|---|---|
jp1ajs.jobnetListFilePath |
ルートジョブネット定義ファイルのパス |
JP1/AOサーバ上に格納した,ルートジョブネット定義ファイルのパスをフルパスで指定します。ファイルの拡張子はcsv,xls,xlsx,xlsmのどれかである必要があります。 |
入力 |
無効 |
○ |
ルートジョブネット情報 |
jp1ajs.jobnetInfoSheetName |
ルートジョブネット定義ファイルのシート名 |
ルートジョブネットの情報が記載されたシート名を指定します。ルートジョブネット定義ファイルがExcelファイルの場合には必ず指定してください。CSVファイルの場合,指定しても無視されます。 |
入力 |
無効 |
○ |
ルートジョブネット情報 |
jp1ajs.serviceNameRemote |
JP1/AJSのスケジューラーサービス名(業務サーバ) |
業務サーバのスケジューラーサービス名を指定します。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
jp1ajs.serviceNameDevelop |
JP1/AJSのスケジューラーサービス名(開発サーバ) |
開発サーバのスケジューラーサービス名を指定します。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
jp1ajs.workDirectoryLocal |
作業フォルダ(ローカル) |
JP1/AOサーバの作業フォルダのパスをフルパスで指定します。 |
入力 |
無効 |
○ |
JP1/AOサーバ情報 |
jp1ajs.workDirectoryRemote |
作業フォルダ(業務サーバ) |
業務サーバの作業フォルダのパスをフルパスで指定します。UNIX環境に対してこのサービスを実行する場合は,プロパティにマルチバイト文字を使用しないでください。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
jp1ajs.workDirectoryDevelop |
作業フォルダ(開発サーバ) |
開発サーバの作業フォルダのパスをフルパスで指定します。UNIX環境に対してこのサービスを実行する場合は,プロパティにマルチバイト文字を使用しないでください。 |
入力 |
無効 |
○ |
業務サーバ/開発サーバ情報 |
jp1ajs.jp1UserName |
JP1ユーザー名 |
JP1/AJSコマンドを実行するJP1ユーザー名を指定します。サーバに接続する際のOSユーザー名と同一名称のJP1ユーザーで実行する場合,指定する必要はありません。 |
入力 |
無効 |
△ |
業務サーバ/開発サーバ情報 |
[タスク詳細]画面にだけ表示されるプロパティの一覧を次に示します。
プロパティキー |
プロパティ名 |
説明 |
入出力種別 |
共有設定 |
---|---|---|---|---|
common.taskResult |
繰り返しタスクの実行結果 |
タスクごとの成功(true),失敗(false)をコンマ区切りで出力します。 |
出力 |
無効 |
[サービス設定]画面に表示されるプロパティの入力制限を次に示します。
プロパティキー |
入力可能文字 |
---|---|
jp1ajs.hostNameRemote |
255文字以内の半角英数字および「.」,「-」。 |
jp1ajs.hostNameDevelop |
255文字以内の半角英数字および「.」,「-」。 |
jp1ajs.logicalHostNameRemote |
255文字以内の半角英数字および「.」,「-」。 |
jp1ajs.logicalHostNameDevelop |
255文字以内の半角英数字および「.」,「-」。 |
OS.osKind |
次の値のどれかを選択する。 Windows,UNIX |
OS.fileOpenRetryCount |
0〜32767の整数値。 |
OS.fileOpenRetryInterval |
1〜60の整数値。 |
[サービス設定]画面および[サービス実行]画面に表示されるプロパティの入力制限を次に示します。
プロパティキー |
入力可能文字 |
---|---|
jp1ajs.jobnetListFilePath |
8文字以上255文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「&」,「*」,「?」,「"」,「%」,「[」,「]」,「!」および末尾の「¥」,「/」を除く。 |
jp1ajs.jobnetInfoSheetName |
1文字以上31文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「:」,「&」,「*」,「?」,「"」,「%」,「/」,「¥」,「!」,「`」,「{」,「[」,「]」および全角記号「:」,「¥」,「?」,「[」,「]」,「/」,「*」を除く。 |
jp1ajs.serviceNameRemote |
255文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「&」,「`」および末尾の「¥」を除く。 |
jp1ajs.serviceNameDevelop |
255文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「&」,「`」および末尾の「¥」を除く。 |
jp1ajs.workDirectoryLocal |
200文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「&」,「*」,「?」,「"」,「%」,「`」および末尾の「¥」,「/」を除く。 |
jp1ajs.workDirectoryRemote |
200文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「&」,「*」,「?」,「"」,「%」,「`」および末尾の「¥」,「/」を除く。 |
jp1ajs.workDirectoryDevelop |
200文字以内の文字列。ただし,「<」,「>」,「|」,「;」,「&」,「*」,「?」,「"」,「%」,「`」および末尾の「¥」,「/」を除く。 |
jp1ajs.jp1UserName |
31文字以内の半角英数字,および「!」,「#」,「$」,「%」,「'」,「-」,「@」,「_」,「~」。 |
フロー仕様詳細
フロー仕様詳細を次の表に示します。
階層 |
[タスク詳細]画面での表示名 |
ステップ名 |
部品 |
||
---|---|---|---|---|---|
部品名 |
説明 |
エラー時の回復方法 |
|||
1 |
OS種別の出力 |
OS種別の出力 |
OS種別の出力 |
JP1/AOサーバのOSを出力します。 |
エラー原因を取り除いたあと,サービスを再実行してください。 |
2 |
ルートジョブネット情報キー値リスト取得(SYSTEM) |
ルートジョブネット情報キー値リスト取得(SYSTEM) |
CSV・Excelの列データ取得(SYSTEM) |
ルートジョブネット定義ファイルからルートジョブネットのキー値のリストを取得します。 |
エラー原因を取り除いたあと,サービスを再実行してください。 |
3 |
データ分繰り返し処理 |
データ分繰り返し処理 |
繰り返し実行部品 |
読み出したキー情報を元に,繰り返しルートジョブネットの移行を実行します。 |
エラー原因を取り除いたあと,サービスを再実行してください。 |