オブジェクトハンドラは、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 関連オブジェクト、Adabas FDT(フィールド定義テーブル)および外部ファイル(外部オブジェクト)を転送します。
オブジェクトが処理されるソース環境およびターゲット環境に応じて、バイナリフォーマットまたはテキストフォーマットでデータを転送できます。
バイナリフォーマットは、ソースオブジェクトおよびカタログ化オブジェクト、エラーメッセージ、Natural コマンドプロセッサソース、Natural 関連オブジェクト、Adabas FDT、および外部ファイル(外部オブジェクト)に使用できます。
テキストフォーマットは、ソースオブジェクト、Natural コマンドプロセッサソース、エラーメッセージ、および Adabas FDT に適用されます。メインフレームおよび UNIX/OpenVMS/Windows プラットフォーム間では、テキストデータのみを転送できます。同一プラットフォーム間では、バイナリデータを転送できます。UNIX または OpenVMS および Windows プラットフォーム間では、内部フォーマットのポータブルワークファイルを使用してバイナリデータを転送できます。
オブジェクトハンドラを呼び出すには、メニュー機能またはダイレクトコマンドを使用できます。
任意の Natural ライブラリからオンラインでオブジェクトハンドラを呼び出すには
次のシステムコマンドを入力します。
SYSOBJH
入力モードに応じて、オブジェクトハンドラ Main
Menu またはオブジェクトハンドラ Compact Menu のいずれかが表示されます。「コンパクトモード」を参照してください。入力モードを変更するには、SET
INPUT
コマンドを使用するか(「ダイレクトコマンド」を参照)、または INPUT-MODE
パラメータを変更します(「プロファイルの設定」を参照)。オブジェクトハンドラの Main Menu では次のオプションが提供されます。
アンロード
ロード
スキャン
ビュー
管理
これらの機能の詳細と、上級ユーザーモードまたはウィザードでこれらの機能を実行する方法については、「機能」セクションを参照してください。
次のいずれかの方法で機能を選択します。
目的の機能に対応する項目の横にある入力フィールドに任意の文字を入力します。
または:
目的の機能に対応する PF キーを押します。
または:
コマンド行で、目的の機能に対応するオブジェクトハンドラコマンドを入力します。有効なコマンドの詳細については、「ダイレクトコマンド」セクションを参照してください。
バッチモードまたはダイレクトコマンドオンラインモードでオブジェクトハンドラを呼び出すには
「バッチまたはダイレクトコマンドの呼び出し」および「ダイレクトコマンド」の説明に従って、システムコマンド SYSOBJH
の後にダイレクトコマンドを入力します。
ダイレクトコマンドの実行後は、別のダイレクトコマンドを入力するか、ピリオド(.)を入力してオブジェクトハンドラを終了します。
複数のコマンドをオンラインモードまたはバッチモードでオブジェクトハンドラに発行できます。コマンドシーケンスの最後のコマンドは、ピリオド(.
)、STOP
、END
、QUIT
または FIN
にする必要があります。FIN
にすると Natural セッションが終了します。
このセクションでは、次のトピックについて説明します。
オブジェクトハンドラへのコマンドは標準入力から読み込まれます。各コマンドは、キーワードまたはキーワードの後の入力デリミタ(セッションパラメータ ID
)を入力することによって最大 20 のコマンドパーツ/文字列に分けることができます。各コマンドパーツ/文字列は 248 バイト以内でなければなりません。
コマンドが 1 行より長い場合、コマンドに属している各行(最後の行を除く)の末尾にセッションパラメータ CF
で定義された文字(デフォルトは %
)を入力します。これは次の行への継続を示します。ただし、これは、コマンド SYSOBJH
を単独で 1 行に指定する場合に限り可能です。つまり、複数行コマンドが開始する同じ行に SYSOBJH
を入力した場合は CF
を使用できません。また、LS
プロファイルパラメータを 250
に設定することをお勧めします。
,
に設定されているとみなす):
UNLOAD * LIB EXAMPLE, WHERE, WORK $HOME\TEST.SAG STOP
『オペレーション』ドキュメントの「バッチモードでの Natural」
コマンド行に入力されるオブジェクトハンドラへのコマンドは、最高 20 のコマンドパーツで構成できます。
SYSOBJH UNLOAD * LIB EXAMPLE WHERE TRANSFER WORK $HOME/TEST.DAT
Natural システムライブラリ SYSOBJH 内にサブプログラムとして提供されている OBJHAPI アプリケーションプログラミングインターフェイスを使用して、Natural プログラムからオブジェクトハンドラにコマンドを発行できます。必要なパラメータおよび例については、ライブラリ SYSOBJH にある Natural プログラム DOC-API を参照してください。
Natural Security 環境でオブジェクトハンドラを使用するには、オブジェクトハンドラに対してユーティリティプロファイルを Natural Security で定義する必要があります。少なくとも、デフォルトのプロファイルを定義する必要があります。ユーティリティプロファイルの詳細については、『Natural Security』ドキュメントの「Protecting Utilities」セクションを参照してください。
Natural Security がインストールされている場合、オブジェクトハンドラは、要求された機能が有効かどうかおよびパラメータ設定が許可されているかどうかを確認するために、Natural Security の SYSOBJH ユーティリティプロファイルをチェックします。
ロード機能の実行中に Natural Security エラーが発生すると、次の操作が行われます。
[Write report]オプションがオンラインモードで設定されていると、エラーメッセージがレポートファイルに出力され、現在のロードコマンドの処理は続行します。
[Write report]オプションがバッチモードで設定されていると、エラーメッセージがレポートファイルに出力され、エラーが発生したロードコマンドの処理が完了した後、オブジェクトハンドラは終了します。
[Write report]オプションが設定されていないと、エラーメッセージが発行され、ロードコマンドは終了します。
次の PF キーは、すべてのフルスクリーンマップで使用できます。
PF キー | 説明 |
---|---|
PF1 | カーソルが置かれているフィールドのヘルプ機能を呼び出します。
フィールド[Work file]、[External path]、[Ext. Path]、[Object name]、Report file]または[Restart file]にカーソルを移動すると、最大 253 文字の長いワークファイル名を入力できる別のウィンドウが表示されます。 |
PF3 | 現在の画面を終了し、前の画面に戻ります。 |
PF6 | リストの先頭にジャンプします。 |
PF7 | リストを 1 ページ分スクロールアップします。
画面の場合は、1 画面/ステップ戻ります。 |
PF8 | リストを 1 ページ下方にスクロールします。
ウィザード画面の場合は、次の画面/ステップに進みます。 |
PF9 | リストの最後にジャンプします。 |
PF10 | ナビゲーションおよび特別な設定を行うためのコマンドを選択する[Commands]メニューが表示されます。「ダイレクトコマンド」の「ナビゲーションと特別な機能のためのコマンド」も参照してください。 |
PF12 | 現在の機能をキャンセルします。 |
PF20 | オブジェクトハンドラのアクティブなプログラムをすべてリスト表示します。技術的な問題を Software AG に連絡する際に役立つ情報です。 |
Natural DDM(データ定義モジュール)は、ライブラリまたはシステムファイル FDDM に保存できます。以下の項目も参照してください。「FDDM - DDM 用の Natural システムファイル」(『パラメータリファレンス』ドキュメント)
ロード、アンロード、または検索機能で DDM の処理にシステムファイル FDDM を使用するために、オブジェクトハンドラには、[Use FDDM file for processing DDMs]オプションが用意されています。このオプションは、Set additional options を使用して設定します(「設定」セクションを参照)。
Use FDDM file for processing DDMs を選択する際は、次の点に注意してください。
FDDM が NATPARM パラメータファイルでアクティブになっていると、このオプションがデフォルトで選択されます。
ライブラリに保存されている DDM は処理できません。
ライブラリ SYSTEM および Natural オブジェクトタイプ V
を指定する必要があります(「オブジェクト指定」セクションの「Natural ライブラリオブジェクトの詳細」を参照)。
ロード機能で使用すると、すべての DDM が システムファイル FDDM にロードされます。この場合、パラメータ NEWLIBRARY
は無視されます。