Sap-web-dynpro-list-viewer
提供:Dev Guides
SAP Web Dynpro-SAPリストビューアー(ALV)
SAPリストビューアーは、ALVコンポーネントを追加するために使用され、リストと表構造を表示するための柔軟な環境を提供します。 標準出力は、ヘッダー、ツールバー、および出力テーブルで構成されます。 ユーザーは、設定を調整して、追加のダイアログボックスを使用して列の表示、集計、および並べ替えオプションを追加できます。
ALVの主要な機能は次のとおりです-
- Web DynproテーブルUIエレメントに基づいているため、テーブルエレメントの多くのプロパティをサポートします。
- ALV出力は、フィルタリング、ソート、または計算を適用できます。
- ユーザーは、ツールバーのUI要素を使用して、アプリケーション固有の機能を実行できます。
- ユーザーが異なるビューで設定を保存できるようにします。
- ALV出力の上下に特別な領域を設定できます。
- ALV出力を編集できる範囲を定義できます。
ALVを作成する方法は?
ALVを作成する手順は次のとおりです。
- ステップ1-Tコードの使用:SE80。*リストからWeb Dynpro comp/intfを選択し、名前を入力します。 ディスプレイをクリックします。 コンポーネントを作成するように求められます。 はいをクリックします。
- ステップ2 *-Web Dynproコンポーネントとしてタイプを選択します。 ウィンドウ名とビュー名を入力します。
- ステップ3 *-目盛りをクリックします。
- ステップ4 *-変更ウィンドウで、コンポーネント使用をALV、コンポーネントをSALV_WD_TABLE、説明をALVコンポーネントとして入力します。
- ステップ5 *-コンポーネントコントローラーに移動し、コンテキストを右クリックします。 次に、ディクショナリ構造MAKTを使用してノードMAKTを作成を選択します。
- ステップ6 *-構造から属性を追加を使用して、MAKTから必要な属性を選択します。
- ステップ7 *-辞書構造MAKTをノードMAKTから削除し、プロパティを次のように設定します(基数、リード選択など)。
- ステップ8 *-オブジェクトツリーの[コンポーネントの使用状況]→[コントローラーの使用状況の作成]を右クリックします。
- ステップ9 *-[ビュー]→[コンテキスト]タブに移動し、MAKTノードをビューにドラッグします。
マッピング後、次のスクリーンショットに示すように表示されます。
- ステップ10 *-レイアウトに移動し、[要素の挿入]を右クリックします。
次のスクリーンショットに示すようにレイアウトが表示されます-
- ステップ11 *-[プロパティ]タブに移動し、[コントローラー使用の作成]をクリックして、次をビューに追加します。
- ステップ12 *-メソッドに移動し、WDDOINITを使用してコードを記述します。
- ステップ13 *-メソッドをダブルクリックしてコードを入力します。 以下のコードを入力して、使用されているコンポーネントALVを開始します。
コントローラーでGET_MODELメソッドを使用します。
- ステップ14 *-次のようにBIND_TABLEメソッドを使用して、コンテキストノードにテーブルをバインドします-
- ステップ15 *-オブジェクトツリーのウィンドウに移動し、C1を右クリックして、ビューにALVテーブルを埋め込みます。
ALVテーブルを埋め込むと、次のように表示されます-
- ステップ16 *-最後のステップは、オブジェクトツリーの下にWeb Dynproアプリケーションを作成することです。 アプリケーションの名前を入力します。
- ステップ17 *-アプリケーションを実行するには、ダブルクリックすると出力が表示されます。
ALV出力でのフィルターの使用
フィルターを使用して、ALV出力のデータを制限できます。 各フィールドに複数のフィルター条件を作成できます。 フィルタ条件を作成または削除するには、インターフェイスクラスIF_SALV_WD_FILTERのメソッドを使用できます。
フィルタ条件を作成、取得、削除するには、次の方法を使用できます-
Function | Method |
---|---|
Get a specific filter condition | GET_FILTER_RULE |
Get all filter Conditions of a field | GET_FILTER_RULES |
Create filter condition | CREATE_FILTER_RULE |
Delete a specific filter condition | DELETE_FILTER_RULE |