オブジェクトハンドラは、Natural システムライブラリ SYSOBJH 内にあるユーティリティ SYSOBJH、およびダイレクトコマンドインターフェイスで構成されています。 また、Natural プログラムからオブジェクトハンドラ機能を実行するために、アプリケーションプログラミングインターフェイス OBJHAPI が用意されています。
このセクションでは、次のトピックについて説明します。
下の図に、オブジェクトをソース環境からワークファイルにアンロードし、ワークファイルからターゲット環境にロードすることによって、オブジェクトがオブジェクトハンドラでどのように転送されるかを示します。 必要に応じて、ソース環境からターゲット環境へのワークファイルの転送に、FTP などのアプリケーションプロトコルを使用できます。
このセクションでは、次のトピックについて説明します。
新旧の環境は、Adabas データベースに含まれている FNAT、FUSER、および FDIC の各システムファイル、またはメインフレーム上の VSAM ファイルシステム、または UNIX、OpenVMS、および Windows プラットフォーム上のファイルシステムです。 次のセクションで説明するように、FNAT または FUSER システムファイルの Natural オブジェクトはライブラリに含めることができます。
ファイルセキュリティ(パスワードとサイファコード)は、Adabas または VSAM 環境のシステムファイルに対して定義されたセキュリティと関連付けられています。 システムファイルにセキュリティが定義されている場合、オブジェクトハンドラ機能を実行する前に、必要なソース/ターゲットシステムファイルに対して、パスワード、サイファコード、およびVSAM 名を指定する必要があります。 これを行わなかった場合、Adabas または VSAM によって該当するエラーメッセージが発行されます。 オブジェクトハンドラの開始時に Natural セッションに割り当てられているデフォルトのシステムファイルについては、セキュリティ情報を指定する必要はありません。
オブジェクトハンドラは、Natural ライブラリに含まれている Natural ソースオブジェクト(保存オブジェクトとも呼ばれる)およびカタログ化オブジェクト、Natural エラーメッセージ、Natural コマンドプロセッサソース、Natural DDM(データ定義モジュール)、Natural 関連オブジェクト、および Adabas FDT(フィールド定義テーブル)を転送します。
オブジェクトが処理されるソース環境およびターゲット環境に応じて、バイナリフォーマットまたはテキストフォーマットでデータを転送できます。
バイナリフォーマットは、ソースオブジェクトおよびカタログ化オブジェクト(DDM を含む)、エラーメッセージ、Natural コマンドプロセッサソース、Natural 関連オブジェクト、Adabas FDTに使用できます。
テキストフォーマットは、ソースオブジェクト、Natural コマンドプロセッサソース、エラーメッセージ、DDM、および Adabas FDT に適用されます。 メインフレームおよび UNIX/OpenVMS/Windows プラットフォーム間では、テキストデータのみを転送できます。 同一プラットフォーム間では、バイナリデータを転送できます。
このセクションでは、メニュー機能またはダイレクトコマンドのいずれかを使用してオブジェクトハンドラを呼び出す方法について説明します。
任意の Natural ライブラリからオンラインでオブジェクトハンドラを呼び出すには
次のシステムコマンドを入力します。
SYSOBJH
次のオプションを含む、オブジェクトハンドラのメインメニューが表示されます。
Unload
Load
Scan
View
Administration
これらの機能の詳細と、上級ユーザーモードまたはウィザードでこれらの機能を実行する方法については、「機能」セクションを参照してください。
次のいずれかの方法で機能を選択します。
目的の機能に対応する項目の横にある入力フィールドに任意の文字を入力します。
または:
目的の機能に対応する PF キーを押します。
または:
コマンド行で、目的の機能に対応するオブジェクトハンドラコマンドを入力します。 有効なコマンドの詳細については、「ダイレクトコマンド」セクションを参照してください。
バッチモードまたはダイレクトコマンドオンラインモードでオブジェクトハンドラを呼び出すには
「バッチまたはダイレクトコマンドの呼び出し」および「ダイレクトコマンド」の説明に従って、システムコマンド SYSOBJH
の後にダイレクトコマンドを入力します。
ダイレクトコマンドの実行後は、別のダイレクトコマンドを入力するか、ピリオド(.)を入力してオブジェクトハンドラを終了します。
複数のコマンドをオンラインモードまたはバッチモードでオブジェクトハンドラに発行できます。 コマンドシーケンスの最後のコマンドは、ピリオド(.
)、STOP
、END
、QUIT
または FIN
にする必要があります。FIN
にすると Natural セッションが終了します。
このセクションでは、次のトピックについて説明します。
オブジェクトハンドラへのコマンドは標準入力から読み込まれます。 各コマンドは、キーワードまたはキーワードの後の入力デリミタ(セッションパラメータ ID
)を入力することによって最大 20 のコマンドパーツ/文字列に分けることができます。 各コマンドパーツ/文字列は 248 バイト以内でなければなりません。
コマンドが 1 行より長い場合、コマンドに属している各行(最後の行を除く)の末尾にセッションパラメータ CF
で定義された文字(デフォルトは %
)を入力します。これは次の行への継続を示します。 ただし、これは、コマンド SYSOBJH
を単独で 1 行に指定する場合に限り可能です。 つまり、複数行コマンドが開始する同じ行に SYSOBJH
を入力した場合は CF
を使用できません。 また、LS
プロファイルパラメータを 250
に設定することをお勧めします。
,
に設定されているとみなす):
SYSOBJH UNLOAD PROG* LIBRARY MYLIB1, OBJTYPE N,% WITH NEWLIBRARY MYLIB2% WHERE REPORT TRANSFER STOP
『オペレーション』ドキュメントの「バッチモードでの Natural」
コマンド行に入力されるオブジェクトハンドラへのコマンドは、最高 20 のコマンドパーツで構成できます。
SYSOBJH UNLOAD * LIB EXAMPLE WHERE TRANSFER
Natural システムライブラリ SYSOBJH 内にサブプログラムとして提供されている OBJHAPI アプリケーションプログラミングインターフェイスを使用して、Natural プログラムからオブジェクトハンドラにコマンドを発行できます。 必要なパラメータおよび例については、ライブラリ SYSOBJH にある Natural プログラム DOC-API を参照してください。
オブジェクトハンドラで作成されるレポート、再スタート、およびトレース用のデータは、Natural テキストメンバ(テキストタイプの Natural オブジェクト)としてワークプランライブラリに保存されます。 オブジェクトハンドラでは、[Options]ウィンドウで明示的に指定されていないテキストメンバ名が生成されます。 名前は、曜日と時刻を組み合わせて生成されます。 例えば、21415568 という名前のメンバは、火曜日(週の 2 日目)の 14:15:56,8 に作成されています。
オブジェクトハンドラの Workplan-Library
プロファイルオプション(「プロファイルの設定」を参照)を使用すると、テキストメンバが格納されるワークプランライブラリを指定できます。 ROSY=ON
プロファイルパラメータ(『パラメータリファレンス』を参照)で指定されている読み取り専用の FNAT または FUSER システムファイルが Natural セッションで使用されている場合、次のような状況においては、テキストメンバがスクラッチパッドファイルに格納されます(『オペレーション』ドキュメントを参照)。
ワークプランライブラリに指定されているデータベース ID およびファイル番号が 現在の FNAT または FUSER システムファイルと同じ場合
ワークプランライブラリにデータベース ID およびファイル番号が指定されていない場合
Natural Security 環境でオブジェクトハンドラを使用するには、オブジェクトハンドラに対してユーティリティプロファイルを Natural Security で定義する必要があります。 少なくとも、デフォルトのプロファイルを定義する必要があります。 ユーティリティプロファイルの詳細については、『Natural Security』ドキュメントの「Protecting Utilities」セクションを参照してください。
Natural Security がインストールされている場合、オブジェクトハンドラは、要求された機能が有効かどうかを確認するために、Natural Security の SYSOBJH ユーティリティプロファイルをチェックします。
ロード機能の実行中に Natural Security エラーが発生すると、次の操作が行われます。
[Write report]オプションがオンラインモードで設定されていると、エラーメッセージがレポートファイルに出力され、現在のロードコマンドの処理は続行します。
[Write report]オプションがバッチモードで設定されていると、エラーメッセージがレポートファイルに出力され、エラーが発生したロードコマンドの処理が完了した後、オブジェクトハンドラは終了します。
[Write report]オプションが設定されていないと、エラーメッセージが発行され、ロードコマンドは終了します。
次の PF キーは、すべてのフルスクリーンマップで使用できます。
PF キー | 説明 |
---|---|
PF1 | カーソルが置かれているフィールドのヘルプ機能を呼び出します。 |
PF3 | 現在の画面を終了し、前の画面に戻ります。 |
PF6 | リストの先頭にジャンプします。 |
PF7 | リストを 1 ページ分スクロールアップします。
画面の場合は、1 画面/ステップ戻ります。 |
PF8 | リストを 1 ページ分スクロールダウンします。
ウィザード画面の場合は、次の画面/ステップに進みます。 |
PF9 | リストの最後にジャンプします。 |
PF10 | ナビゲーションおよび特別な設定を行うためのコマンドを選択する[Commands]メニューが表示されます。 「ダイレクトコマンド」の「ナビゲーションと特別な機能のためのコマンド」も参照してください。 |
PF12 | 現在の機能をキャンセルします。 |
PF20 | オブジェクトハンドラのアクティブなプログラムをすべてリスト表示します。 技術的な問題を Software AG に連絡する際に役立つ情報です。 |