Adam は、輸送依存関係があるかどうか、およびそれらの処理方法を知りたいと思っています。
Carl は、オーバーテイクと移送依存関係の 2 つの主要カテゴリについて説明します。
ここで、Carl は 2 つのカテゴリについて Adam に詳しく説明します。
追い越し
追越とは、以下の状況を表します。
- 移送依頼 A をリリースします。
- 移送依頼 B をリリースします。この移送依頼には、すでに移送依頼 A に含まれているオブジェクトが含まれています。
- 移送依頼 B を A の前にインポートします。オブジェクトは移送依頼 B のリリースの最新ステータスに変更されます。
- 移送依頼 A をインポートすると、オブジェクトが移送依頼 A のリリースステータスに戻されます。
移送管理により、同じオブジェクトに対する追い越しが回避されます。オブジェクトが複数の移送依頼に記録されている場合は、移送依頼をまとめてインポートするか、正しい順序 (リリース順序) でインポートすることが強制されます。カスタマイジングオブジェクトの場合、追越チェックはカスタマイジングオブジェクトごとに実装されます。
緊急の場合は、一覧表示された依存関係をマニュアルで選択解除することで、追越チェックを無効にすることができます。これは、例外的な状況でのみ実行する必要があります。依存関係の欠落により、インポートエラーおよびインポートシステムでの不整合が発生する可能性があるためです。
追越チェックを無効にした場合は、選択した移送依頼が正しいインポート位置で再度インポートされます。このプロセスは事前インポートと呼ばれます。
オブジェクトの依存関係
対象依存は、以下の状況を示しています。
- 移送依頼 A をリリースします。
- 移送依頼 B をリリースします。この移送依頼には、移送依頼 A に含まれているオブジェクトを使用するオブジェクトが含まれています。
- 移送依頼 B を A の前にインポートします。移送依頼 A に依存するため、インポートでエラーが発生します。
対象依存チェックは、エクスポート中に実行されます。検出可能なオブジェクトの依存関係が分析されます。
開発者拡張性内のオブジェクト依存関係: 依存関係は、使用先索引に基づいて移送オーガナイザによって分析されます。エクスポートされたことのないオブジェクトへの依存関係が見つかった場合は、移送依頼をマージするか、移送依頼間でオブジェクトを移動するか、適切な順序で移送依頼をリリースして依存関係を解決する必要があります。
キーユーザ拡張性内のオブジェクト依存関係: 依存関係はソフトウェアコレクションのエクスポートアプリによって分析されます。依存関係が見つかった場合は、コレクションをマージするか、コレクション間でオブジェクトを移動して依存関係を解決する必要があります。
キーユーザ拡張性と開発者拡張性の間のオブジェクト依存関係: 拡張性オブジェクトと開発者拡張性オブジェクトは、デフォルトで分離された異なる ABAP 言語バージョン (クラウド開発向け ABAP とキーユーザ向け ABAP) で開発されます。つまり、開発者拡張性では、拡張性オブジェクトを使用できず、その逆も同様です。ただし、いくつかの例外があります。
- キーユーザアプリで使用する開発者拡張性オブジェクトをリリースすることができます。キーユーザアプリでは、これらのオブジェクトを使用できます。
- キーユーザが SAP 構造および CDS ビューに追加したユーザ定義項目は、開発者拡張性で使用することができます。
エクスポート時に、キーユーザオブジェクトと開発者拡張性オブジェクト間の依存関係が分析されます。インポート時に、依存移送をまとめてインポートするか、正しい順序でインポートする必要があります。
ローカル開発オブジェクトへの依存関係があるエクスポートは、エクスポート時にブロックされます。
ビジネスコンフィグレーションとキーユーザ拡張性の間のオブジェクト依存関係: ビジネスコンフィグレーションが拡張性を参照している場合があります。拡張性がビジネスコンフィグレーションと等しくない場合があります。たとえば、フォームテンプレートは、Adobe Forms Designer で登録された拡張性オブジェクトです。これらは、国、サイト、顧客グループなどに適したフォームテンプレートを検索するためのルールなど、ビジネスコンフィグレーションとして参照することができます。ビジネスコンフィグレーションから拡張性への参照のもう 1 つの例として、ビジネスコンフィグレーションルールで使用できるユーザ定義項目があります。各拡張性およびビジネスコンフィグレーション移送を一緒にインポートして、ビジネスプロセスのエラーを回避する必要があります。
インポート時に、コレクションインポートアプリでは、依存移送をまとめてインポートするか、正しい順序でインポートすることができます。
ビジネスコンフィグレーションと開発者拡張性の間のオブジェクト依存関係: ビジネスコンフィグレーションアプリ (C テーブル) を作成し、コンテンツを作成および移送する場合は、ビジネスコンフィグレーションコンテンツの前にテーブル (またはその最新の変更) を含む移送を移送する必要があります。
ビジネスコンフィグレーション内のオブジェクト依存関係: 移送依頼のリリース時に、リリースプロセスによって設定テーブル間の外部キー関係が以下のようにチェックされます。
- 移送依頼がフェッチされ、移送依頼内のすべてのテーブル内容に対する外部キー接続がデータディクショナリから受信されます。つまり、これらのテーブルの外部キー関連データおよび項目が読み込まれ、外部キー接続からテーブルが選択されます。
- 外部キー接続の整合性は、テストシステムおよび本稼動システムでリモートでチェックされます (これらのシステムがすでに設定されている場合)。
- 外部キー接続の整合性から、移送依頼の不完全性を導出し、移送依頼の完全なセットを取得するために必要な情報を受け取ることができます。
