SYSEXT ユーティリティ- Natural アプリケーションプログラミングインターフェイス

SYSEXT ユーティリティを使用すると、現在のシステムライブラリ SYSEXT に含まれている Natural アプリケーションプログラミングインターフェイス(API)を検索し、テストできます。

Natural API は Natural サブプログラム(カタログ化オブジェクト)で、データにアクセスして必要に応じて変更したり、Natural ステートメントではアクセスできないサービスを実行したりする場合に使用します。Natural API は、Natural、サブコンポーネント、またはサブ製品を参照します。

SYSEXT ユーティリティ- Natural アプリケーションプログラミングインターフェイス」ドキュメントでは、次のトピックについて説明します。

関連トピック:


SYSEXT の概要

SYSEXT ユーティリティには、各 Natural API について、機能説明、1 つのプログラム例、1 つのカテゴリ、および API に固有のキーワードがあります。

次の図に、SYSEXT で提供されている Natural オブジェクトおよび主な機能の概要を示します。

graphics/sysext.png

Natural API に提供されているオブジェクト

各 Natural API に提供されている一般的な Natural オブジェクトのタイプは、次のセクションでリストされています。特定の API 用に存在する可能性のある追加オブジェクトは含まれていません。

API のすべての関連オブジェクトは、システムファイル FNAT のライブラリ SYSEXT に含まれています。

次の表の nnnn は、API、および対応するプログラム例とテキストオブジェクトを識別するための 4 桁の番号を表します。

Object Name 説明
USRnnnnN 指定された機能を実行する API サブプログラム(カタログ化オブジェクト)。
USRnnnnP

API の効果のテストに使用できるプログラム例(ソースオブジェクト)。

プログラム例によって、対応するサブプログラム USRnnnnN が呼び出されます。

USRnnnnT

短い説明と長い説明をリスト表示するテキストオブジェクト、および使用法、キーワード、カテゴリ、インターフェイスバージョンに関する情報。

テキストオブジェクトを表示するには、行コマンド T を使用します。「行コマンド」を参照してください。

一部の API では、API に関連する機能を提供するコピーコードを使用できます。コピーコードには USRnnnnX という名前が付けられています。X は識別文字("Z"、"Y" など)です。

SYSEXT の呼び出しと終了

SYSEXT ユーティリティは、次の構文図で説明されているシステムコマンド SYSEXT によって起動されます。

SYSEXT

../graphics/sbo2.gif

ALL

../graphics/sbc2.gif

../graphics/sbo2.gif

FIRST

../graphics/sbc2.gif

../graphics/sbo2.gif

DESCENDING

../graphics/sbc2.gif

CURRENT SECOND ASCENDING

次の表に、パラメータの説明を示します。

パラメータ 説明
ALL すべての API をリストします(デフォルト)。
CURRENT 現在の API、つまりすべてのユニークな API、およびインターフェイスバージョンを持つ API の現在のバージョン(キーワード +CURRENT-VERSION を使用)のみをリストします。「インターフェイスバージョン」を参照してください。
FIRST 最初のメニューと製品コード項目(デフォルト)を表示します。以下の例を参照してください。
SECOND 2 番目のメニューとカテゴリ項目を表示します。以下の例を参照してください。
ASCENDING API を昇順で表示します(デフォルト)。
DESCENDING API を降順で表示します。

Start of instruction setSYSEXT を呼び出すには

  • 次のシステムコマンドを入力します。

    SYSEXT

    以下の例に示すようなメニューが表示されます。最初のメニューに応じて、使用可能なすべての Natural API のリストが表示されます。

    10:57:31              ***** NATURAL SYSEXT UTILITY *****             2012-04-23
    User SAG                            - Menu -                   Library SYSEXT
    
    Cmd Interface Description                                                  Prod
    --- USR*____  _____________________________________________________________ *__
     _  USR0010N  Get SYSPROF information                                       NAT
     _  USR0011N  Get information on logical file                               NAT
     _  USR0020N  Read any error message from FNAT or FUSER                     NAT
     _  USR0040N  Get type of last error                                        NAT
     _  USR0050N  Get SYSPROD information                                       NAT
     _  USR0060N  Copy LFILE definition from FNAT to FUSER                      NAT
     _  USR0080N  Get or set type and name of editor contents                   NAT
     _  USR0120N  Read Natural short error message                              NAT
     _  USR0210N  Save, catalog or stow Natural object                          NAT
     _  USR0220N  Read Natural long error message                               NAT
     _  USR0221N  Read Natural long error message                               NAT
     _  USR0320N  Read user short error message from FNAT or FUSER              NAT
     _  USR0330N  Read Natural object directory                                 NAT
    
     Category .. ______________________________  Keyword .. ____________________
    
    Command ===>
    Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
          Help  Reset Exit  Desc  Curr  --    -     +     ++          >     Canc  

任意のパラメータで SYSEXT を呼び出すことができます。例えば、起動時に 2 番目のメニューを表示することができます。

SYSEXT SECOND

この場合は、次のようなメニューが表示されます。

 10:57:31              ***** NATURAL SYSEXT UTILITY *****             2012-04-23
 User SAG                            - Menu -                   Library SYSEXT

 Cmd Interface Description                        Category
 --- USR*____  __________________________________ *_____________________________
  _  USR0010N  Get SYSPROF information            SYSTEM COMMANDS
  _  USR0011N  Get information on logical file    SYSTEM FILES
  _  USR0020N  Read any error message from FNAT o ERROR MESSAGES
  _  USR0040N  Get type of last error             ERROR HANDLING
  _  USR0050N  Get SYSPROD information            SYSTEM COMMANDS
  _  USR0060N  Copy LFILE definition from FNAT to SYSTEM FILES
  _  USR0080N  Get or set type and name of editor EDITOR
  _  USR0120N  Read Natural short error message   ERROR MESSAGES
  _  USR0210N  Save, catalog or stow Natural obje NATURAL OBJECTS
  _  USR0220N  Read Natural long error message    ERROR MESSAGES
  _  USR0221N  Read Natural long error message    ERROR MESSAGES
  _  USR0320N  Read user short error message from ERROR MESSAGES
  _  USR0330N  Read Natural object directory      NATURAL OBJECTS

 Category .. ______________________________  Keyword .. ____________________
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
      Help  Reset Exit  Desc  Curr  --    -     +     ++    <           Canc

別の方法として、パラメータなしで SYSEXT を呼び出し、表示されるメニューを調整することもできます。「PF キー」を参照してください。

Start of instruction setSYSEXT を終了するには

  • SYSEXT ユーティリティメニューで PF3 キーまたは PF12 キーを押します。

    または:
    コマンド行にピリオド(.)または EXIT を入力します。

SYSEXT ユーティリティの使用

このセクションでは、次のトピックについて説明します。

SYSEXT ユーティリティメニューの要素

SYSEXT ユーティリティメニューには、API のリストが表示されます。各 API には、API 名([Interface])、説明([Description])、および選択したメニューに応じて製品コード([Prod])またはカテゴリ([Category])による分類があります。左端の列([Cmd])を除き、各列のヘッダーは選択条件を入力できる選択フィールドです。

メニューの下部にある[Category]検索フィールドを使用して、使用可能なカテゴリを検索することもできます。

Keywords]入力フィールドは、使用可能なキーワードを取得するための検索フィールドとして使用することも、API を取得するための選択フィールドとして使用することもできます。

複数選択フィールドで選択条件を指定することもできます。例えば、キーワード PF-KEY およびカテゴリ NATURAL ENVIRONMENT を使用して、USR4 で始まる API を 1 つの手順で選択できます。

すべてのメニュー要素とその使用方法の詳細を以下に示します。

要素 説明 使用方法
Cmd テキストオブジェクトまたはプログラム例で実行される行コマンドの入力フィールド。「行コマンド」を参照してください。 行コマンドを入力します。例:
K 指定されている API に関連するすべてのキーワードをリストします。
インターフェイス API サブプログラムの名前。インターフェイスバージョンを持つ API が強調表示されます。 アスタリスク(*)を入力するか、アスタリスクで区切った接頭辞を入力します。例:
USR4* 接頭辞 USR4 を持つすべての API をリストします。
説明 API の目的の概要。 文字列を入力します。例:
default default または Default という文字列が説明に含まれているすべての API をリストします。
* * という文字列が説明に含まれているすべての API をリストします。
Prod

API の影響を受ける Natural(NAT)または Natural アドオン製品の製品コード。

使用可能な製品コード:NAT = Natural、, NDV = Natural 開発サーバー、PRD = Predict、RPC = Natural RPC(リモートプロシージャコール)

NAT 以外の製品コードは、強調表示されます。

最初のメニューにのみ表示されます。

名前を入力するか、アスタリスク(*)で区切った接頭辞を入力します。例:
N* 製品コードが N で始まるすべての API をリストします。
カテゴリ(選択フィールド)

API が機能エリアまたは目的に従って分類されるカテゴリ。

1 つの API には 1 つのカテゴリしか設定できません。

2 番目のメニューにのみ表示され、API のリストの上に配置されます。

名前を入力するか、アスタリスク(*)で区切った接頭辞を入力します。例:
NATURAL OBJECTS カテゴリが NATURAL OBJECTS であるすべての API をリストします。
Category(検索フィールド)

すべてのカテゴリをリストします。

API のリストの下にあります。

カテゴリ検索」を参照してください
キーワード すべてのキーワードをリストします。または選択条件としてキーワードを入力します。 キーワード検索」または「キーワード選択」を参照してください。
Command ユーティリティコマンドを入力するコマンド行。 ユーティリティコマンドを入力します。「ユーティリティコマンド」を参照してください。

Start of instruction setカテゴリ検索

  • アスタリスク(*)を入力するか、オプションでアスタリスクで区切った接頭辞をカテゴリ検索フィールドに入力します。例:

    N*

    これで、次のようなメニューが表示されます。

             Search for Categories
    
      Mark Category
      ---- N*____________________________
        _  NATURAL ENVIRONMENT
        _  NATURAL OBJECTS

    特定のカテゴリを選択条件として選択するには、任意の文字を[Mark]列に入力します。これで、この選択条件を満たすすべての API のリストが表示されます。

Start of instruction setキーワード検索

  • アスタリスク(*)を入力するか、アスタリスクで区切った接頭辞を入力します。例:

    PF*

    次のようなメニューが表示され、別のウィンドウに PF で始まるキーワードが表示されます。

             Search for Keywords
    
      Mark Keyword
      ---- PF*_________________
        _  PF-KEY
        _  PF-KEY LINE

    特定のキーワードを選択条件として選択するには、任意の文字を[Mark]列に入力します。これで、この選択条件を満たすすべての API のリストが表示されます。

Start of instruction setキーワード選択

  • キーワード全体を入力します。例:

    PF-KEY

    これで、キーワードが PF-KEY であるすべての API のリストが表示されます。

    注意:
    末尾以外のアスタリスクは文字どおりに解釈されます。例えば、*LANGUAGE を入力すると、キーワードが *LANGUAGE である API のリストが表示されます。

PF キー

次の PF キーを使用できます。

PF キー Name 関数
PF1 Help コンテキスト依存ヘルプを表示します。入力フィールドごとに特定のヘルプテキストがあります。コマンド行などのその他のコンテキストでは、一般的なヘルプテキストが表示されます。
PF2 Reset すべての選択フィールドをクリアし、API リストを再調整します。
PF3 Exit SYSEXT ユーティリティを終了するか、現在のメニューまたはウィンドウを閉じます。
PF4 Asc/Desc API の昇順(Asc)と降順(Desc)を切り替えます。
PF5 All/Curr すべての API を表示するメニュー(All)と、現在の API のみを表示するメニュー(Curr)を切り替えます。「インターフェイスバージョン」を参照してください。
PF6 -- リストの先頭までスクロールします。
PF7 - 1 ページ上方にスクロールします。
PF8 + 1 ページ下方にスクロールします。
PF9 ++ リストの末尾までスクロールします。
PF10 < 最初のメニューに移動します。
PF11 > 2 番目のメニューに移動します。
PF12 Canc SYSEXT ユーティリティを終了するか、現在のメニューまたはウィンドウを閉じます。

行コマンド

行コマンドを使用すると、オブジェクト操作を実行できます。行コマンドは、目的の API の横の[Cmd]列に入力できます。疑問符(?)を入力するか PF1 キーを押すと、有効な行コマンドがリストされます。

次の行コマンドを使用できます。

行コマンド 関数
K 指定されている API に関連するキーワードをリストします。
T 対応する API の説明のテキストオブジェクト USRnnnnT をリストします。

API と API に関連するキーワードおよびカテゴリの目的、機能、および呼び出し規則について説明します。

L プログラム例 USRnnnnP をリストします。
E プログラム例 USRnnnnP を編集します。
R プログラム例 USRnnnnP を実行します。
X プログラム例 USRnnnnP を実行します。
. SYSEXT ユーティリティを終了します。

ユーティリティコマンド

このセクションでは、コマンド行で入力する次のユーティリティコマンドについて説明します。

  • EXIT
    SYSEXT ユーティリティを終了します。

  • REFRESH
    現在のライブラリ SYSEXT に含まれているオブジェクトのデータを使用して、API 情報を更新します。REFRESH コマンドは、API の説明またはキーワードが変更されたり、テキストオブジェクトが追加または削除されたりした場合にのみ必要となります。

    正常に完了すると、テキストモジュール EXT-XML1 および EXT-XML2 がライブラリ SYSEXT 内に生成されたことが確認されます。

    注意:
    ソースオブジェクトの EXT-XML1 と EXT-XML2 は変更しないでください。これらは、SYSEXT ユーティリティの設定に必須で、Software AG 内部でのみ使用されます。

インターフェイスバージョン

インターフェイスバージョンは、(ほぼ)機能が同じでも、拡張パラメータ仕様が異なる API のコレクションとみなすことができます。したがって、新しいバージョンと以前のバージョンの互換性を保つために、明確な開発サイクルに対応します。

API にインターフェイスバージョンがある場合は、対応するテキストオブジェクト USRnnnnT に表示されますインターフェイスバージョンは、それが属するバージョンに応じてリスト内で整列されます。右端の要素は現在のバージョンに属します。このステータスは、予約キーワード +CURRENT-VERSION で表されます。他のすべての要素は前のバージョンに属し、予約キーワード +PREVIOUS-VERSION でマークされています。インターフェイスバージョンを持たない API は、「ユニーク」な API と呼ばれています。

インターフェイスバージョンを持つ API は、メニュー上で強調表示されます。

現在の API すべてのリスト(「PF5」を参照)は、すべてのユニークな API、およびインターフェイスバージョンを持つ API の現在のバージョン(キーワード +CURRENT-VERSION を使用)で構成されます。

予約キーワード

予約キーワードとは、API のメタ情報を指し、例えば API が追加された Natural バージョンなどが該当します。予約キーワードは常にプラス記号(+)で始まります。詳細については、次の表を参照してください。

予約キーワード 説明
+CURRENT-VERSION インターフェイスバージョンを持つ API の現在のバージョン(「インターフェイスバージョン」を参照)。
+PREVIOUS-VERSION インターフェイスバージョンを持つ API の以前のバージョン(「インターフェイスバージョン」を参照)。
+NEW-PROD-version 特定の製品に特定のバージョンで追加された API。例えば、+NEW-NAT-6.3.11 は、バージョン 6.3.11 で製品 Natural に追加された API を指します。
+MOD-PROD-version 特定の製品に属し、特定のバージョンで変更された API。例えば、+MOD-NAT-6.3.12 は、製品 Natural に属し、バージョン 6.3.12 で変更された API を指します。

Natural API の使用

システムライブラリ SYSEXT に含まれる Natural API を使用する場合は、次のいずれかの手順を実行します。

  • この API を使用する Natural オブジェクトが含まれるユーザーライブラリの steplib ライブラリとして、システムファイル FNAT のシステムライブラリ SYSEXT を定義します。したがって、Natural バージョンをアップグレードする場合は、API 固有のアクションは必要ありません。

  • 目的の API をシステムファイル FNAT のシステムライブラリ SYSTEM にコピーします。したがって、Natural バージョンをアップグレードする場合は、1 つのライブラリで API をチェックするだけで済みます。

  • 目的の API をシステムファイル FUSER のシステムライブラリ SYSTEM にコピーします(非推奨)。

  • 目的の API を、この API を使用する Natural オブジェクトが格納されているシステムファイル FUSER のユーザーライブラリ(またはその steplib の 1 つ)にコピーします(非推奨)。

API は、その API が提供されている Natural バージョンでのみ使用できます。API は FNAT システムファイルにのみ保存することを強くお勧めします。これにより、正しいバージョンが常に実行されます。

Start of instruction setインターフェイスを使用するには

  1. 呼び出し元のプログラムで DEFINE DATA ステートメントを使用して、その API のテキストオブジェクト USRnnnnT にリストされているパラメータを指定します。プログラム例 USRnnnnP では、DEFINE DATA LOCAL ステートメント内でパラメータを定義しています。または、呼び出し元のプログラム外の別の LDA(ローカルデータエリア)または PDA(パラメータデータエリア)で、そのデータエリアを参照する DEFINE DATA LOCAL USING ステートメントを使用してパラメータを指定できます。

  2. 次のステートメントを入力します。

    CALLNAT 'USRnnnnN' parameters

    詳細については、『ステートメント』ドキュメントの「CALLNAT」ステートメントを参照してください。

注意:
非標準の使用方法は、常にそれぞれのテキストオブジェクト USRnnnnT で記述します。

システムライブラリ SYSEXT に含まれている Natural コピーコードを使用する場合は、次の手順を実行します。

  • 目的のコピーコードを、このコピーコードを使用する Natural オブジェクトが格納されているシステムファイル FUSER のユーザーライブラリにコピーします。

Start of instruction setコピーコードを使用するには

  1. 呼び出し元のプログラムで INCLUDE ステートメントを使用して、その API のテキストオブジェクト USRnnnnT またはコピーコード自体にリストされているパラメータを指定します。プログラム例 USRnnnnP では、DEFINE DATA LOCAL ステートメント内でパラメータを定義しています。または、呼び出し元のプログラム外の別の LDA(ローカルデータエリア)または PDA(パラメータデータエリア)で、そのデータエリアを参照する DEFINE DATA LOCAL USING ステートメントを使用してパラメータを指定できます。

  2. 一部のコピーコードでは、追加のデータ定義が必要です。これらは API のテキストオブジェクト USRnnnnT とコピーコード自体に記述します。

  3. 次のステートメントを入力します。

    INCLUDE USRnnnnX 'parameter'...

    詳細については、『ステートメント』ドキュメントの「INCLUDE」ステートメントを参照してください。

注意:
非標準の使用方法は、常にそれぞれのテキストオブジェクト USRnnnnT で記述します。