バージョン 4.2.5
 —  ユーティリティ  —

プログラミングオブジェクト処理

すべての SYSMAIN 機能をプログラミングオブジェクトに対して実行できます。 SYSMAIN でメンテナンスできるプログラミングオブジェクトには、次のタイプの Natural オブジェクトがあります。プログラム、サブプログラム、サブルーチン、コピーコード、ヘルプルーチン、マップ、ローカルデータエリア、グローバルデータエリア、パラメータデータエリア、クラス、テキスト、記録、Natural コマンドプロセッサ、ダイアログ、ファンクション、ISPF マクロ、レポート、アダプタ、およびリソース。

プログラミングオブジェクトは、含まれているライブラリの名前に従ってシステムファイルに格納されます。ライブラリが SYS で始まる場合(ライブラリ SYSTEM を除く)、オブジェクトは FNAT システムファイルに格納されます。 それ以外のすべてのライブラリでは、オブジェクトは FUSER システムファイルに格納されます。

このセクションでは、プログラミングオブジェクトに SYSMAIN 機能を実行するためのメニュー機能と選択リストオプション、およびダイレクトコマンドの使用時に適用される構文について説明します。


[Programming Objects]メニューのフィールド

[Programming Objects]メニューには、プログラミングオブジェクトの処理に必要なすべての SYSMAIN 機能が含まれています。 次の表に、メニューで表示されるフィールドとその説明を示します。

フィールド 説明
Recat: ON プロファイルパラメータ RECATON に設定されていることを示します。「プロファイルパラメータ RECAT の使用」を参照してください。
Code
保存(ソース)オブジェクトおよびカタログ化オブジェクトを処理するかどうかを指定します。
   
A 保存オブジェクトまたはカタログ化オブジェクト、あるいはその両方として存在するオブジェクトが処理されます。
C カタログ化オブジェクトとして存在するすべてのオブジェクトが処理されます。
S 保存オブジェクトとして存在するすべてのオブジェクトが処理されます。
W 保存オブジェクトおよびカタログ化オブジェクトの両方として存在するオブジェクトのみが処理されます。 この例外は、コピーコード、テキスト、および記録です。 ただし、このオプションを指定すると処理対象になります。
Sel. List
選択処理と自動処理のどちらを使用するかを指定します。
   
Y Yes。
選択処理がアクティブになります。 オブジェクトの処理時に選択リストが表示されます。 これはデフォルト設定です。 選択リストに表示される列、フィールド、および行コマンドの詳細については、「プログラミングオブジェクトの選択リスト」を参照してください。
N No。
選択処理が非アクティブになります。
Name 処理するオブジェクトの名前または名前の範囲(「名前の範囲の指定」も参照)。

デフォルト設定はアスタリスク(*)で、すべての名前が選択されます。

New Name 名前の変更機能で名前を変更するときに、オブジェクトに付ける名前。
Type プログラムの P やマップの M など、処理するオブジェクトタイプに対応するコード(「TYPE の指定 - プログラミングオブジェクト」を参照)。

任意の順序で 1 つ以上のコードを入力できます。 例えば、「PAM」と入力すると、パラメータデータエリアとマップが処理されます。

Set Number LIST XREF コマンドの Predict XRef セット保存オプションを使用して作成された保有セットの数。 このセットに含まれるオブジェクトにすべての SYSMAIN 処理機能を適用できます。

有効な番号を指定すると、SYSMAIN で Predict セットであると見なされます。 番号を指定しないと、通常のオブジェクト処理と見なされます。

[Additional Criteria]ウィンドウの[Set Library]フィールドおよび[Set User]フィールドを使用して、Predict セットのライブラリとユーザー ID を指定できます(「追加条件の指定」を参照)。

XREF
Predict システムファイルに保存された XRef(クロスリファレンス)データが処理されるかどうかを示します。
   
N No。
削除機能を使用する場合を除いて、XRef データは処理されません。 カタログ化オブジェクトを削除または置換すると、このオブジェクトの既存の XRef データはすべて SYSMAIN により必ず削除されます。 N はデフォルト設定です。
Y Yes。
すべての XRef データが処理されます。
S Special。
クロスリファレンスデータがあるかどうかに関係なく、指定したオブジェクトが処理されます。 すべての既存の XRef データが処理されます。
F Force。
すべての XRef データが処理されます。オブジェクトは Predict に記録される必要があります。
 
詳細については、「XRef の考慮事項」を参照してください。
Library ソースライブラリまたはターゲットライブラリの名前

ソースライブラリは、処理対象のオブジェクトを含みます。 ターゲットライブラリは、オブジェクトのコピー先または移動先のライブラリです。オブジェクト名はここで変更されることがあります。

ライブラリのリストと選択」も参照してください。

Database ソースデータベースまたはターゲットデータベースのデータベース ID(DBID)。

ソースデータベースは、処理対象のオブジェクトが保存されているライブラリおよびシステムファイルを含みます。 ターゲットデータベースは、オブジェクトのコピー先または移動先のライブラリおよびシステムファイルを含みます。オブジェクト名はここで変更されることがあります。

有効なデータベース ID は 165535 です。

File ソースシステムファイルまたはターゲットシステムファイル(FNAT または FUSER)のファイル番号(FNR)。

有効なファイル番号は 165535 です。

ソースファイルは、処理対象のオブジェクトが保存されているライブラリを含みます。 ターゲットファイルは、オブジェクトのコピー先または移動先のライブラリを含みます。オブジェクト名はここで変更されることがあります。

Replace
移動、コピー、または名前変更機能の使用時にオブジェクトを置き換えるかどうかを指定します。
   
Y Yes。
ターゲット環境に存在する名前と同じ名前を持つオブジェクトを置き換えます。
N No。
ターゲット環境に存在する名前と同じ名前を持つオブジェクトを置き換えません。 これはデフォルト設定です。
   
置換オプションの使用」も参照してください。
Criteria
追加のオブジェクト選択条件を指定できる[Additional Criteria]ウィンドウを呼び出します。 可能な値は次のとおりです。
   
N No。
[Additional Criteria]ウィンドウを呼び出しません。 これはデフォルト設定です。
Y Yes。
Additional Criteria]ウィンドウを呼び出します。
   
追加条件の指定」も参照してください。

Top of page

プロファイルパラメータ RECAT の使用

セッションの開始時にプロファイルパラメータ RECATON に設定されている場合、この設定は、[Programming Objects]メニューと[Selection]画面に示されます。

RECAT=ON で SYSMAIN 機能を使用すると、標準のダイナミックな再カタログルールが適用されます(『パラメータリファレンス』ドキュメントの「RECAT - ダイナミックな再カタログ」を参照)。 これは次のことを意味します。

自動処理を使用する場合、これらのルールに従わないすべてのオブジェクトは無視され、処理は次のオブジェクトに移ります。

Top of page

プログラミングオブジェクトの選択リスト

選択処理をアクティブにした場合、指定した選択条件に一致するすべてのプログラミングオブジェクトの選択リストが[Selection]画面に表示されます。

このセクションでは、[Selection]画面に表示される列とフィールド、およびプログラミングオブジェクトをさらに処理するための行コマンドについて説明します。

列とフィールド

次の列とフィールドが[Selection]画面に表示されます。

列/フィールド 説明
C 行コマンド用の入力フィールド(下記参照)。
Name 指定した選択条件に一致するプログラミングオブジェクトの名前。
Type TYPE 指定 - プログラミングオブジェクト」でリストしているオブジェクトのタイプに対応するコード。
S/C プログラミングオブジェクトに存在するオブジェクト。保存/ソース(S)オブジェクトまたはカタログ化(C)オブジェクト、あるいはその両方。
Message プログラミングオブジェクトの処理ステータスを示すメッセージ。 表示されるメッセージについては、「ステータスメッセージ」を参照してください。
Listed Library 選択したプログラミングオブジェクトを含むライブラリの名前。

行コマンド

次のいずれかの行コマンドを、[Selection]画面の[C](コマンド)列に入力できます。


コマンド

機能
A [S/C](保存/カタログ化)列に表示されたすべてのオブジェクト、つまり、保存/ソース(S)オブジェクトまたはカタログ化(C)オブジェクトあるいはその両方を処理します。

このコマンドは、検索またはリスト機能には適用されません。

B カタログ化オブジェクトを Natural バッファプールから削除します。 オブジェクトを指定して Enter キーを押すと表示されるウィンドウに「DELETE」を入力して、指定したオブジェクトの削除を確認する必要があります。
C 対応する保存オブジェクトがある場合にも、カタログ化オブジェクトのみを処理します。 保存オブジェクトとしてのみ存在するオブジェクトに C を指定した場合、エラーが発生します。

このコマンドは、検索またはリスト機能には適用されません。

D [Library Selection]画面にのみ適用されます(「ライブラリのリストと選択」も参照)。

指定したライブラリに含まれるオブジェクトの短いリストを表示します。 リストに含まれる情報(名前、タイプ、ソース/カタログ化オブジェクト)は、「メニュー機能とコマンドの使用」の「選択処理」で示した[Selection]画面に表示される情報と同じです。

H 保存(ソース)オブジェクトのハードコピーを生成します。

指定したオブジェクトのソースコードが出力され、画面に表示されます。

I オブジェクトのディレクトリ情報を表示します。

このコマンドは、システムコマンド LIST DIR object-nameに類似しています。表示されるディレクトリ情報の詳細については、『システムコマンド』ドキュメントの「ディレクトリ情報の表示」を参照してください。

L 保存(ソース)オブジェクトのソースコードを表示します。

このコマンドは、システムコマンド LIST object-nameに対応します。ソースコード画面から実行できるコマンドの詳細については、『システムコマンド』ドキュメントの「ソースのリスト」を参照してください。 例外:EXPAND コマンドは使用できません。 表示するソースオブジェクトが steplib ライブラリに含まれている場合、ZOOM コマンドは使用できません。

[Library Selection]画面上(「ライブラリのリストと選択」も参照):

ライブラリに含まれるオブジェクトの拡張リストを表示します。 行コマンド D によって表示される情報に加えて、拡張リストには、プログラミングモード、Natural バージョン、ユーザー ID、保存/カタログ化日時などのオブジェクトディレクトリ情報が表示されます。

R リソースタイプの Natural オブジェクトのロングネームを表示します。
[Library Selection]画面上(「ライブラリのリストと選択」も参照):

外部サブルーチンの使用を確認します。指定したライブラリとオブジェクトの範囲について、カタログ化オブジェクトが存在するオブジェクトを表示し、オブジェクトが外部サブルーチンを参照するかどうかを示します。

外部サブルーチンを参照するオブジェクトごとに、外部サブルーチンの名前、および可能な場合は、そのサブルーチンに存在するカタログ化オブジェクトの名前を表示します。 サブルーチンタイプのオブジェクトの場合、同等の別名のロングネームが表示されます。

S 対応するカタログ化オブジェクトがある場合にも、保存(ソース)オブジェクトのみを処理します。 カタログ化オブジェクトとしてのみ存在するオブジェクトに S を指定した場合、エラーが発生します。

このコマンドは、検索またはリスト機能には適用されません。

[Library Selection]画面上(「ライブラリのリストと選択」も参照):

別名のロングネームまたは同等のカタログ化オブジェクトのショートネーム、あるいはその両方によって、指定したライブラリに含まれているすべての外部サブルーチンをリストします。

X Natural Connection と Entire Connection がインストールされている場合にのみ適用されます。

保存(ソース)オブジェクトを PC にダウンロードします(「PC へのソースオブジェクトのダウンロード」も参照)。

Z サイズの計算:DATSIZEESIZEMCG サイズなどの、保存(ソース)オブジェクトおよびカタログ化オブジェクトのサイズを確認します。

PC へのソースオブジェクトのダウンロード

ダウンロードオプションは、Natural Connection および Entire Connection がインストールされている場合にのみ適用されます。

Start of instruction set 1 つ以上のソースオブジェクトをダウンロードするには

  1. SYSMAIN を呼び出す前に次のことを行います。

  2. 任意の[Selection]画面を呼び出します。

  3. ダウンロードするオブジェクトの横に、次の行コマンドを入力します。

    X

    Enter キーを押します。

    次のような[PC Download Options]ウィンドウが表示されます。

      13:23:15             ***** NATURAL SYSMAIN UTILITY *****            2005-08-10
      User SAG                   -    Copy   Selection  -                           
                                                                                    
     COPY ALL * WITH XREF N FROM OLDLIB WHERE DBID 10 FNR 32 TO NEWLIB WHERE     
     DBID 10 FNR 32                                                                 
                                                                                    
      C  Name     Type   S/C  Message        C  Name     Type   S/C  Message        
      -  -------- ------ ---  ------------   -  -------- ------ ---  ------------   
      X  SUB1     Subpgm S                   X  SUB2     Subpgm S/C                 
      X  SUB3     Subpgm S/C                 X  SUB4     Subpgm S                   
      X  SUB5     Subpgm S/C                 X  SUB6     Subpgm S/C                 
     +----------------- PC Download Options ------------------+ S/C                 
     !   Specify the relevant PC options                      ! S/C                 
     !                                                        ! S                   
     ! Drive ...... C                                         ! S/C                 
     ! Path ....... SOURCES/SUBPROGRAMS                       ! S/C                 
     ! Extension .. NS*                                       ! S                   
     !                                                        ! S                   
     !                                                        ! S                   
     !                                                        ! ed Library: OLDLIB 
     ! Warning: This will overwrite any existing objects with !                     
     !          the same path, name and extension.            ! Exit) _             
     +--------------------------------------------------------+ -PF10--PF11--PF12---
           Help  Menu  Exit  Copy  Del   Find  List  Move  Ren               Canc
    

    [Drive]フィールドに、オブジェクトのダウンロード先の PC ドライブの名前を入力します。 デフォルト設定は C です。

    [Path]フィールドに、オブジェクトのダウンロード先の PC ディレクトリ/サブディレクトリの名前を入力します(上記の例では、SOURCES ディレクトリの SUBPROGRAMS サブディレクトリ)。 ディレクトリとサブディレクトリ間、および複数のサブディレクトリ間のセパレータとしてスラッシュ(/)を入力します。 指定したディレクトリ/サブディレクトリが存在しない場合は、該当するエラーメッセージが返されます。

    [Extension]フィールドに、オブジェクトのソースコードのロード先のテキストファイルの拡張子を入力します。 NS* と指定すると、アスタリスクが指定したオブジェクトタイプで置き換えられます(「TYPE の指定 - プログラミングオブジェクト」を参照)。

    例:SUB1 という名前のサブプログラムが SUB1.NSN という名前のファイルにロードされます。

  4. ENTER キーを押して、オブジェクトをダウンロードします。

    メッセージ行に、「4824 :要求したオプションの処理が正常終了しました。」というメッセージが表示されます。

    また、画面に[Message]列が表示された場合、ダウンロードしたオブジェクトの横に Exported というメッセージが表示されます。

  5. 必要に応じて、この選択リストから他のオブジェクトのダウンロードを続けます。

    現在の[Selection]画面からの追加のダウンロードに対して、[PC Download Options]ウィンドウは再表示されません。 このウィンドウは、[Selection]画面の呼び出し後、またはダイレクトコマンド SET PC の実行後に、行コマンド X を最初に発行したときにのみ表示されます。

    [PC Download Options]ウィンドウの設定は、SYSMAIN を終了するまでアクティブのままです。

Top of page

XRef について

Predict システムファイルに格納されたすべてのクロスリファレンス(XRef)データは、SYSMAIN で処理できます。 XREF オプションでは、XRef データを SYSMAIN で処理する必要があるかどうかが示されます。 カタログ化オブジェクトに削除または置き換え機能が実行される場合、XRef データは常に削除されます。

Predict がインストールされていない場合、XREF オプションを N に設定すると、Predict ファイルの検証は実行されません。 XREF オプションを Y に設定したときに、使用中の FDIC ファイルが有効な Predict ファイルでない場合、エラーメッセージが返されます。

XREF オプションを設定する場合のルールは、Natural Security によるルールと同じです。 ただし、非セキュリティ環境では、制限はありません。

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

XREF を N に設定

XREF オプションを N に設定した場合、XRef データは処理されませんが、カタログ化プログラミングオブジェクトが削除されるか置き換えられると、SYSMAIN では XRef が削除されます。 ターゲット Predict システムファイルは、ソースまたはターゲットの FDIC システムファイルの現在の設定に従って決定されます。 デフォルトは、Natural セッションの開始時に FDIC プロファイルパラメータ割り当てられた値です(『パラメータリファレンス』ドキュメントの「FDIC - Predict システムファイル」を参照)。

XREF を Y または F に設定

XREF オプションを Y または F に設定した場合、処理中に次のアクションが適用されます。

XREF を F に設定

XREF オプションを F に設定した場合、SYSMAIN では、プログラミングオブジェクト(プログラム、サブルーチン、サブプログラム、マップ、またはヘルプルーチンのみ)に、Predict システムターゲットファイルで定義された Predict プログラムエントリがあるかどうかがさらにチェックされます。 ない場合、オブジェクトの処理は終了します。

XREF を S に設定

XREF オプションを S に設定した場合、特殊ケースが適用され、指定したオブジェクトの範囲は、すべてのオブジェクトにクロスリファレンスデータがあるかどうかに関係なく、対応する XRef データとともに処理されます。クロスリファレンスデータがあるオブジェクトはクロスリファレンスデータとともに処理され、クロスリファレンスデータがないオブジェクトも処理されます。

XREF エラー

XRef データの SYSMAIN 処理中に次の矛盾が発生すると、オブジェクトまたは機能のすべての処理が終了し、エラーメッセージが表示されます。

Top of page

追加条件の指定

[Programming Object]メニューの入力フィールドで指定した選択条件に加えて、オブジェクトの保存またはカタログ化に関連する日付/時刻、ユーザー ID、および端末 ID によってオブジェクトを選択できます。

また、Predict セットのユーザー ID とライブラリを指定することもできます。 このオプションは、リスト機能および検索機能には適用されません。

例えば、特定の日の 8 時~12 時の間に特定のユーザーによって特定の端末でカタログ化されたオブジェクトのみを選択できます。つまり、選択条件に従ったオブジェクトの処理は、各条件ではなく、すべての選択された条件全体に基づきます。

Start of instruction set 追加の選択条件を指定するには

  1. [Programming Objects]メニューの[Criteria]フィールドで、N(デフォルト)を Y で置き換えます。

    次のような[Additional Criteria]ウィンドウが表示されます。

     15:24:55             ***** NATURAL SYSMAIN UTILITY *****            2006-09-15
     User MMO                 - Copy Programming Objects -                         
                       +------------------------------------------+                
                       !       --- Additional Criteria ---        !                
                       !                                          !                
                       !  Object Type ..... PN__________________  !                
                       !  Date/Time From .. 2006-01-01 _____      !                
                       !  Date/Time To .... __________ _____      !                
                       !  User ID ......... SAG______             !                
                       !  Terminal ID ..... ________              !                
                       !  Set Library ..... ________              !                
                       !  Set User ........ ________              !                
                       !                                          !                
               Code .. !  Command ===>                            !                
       Object  Name .. !                                          !                
                       +------------------------------------------+ N              
       Source  Library ... SYSTEM__    Database .... 10___  File .. 32___          
       Target  Library ... ________    Database .... 10___  File .. 32___          
       Options Replace ... N         + Criteria .... Y                             
                                                                                   
    Command ===>                                                                   
                                                    
                                                                                   
                                                                                   
                                                                                   
    Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
          Help  Menu  Exit  Copy  Del   Find  List  Move  Ren   Fsec  Fdic  Fnat      
    

    必要な選択条件を入力します。 [Additional Criteria]ウィンドウの[Object Type]フィールドに 1 つ以上のオブジェクトタイプコードを入力した場合、[Programming Objects]メニューの[Type]フィールドは同じオブジェクトタイプコードで事前設定されます。

  2. [Programming Objects]メニューに戻ると、[Criteria]フィールドの前のプラス記号(+)は、追加のオブジェクト選択条件が指定されていることを示します。上記の例では、ユーザー ID SAG です。

    [Object Type]フィールドのみにエントリが含まれている場合、このエントリはすでに[Programming Objects]メニューの[Type]フィールドに表示されるため、プラス記号(+)は表示されません。

Top of page

プログラミングオブジェクトのダイレクトコマンド構文

このセクションでは、オンラインモードまたはバッチモードでダイレクトコマンドを使用して、プログラミングオブジェクトに SYSMAIN 機能を実行する場合に適用される構文について説明します。 ダイレクトコマンドの一般的な使用方法については、「コマンドの実行」を参照してください。

次の構文図で使用されているキーワードと変数値については、「ダイレクトコマンドのキーワードと変数」を参照してください。 構文図の記号は、システムコマンドで使用される構文記号に対応します。 これらの記号の詳細については、『システムコマンド』ドキュメントの「システムコマンド構文」を参照してください。

where-clausewith-clause の構文は、どのコマンドでも同じです。

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

COPY と MOVE

COPY
MOVE

ALL
CATALOGED
SAVED
STOWED

           
name

FM [LIBRARY] lib-name

[where-clause]
    TO [LIBRARY] lib-name [where-clause] [with-clause]

例:

COPY PROG1 FM TESTORD TO ORDERS DBID 1 FNR 6 REP
C PGM* WITH REP TYPE PNS FM PRODLIB TO TESTLIB
M PROG1 FM OLDLIB TO NEWLIB
MOVE STOWED * TO NEWLIB WHERE DBID 100 FNR 160 FMDATE 2007-01-01 FM OLDLIB WITH XREF Y

DELETE

DELETE

ALL
CATALOGED
SAVED
STOWED

name

IN [LIBRARY] lib-name

[where-clause] [with-clause]

例:

DELETE C M> IN LIB ORDERS
D * IN TESTLIB DBID 1 FNR 5 NAME SYSNAT
D SA * IN LIBTEST TYPE GLA
D * TYPE PM IN TESTORD FMDATE 2007-01-01 TODATE 2007-04-30

FIND、LIST、および LISTLIB

FIND
LIST
LISTLIB

ALL
CATALOGED
SAVED
STOWED

name

IN [LIBRARY] lib-name

[where-clause] [with-clause]

注意:
ダイレクトコマンド LISTLIB は、バッチモードでのみ使用可能で、ライブラリ名のリストの取得に使用します。

例:

FIND SAVED MENU IN TESTLIB
FIND STOWED MAINMENU IN SYS* WHERE DBID 1 FNR 5
F ALL PROG2 IN PROD* FNR 27 DBID 1
LIST * IN TESTLIB
LIST DT* IN TESTLIB
L SAVED TEST* IN TESTLIB TYPE PNS FNR 6
L SA TEST* TYPE PM IN TESTLIB FNR 6 DBID 2 FMDATE 2007-01-01
LISTLIB ALL MENU IN SYS* DBID 10 FNR 44

RENAME

RENAME

ALL
CATALOGED
SAVED
STOWED

           
           
name AS new-name [with-clause]
 

FM [LIBRARY] lib-name

[where-clause]  
 

TO [LIBRARY] lib-name [where-clause]

例:

RENAME PGM1 AS PROG1 FM TESTLIB
R PGM1 AS PROG1 FM TESTLIB DBID 1 FNR 5 TO PRODLIB DBID 2 FNR 6
R PGM* TYPE PS RCOP FM TESTLIB TO PRODLIB

where-clause

[WHERE] [DBID dbid] [FNRfnr] [NAME vsam-name] [CIPHER cipher]
     

PASSWORD
PSW

password

                     
      [DIC (dbid,fnr,password,cipher)]
      [SEC (dbid,fnr,password,cipher)]

セパレータ

DIC および SEC キーワードに続く各値の間に、または値がない場合に、セパレータとしてコンマを使用する必要があります。 例えば、DIC (10,,secret,2a) のように使用します。

セッションパラメータ ID(『パラメータリファレンス』ドキュメントの「ID - INPUT 区切り文字」を参照)がコンマに設定されている場合、値を区切るセパレータとしてスラッシュ(/)を使用します。

with-clause

[WITH] [TYPE type] [FMDATEdate-from] [TODATEdate-to] [FMTIMEtime-from]        
  [TOTIME time-to] [USER user-id] [TID terminal-id] [XREFxref] [HELP]
  [REPLACE] [RCOP] [EXTEND]

PROMPT
NOPROMPT

MON
NOMON

  [SETUSER set-user] [SETNO set-number] [SETLIBRARY set-library]          

Top of page