【SAP】Tr-cd:SGENからオブジェクトを再生成する方法【Basis】

▼SAP転職なら! LINE追加で気軽に相談▼

今回は、Tr-cd:SGENからオブジェクトを再生成する方法について説明します。

オブジェクト再生成とは/なぜ必要なのか

画像に alt 属性が指定されていません。ファイル名: 3d%E7%96%91%E5%95%8F%E7%AC%A6%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3%E3%81%AFfaq%E3%81%8A%E3%82%88%E3%81%B3qa%E5%9B%9E%E7%AD%94%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%83%85%E5%A0%B1%E3%81%AB%E7%BD%B2%E5%90%8D%E3%81%99%E3%82%8B%E3%81%8B%E5%B0%8B%E3%81%AD%E3%81%BE%E3%81%99%E8%B3%AA%E5%95%8F%E8%B3%AA%E5%95%8F%E3%81%AE%E5%9B%9E%E7%AD%94%E3%82%B5%E3%82%A4%E3%83%B3%E3%81%BE%E3%81%9F%E3%81%AF%E6%BC%AB%E7%94%BB%E3%81%AE%E3%83%9F%E3%83%8B%E3%83%9E%E3%83%AB%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%81%AE%E6%A6%82%E5%BF%B5%E3%81%AB%E5%95%8F%E9%A1%8C%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%993d%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3%E3%83%99%E3%82%AF%E3%83%88%E3%83%AB%E3%83%AC.jpg

SAP のSPを適用 / アップグレードする場合、通常オブジェクトはコンパイルされません。また、オブジェクトに何らかの修正を加えた場合にもコンパイルが走らない場合があります。

この際、Tr-cd:SGENからオブジェクトを再生成する必要があります。

オブジェクト再生成を実施しないと、機能が正常に動かなくなる可能性があるので注意が必要です。

Tr-cd:SGEN SAPロードジェネレータ

目的に応じて、6つの生成オプションがあります。
以下、SAP標準のヘルプの内容を記載します。

SAP ロードジェネレータ (SGEN) に関する情報

概要
トランザクション SGEN を使用すると、SAP システムで ABAP ロード (BSP および WebDynpro を含む) を生成できます。これには、特定のソフトウェアコンポーネント/パッケージのロード生成、システムアップグレード後の変更されたコンポーネントの生成、および以前に生成されたロードの再生成などがあります。また、前の SGEN の実行の再開や繰返、および特定の移送依頼を含めることもできます。
SGEN の第一画面では、以下についてのオプションが選択できます。
•生成のタスク
•システムコンポーネントの選択 (コンポーネント固有タスクを選択した場合)
•ソフトウェアパッケージの選択 (特定のパッケージを含める必要がある場合)
•移送依頼の選択 (移送依頼を含める必要がある場合)
選択したタスクに応じて、後続の画面ではシステムコンポーネント、パッケージ、または移送依頼を選択できます。
生成は、ジョブモニタ画面から開始できます。さらに、この画面には、たとえば生成の期間に関する予測など、すでに実行されたか実行中の生成ジョブについての情報が表示されます。
注記:ロードを再生成する場合は、データベースで十分な領域が利用可能であることを確認してください。必要な領域は数百 MB になる場合があります。すべてのコンポーネントの生成には、2 GB 前後の空き領域が必要です。

【手順】
手順①:生成のタスクの選択
トランザクション SGEN の第一画面で、生成目的に合わせて以下のタスクを選択できます。

•選択したソフトウェアコンポーネントのすべてのオブジェクトを生成
特定のソフトウェアコンポーネントのすべてのオブジェクトのロードを生成する場合は、この方針を選択します。これは、たとえばシステムを再インストールする場合などが該当します。ここで、操作に必要なロードはまだ利用可能になっていないため、再生成する必要があります。このタスクを選択すると、ソフトウェアコンポーネントによる選択画面が表示されます。この画面では、特定のソフトウェアコンポーネントを選択することによって、生成するオブジェクトを選択できます。押ボタンを使用して、必要なソフトウェアコンポーネントを選択してください。

•選択したパッケージのすべてのオブジェクトを生成
オブジェクトを再生成するソフトウェアパッケージを指定することで、目的のロードをさらに詳細に選択することができます。
このタスクを選択すると、ソフトウェアパッケージによる選択画面が表示されます。この画面では、特定のパッケージを生成に追加できます。パッケージはツリー構造で定義されるため、ALV グリッド上の押ボタンを使用することによって、サブツリー全体 (指定したパッケージの下のすべての階層レベル上にあるすべてのサブパッケージ) を追加することも可能です。たとえば、BASIS のパッケージを選択する場合、そのサブツリーを追加すると、通常は (システムに応じて) 数千のパッケージが新たに追加されます。押ボタンの右隣にはサブパッケージの数が表示され (選択を行った後)、その数をクリックすると、すべてのサブパッケージの一覧を見ることができます。
赤/緑の信号は、指定したパッケージがシステムで見つかったかどうかを示しています。緑信号の表示されたパッケージは (オブジェクトの再生成は不要ですが )生成に追加されるのに対し、赤信号の表示されたパッケージは不明 (インストールベースが原因、または単なるミスタイプ) のため無視されます。F4 検索ヘルプを使用して、インストール済ソフトウェアパッケージを検索できます。
注記:パッケージのエントリが重複 (直接的な重複、またはサブツリー選択による間接的な重複) していても、生成に悪影響はありません。重複したパッケージは、フィルタにかけられて 1 度だけ処理されます。

•SAP システムアップグレード後の再生成
アップグレード後、システム内の ABAP オブジェクトのロードを再生成する必要があります。ここでは、以下のことが必要です。◦トランザクション SGEN での生成プロセスの実行時間を可能な限り短くすること
◦データベース内の ABAP ロードに必要な記憶域を大きくしすぎないこと
◦ユーザ側の生成の手間を可能な限り少なくすること
後続の生成セットは、前述の条件を考慮に入れます。これは、アップグレード前にシステムで利用可能であった、ロードのあるすべてのオブジェクト (つまり、アップグレード前にすでに使用されたオブジェクト)、およびアップグレードの開始リリースと終了リリースの間のリリース間隔で再デリバリされたすべてのオブジェクトから構成されます。アップグレード前に生成されたオブジェクトの名称は、アップグレード中にシステムの現在のディレクトリにある REPLIST ファイルに格納されています (プロファイルパラメータ DIR_HOME)。このタスクを選択すると、ソフトウェアコンポーネントによる選択画面が表示されます。標準設定では、すべてのソフトウェアコンポーネントが選択されます。ソフトウェアコンポーネントの選択を解除することによって、生成するオブジェクトの量を制限することができます。押ボタンを使用して、無視するソフトウェアコンポーネントを選択解除してください。

•最終実行のオブジェクトの再生成
このタスクは、たとえば以下の場合に適しています。
◦前回実行時に使用した生成セットのオブジェクト生成が強制終了されており、残りのオブジェクトを再生成したい場合
◦前回実行時に使用した生成セットの全オブジェクトを再生成したい場合
このタスクを選択した後、以下のモードが利用できます。
◦モード ALL
トランザクション SGEN の以前の実行で使用された生成セットの全オブジェクトが生成されます。
◦モード RESUME
トランザクション SGEN の前回実行の生成セットが使用されます。前回の実行で生成されなかったオブジェクト、およびシステムエラーが原因で生成が強制終了されたオブジェクトだけが生成されます。
◦SGEN キューにエントリがまだ存在 (テーブル GENSETM) する場合は、このタスクがデフォルトで選択されます。タスクを選択解除すると、新しい SGEN キューで古いエントリが破棄され、新たに選択された生成タスクは既存のキューに追加されます。

•既存ロードを再生成
このタスクでは、SAP システムに存在する ABAP ロードと無効化されたロードをすべて再生成し、サポートパッケージキューのオブジェクトに対するロードを生成することができます。以下のモードが利用可能です。◦モード ALLロードが存在するすべてのオブジェクトを生成
◦モード INVALID:無効化されたロードのあるオブジェクトだけを生成
オブジェクトのロードは、ロードの生成後にそのオブジェクトまたはそのオブジェクトの使用するオブジェクトに変更があった場合は無効になります。このようなオブジェクトの例として、インクルードとテーブルが挙げられます。これは、サポートパッケージ ( SPAM) またはカーネルパッチのインポートによって生じる場合があります。サポートパッケージキューのオブジェクトに対してロードを生成する場合は、キューのインポート後にタスクを開始します。このタスクによって、システムで無効化されたロードを使用して生成セットが決定されます。このタスクでは、移送依頼のオブジェクト生成タスクとは異なり、修正されたディクショナリオブジェクトによって無効化された ABAP ロードも考慮されます。

•移送依頼のオブジェクト生成
このタスクでは、移送依頼に含まれるオブジェクトのロードを生成することができます。このタスクは、カスタマ開発オブジェクトを生成に追加する場合などに使用できます。このタスクを選択すると、移送依頼の選択画面が表示されます。移送依頼を個別に追加したり、選択した移送依頼を削除したり、フロントエンド上のファイルを使用して移送依頼の一覧をインポートしたりすることが可能です。ファイル形式の詳細については、 ファイル形式に関する文書を参照するか、またはファイルインポート画面の情報ボタンを使用して確認してください。ファイルのインポート後、データの分析結果が表示されます。注記: 重複した移送依頼はフィルタにかけられ、ファイル中の無効なエントリはエラーとマークされて、移送依頼の一覧には追加されません。

手順②:並列生成用サーバの選択
タスクの選択後、ロードを生成するサーバタイプを選択する必要があります。この生成は並列化手法に基づいており、生成セットが小さなサブセットに分割され、並列プロセスで処理されます。リソースに応じて利用可能なサーバを並列処理に追加することによって、複数の並列プロセスが 1 つのサーバで実行されます。
並列生成用サーバの選択画面から、並列処理で使用するサーバを選択できます。ロードはホストのマシンタイプ (MT) に依存することに注意してください。デフォルトの選択は、ログオンしているサーバに基づいています。これは、ログオンサーバ、および、システム上で同じマシンタイプをもつすべてのサーバに相当します。デフォルト選択を使用する場合は、続行を選択します。
生成からサーバを個別に除外したい場合やログオンサーバと異なる特定のマシンタイプのロードを生成したい場合は、該当するサーバを押ボタンで選択します。すべての <プラットフォーム> を選択リンクを選択すると、1 つのマシンタイプのサーバをすべて選択および選択解除できます。
注記: 並列サーバは、トランザクション RZ12 でログオングループを使用して表現されます。トランザクション SGEN に対しては、ログオングループ 'parallel_generators' が登録されます。このグループは、トランザクション SGEN で使用され頻繁に再定義されるため、個人的な目的には使用しないでください。
サーバの選択後、生成セットの定義が自動的に開始され、その生成セットがデータベース (DB テーブル GENSETC) に格納されます。この処理には、数分かかる場合があります。

ジョブモニタ押ボタン
この機能を使用すると、生成セットを再定義しなくても、ジョブプロセス制御を直接呼び出すことができます。ジョブモニタ -> ジョブ一覧 -> スプールまたはジョブログを選択することによって、以前の生成ジョブのログを表示できます。
( ジョブモニタを参照)

以上。

SAP初心者・中級者にはコレ!

SAPコンサルタントとして長年にわたり複数のPJに携わってきたプロによる一冊。

 

本書では宅配ピザ屋を例に、会社の業務とそれに紐づく各SAPモジュールの説明が丁寧にされており、この一冊で体系的に業務とSAPの基礎知識を身に付けることが可能です。

 

これからSAPの業務に携わる人や、改めてSAPの全体観を把握したい人など、初心者~中級者まで自信を持っておすすめします。

SAP転職なら! LINE追加で気軽に相談▼

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です