7.109.6 SELECT_SQL ステートメント ウィザード

この機能は EPC 150010 以降で利用可能です。
SELECT_SQL ステートメント・ウィザードを利用することで、REMLX 対応コンポーネントの SELECT_SQL ステートメントを簡単に作成することができます。SELECT_SQL の using ステートメントを使う場所であればどこでも利用可能です。
このステートメントを使って、テーブルの検索や複数列 (フィールド) の値の検索ができます。
このウィーザードでは、LANSA がサポートするあらゆるデータベース・タイプを選択できます。 
IBM i に接続された Visual LANSA のスレーブ・システムのほか、Visual LANSA のスタンドアロン・システムでも使用可能です。
関連ファイルを含むこともできます。これらは自動的に含まれる訳ではありません。
選択ファイルと関連しているとLANSA が認識しているファイルの選択ができます。さらに、手動でファイルを指定したり、関係性を指定することも可能です。
注: 画像を拡大したい場合は、ドキュメントのヒント「&<a href="../../../tips/Content/lansa/tips_0015.htm"&>グラフィックスの拡大&</a&>」を参照してください。
ウィザードの利用
このウィザードを開始するには、コンポーネントを開いて \[ソース\] タブを表示した状態で、ブランク行に SQL と入力し、Enter キーを押します。 
ウィザードマップの \[開始\] タブが以下のように表示されます。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
このウィンドウを使って、要件を定義していきます。このダイアログの下部に表示されるのは、上部で選択した内容に従って作成された RDMLX コードです。 
この画像を拡大したい時は、「&<a href="../../../tips/Content/lansa/tips_0015.htm"&>グラフィックスの拡大&</a&>」を参照してください。
この時点で利用可能なのは \[ターゲット データベース\] と \[キャンセル\] のみです。
\[ターゲット データベース\] のドロップダウンをクリックします。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
区画に対して有効なターゲット・データベース製品がリストされています。 
例えば、使用するテーゲット・データベースとして DB2ISERIES を選択すると、
\[ビュー/テーブル名\] と \[Distinct\] が使用できるようになります。
\[ビュー/テーブル名\] の横の省略記号をクリックして、テーブルを選択します。場合によっては、LANSA 内で他のテーブルと関連付けられていない場合もあります。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
\[ビュー/テーブル名\] を選択すると、\[テーブル名\] と \[テーブル データベース名\] に値が表示されます。 
テーブル名は LANSA で認識されているテーブルの名前です。テーブル・データベース名は、ターゲットのデータベースとして認識されているテーブル名です。
内容が正しければ、\[OK\] ボタンをクリックします。
以下のように、\[テーブル\]、\[結合\]、\[列選択\]、\[Where\]、\[並び替え順\]、\[出力\] タブが表示されます。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
ダイアログ・ボックスの下部には以下のように表示されます。
\[フィールド パラメータ\] には、このファイルの LOB フィールドのリストが LANSA に認識されている名前で表示され、各フィールドの接頭辞としてハッシュ記号が付けられています。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
\[利用するパラメータ\] には、ファイル内のすべての非 LOB フィールドに対する SELECT ステートメントが表示されています。
この SELECT ステートメント内で、FROM 句にはテーブルのデータベース名が表示されていますが、WHERE や ORDER BY はまだありません。
\[From_File パラメータ\] には、LANSA が認識する、このファイルの名前が表示されます。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
\[テーブル\] タブ 
\[テーブル\] タブをクリックします。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
ツリーが表示され、選択されたファイルにチェックマークが入っています。また、このファイルの妥当性ルールやアクセス経路など、直接関係のあるファイルも表示されています。
関連ファイルのうち、1 つのファイルを選択します。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
この選択したファイルにもチェックマークが入れられ、このファイルと直接関係のあるファイルがその下にリストされます。
すると \[フィールド パラメータ\] が更新され、LANSA で認識されている名前のこれらのファイルの非 LOB フィールドがリスト表示されます。
\[利用するパラメータ\] も更新され、このファイルの非 LOB ファイルすべてに対する SELECT ステートメントが表示されます。この SELECT の FROM 句には、データベース名、LANSA フィールドに対する DB 列名とともにON が追加されて関係性が示されますが、WHERE 句や ORDER BY 句は存在しません。
これで、\[From_File パラメータ\] には、LANSA が認識する、このファイルの名前も含まれています。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
\[結合\] タブ 
\[結合\] タブをクリックします。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
選択されたテーブルが左側の列に表示されています。各テーブルの後には (最初のテーブルは除く)、LANSA により認識されている場合は、このファイルに対する結合関係の詳細が示されます。それ以外は、ここで結合キーを定義する必要があります。
\[列選択\] タブ 
\[列選択\] タブをクリックします。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
選択されたすべてのテーブルのすべての列が表示されています。
最初は、すべて選択された状態になっています。
不要な列があれば、チェックマークを外してください。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
The Fields and Using parameters will have the relevant fields removed:
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
\[Where\] タブ 
\[Where\] タブをクリックします。
選択されたテーブルのすべての列が表示され、WHERE 句で利用できることが示されています。
テーブル名を展開して、使用する行をクリックします。Œ
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
\[ビューテーブルから\]/\[列名\] が表示されます。\[オペレーション\] のドロップダウンŽからオペレーションを選択し、Tab キーで \[オペラント\] に進み、入力します。
\[Update\] ボタンを押します。
これで、ツリービューには、オペレーションとオペランドが表示されます。また、\[利用するパラメータ\] の Where 句に追加された内容が示されています。
\[並び替え順\] タブ 
\[並び替え順\] タブをクリックします。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
列を表示させるためには、テーブルを展開させてください。
選択されたテーブルのすべての列が表示され、すべてを OrderBy 句で利用できることが示されています。
デフォルトでは、テーブルのプライマリ・キーが選択されており、Order by 句に含まれています。
既存の選択を外し、希望の並び替えを選択することで Order by 句を作成できます。
\[利用するパラメータ\] は、\[並び替え順\] で選択した内容で更新されます。
\[出力\] タブ 
\[出力\] タブをクリックします。
このタブは常に表示されています。ここには、現時点の SELECT_SQL ステートメントが表示されます。
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
このタブには、選択した内容が  SELECT_SQL RDML にフォーマットされた形で表示されます。
下部にある \[OK\] ボタンをクリックし、コードを生成します。 
!worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32!
言語の制限があるため、生成される実際のコードでは、利用するパラメータが別に生成されたフィールドに含まれます。 
これで、ウィザードを使ったコーディングの完成です。