Forguncy 8 オンラインヘルプ
Forguncyの使い方 / コマンド / 再利用コマンド
このトピックで
    再利用コマンド
    このトピックで

    作成するアプリケーションの規模が大きくなってくると、ほぼ同じ内容のコマンドセットを複数箇所で設定しなければならないことがあります。このような場合、作成に時間がかかるだけでなく、後からそのコマンドを変更する場合に作成したすべてのコマンドセットを修正しなければならないため、開発生産性と保守性の両方が低くなってしまいます。そのような場合には、再利用コマンドを使用して、ほぼ同様のコマンドセットを集約できないかどうかを検討してください。

    再利用コマンドの作成方法は、新規に作成する方法と既存のコマンドを再利用コマンドへと変換する方法があります。

    再利用コマンドの作成

    チェックボックス型セルの値がTrueであればFalseに、FalseであればTrueに変更する再利用コマンドを作成します。

    1. 次のようなページを作成します。

      B2セルのチェックボックス型セルには「Checkbox1」というセル名を、B6セルのチェックボックス型セルには「Checkbox2」というセル名を設定します。

    2. [高度な機能]リボンタブから[再利用コマンド]ボタンをクリックして、[再利用コマンド]ダイアログを開きます。

    3. [新しい再利用コマンド]ボタンをクリックして再利用コマンドを1つ追加します。

      ここでは[名前]を「チェックボックス値の反転処理」と設定します。

    4. パラメーター編集のアイコン[]をクリックして[パラメーター]ダイアログを開きます。

      [新しいパラメーター]ボタンをクリックしてパラメーターを1つ追加し、[名前]を「対象チェックボックス」に設定したら[OK]ボタンをクリックします。

      注意:ここで定義したパラメーター名を再利用コマンド内で使用し、パラメーターの値を参照できます。この際、この再利用コマンドの呼び出し元のページに存在するセル名と名前が重複している場合、セル名が優先されて参照されます。Forguncy Builderはこの名前の重複を検知できません。そのため、名前の重複が起こらないように、パラメーター名には「p対象チェックボックス」のように接頭辞を付けるなどのルールを適用することをおすすめします。

      ヒント:再利用コマンドの呼び出し元から値が引き渡されてくるのがパラメーターとなりますが、ここで定義したパラメーターはコマンド内では変数と同じ扱いとなります。たとえば、「p商品名」というパラメーターを定義し、コマンド内で[変数の設定]コマンドで「p商品名」という変数を作成した場合、「p商品名」という変数が再定義されることになるため、「p商品名」で参照される値は[変数の設定]コマンドで設定した値です。

    5. コマンドの編集アイコン[]をクリックして[コマンドの編集]ダイアログを開きます。

      [コマンドの選択]ドロップダウンリストから「条件分岐」を選択します。

    6. 「If [ 条件式 ]」を選択し、条件式を設定するタブを表示します。

      [新しい条件]ボタンをクリックして条件を1つ追加します。

    7. [フィールド]列にある[]ボタンをクリックしてダイアログを開きます。

      変数一覧から「対象チェックボックス」ダブルクリックして数式へと追加し、[OK]ボタンをクリックします。

      注意:

      変数が数式やセル参照だった場合、処理するタイミングは変数を利用するコマンド実行時となります。
      この時、変数を利用するコマンドが数式やセル参照に対応していなかった場合、値はnullとなりますのでご注意ください。
      (例:条件分岐コマンドのフィールド列の値には「=A1+B1」といった数式を設定することはできません。もし変数「=A1+B1」を参照するように設定した場合、結果はnullとなります)

    8. [値]列の値を「True」に設定します。

    9. 「[コマンド未設定]」を選択し、[コマンドの選択]ドロップダウンリストで「セルプロパティの設定」コマンドを選択します。

    10. [対象セル]列の右側にある[]ボタンをクリックして[パラメーターの選択]ダイアログを開きます。

      [変数一覧]で「対象チェックボックス」をダブルクリックして数式に追加し、[OK]ボタンをクリックしてダイアログを閉じます。

    11. [設定値]列の値に「False」と入力します。

    12. [Elseの追加]ボタンをクリックしてElseを追加します。

    13. 「Else」部分の下側にある「[コマンド未設定]」を選択し、[コマンドの選択]ドロップダウンリストで「セルプロパティの設定」コマンドを選択します

      先ほど同様の手順で、[対象セル]は「対象チェックボックス」ダブルクリックして数式に追加し、[設定値]は「True」を設定します。[OK]ボタンをクリックしてすべてのダイアログを閉じます。

    14. 「チェックの反転」ボタンを選択し、右ペインから[コマンド...]をクリックして[コマンド]ダイアログを開きます。

    15. コマンドウィンドウで、[再利用コマンドの呼び出しを選択します。

    16. [使用する再利用コマンド]ドロップダウンリストで先ほど作成した「チェックボックス値の反転」再利用コマンドを選択します。

      入力パラメーターである[対象チェックボックス]は、B2セルを選択して「=Checkbox1」と入力します。

    17. 手順15から17の操作と同様に、2つ目の「チェックの反転」ボタンに対しても「チェックボックス値の反転」再利用コマンド設定します

      入力パラメーターである[対象チェックボックス]は、B6セルを選択して「=Checkbox2」と入力します。[OK]ボタンをクリックしてダイアログを閉じます。

    18. [ホーム]リボンタブにあるデバッグの[開始]ボタンをクリックし、アプリケーションの動作を確認します。

      1つ目の「チェックの反転」ボタンをクリックすると、1つ目のチェックボックスの値が、2つ目の「チェックの反転」ボタンをクリックすると2つ目のチェックボックスの値が反転することを確認できます。

    既存コマンドの再利用コマンドへの変換

    複数のデータ登録ページが存在するが、登録するデータは1つのフィールドのみが各ページで異なり、それ以外は共通であるような場合に使用できる再利用コマンドを既存コマンドを変換する方法で作成します。

    1. 次のようなフィールドを持つテーブルを作成します。

      ここではテーブルの名前は「テーブル1」とします。

    2. [作成]リボンタブから[テーブルからページを生成]ボタンをクリックし、「テーブル1」からページを作成します。

      設定はすべて既定のままとします。

    3. 作成されたページ「テーブル1_登録・更新の共通ページ」を「登録ページA」に変更します。

      ページ名の変更は右クリックのコンテキスメニューにある[名前の変更]か、F2キーで行えます。

    4. 「登録ページA」の上部に適当に結合したセルの領域を作成し、そのセルに対して[挿入]リボンタブから[キーワード]-[ページ名]を挿入します。

      フォントの大きさやレイアウトは適宜調整してください。

    5. 「登録」、および「更新」となるボタン型セルを選択し、右ペインから[コマンド...]ハイパーリンクをクリックします。

      ここではK12セルに配置されているボタンが対象となります。

    6. [条件分岐]コマンドの最初の条件で実行される[テーブルデータの更新]コマンドを選択し、[詳細設定...]のハイパーリンクをクリック、[非データ連結フィールド]を1つ追加し、[フィールド]を「種類」、[値]を「=A1」とします。

      このようにすることで、「%PageName%」キーワードにより取得されるページ名が、「種類」フィールドの値として登録されます。

    7. コマンドの一覧が表示される左側の領域を右クリックし、コンテキストメニューから[再利用コマンドへ変換]を選択し、本コマンドセットを再利用コマンドへと変換します。

      ここでは通常のコマンドセットを再利用コマンドに変換する方法を使用しますが、[高度な機能]リボンタブから再利用コマンドを新規作成することもできます。

    8. 再利用コマンドの名前を入力して[OK]ボタンをクリックします。

      ここでは既定で表示される「再利用コマンド1」とします。

    9. 再利用コマンドに変換されるので、[OK]ボタンをクリックして[コマンド]ダイアログを閉じます。

      「パラメーター1」の値に設定されているセル参照がページ名を表示するセル、「パラメーター2」の値に設定されているセル参照が「登録」、および「更新」となるボタン型セルであることを確認します。

    10. [ナビゲーション ウィンドウ]上の「登録ページA」を右クリックし、コンテキストメニューから[複製]を選択します。

    11. 複製されたページの名前を「登録ページB」に変更します。

      ページ名の変更は右クリックのコンテキスメニューにある[名前の変更]か、F2キーで行えます。

    12. 「登録ページB」が「登録ページA」と区別がつきやすいよう、適宜セルの塗りつぶしの色などを変更します。

    13. 「テーブル1_一覧ページ」ページの「登録ページ」ハイパーリンク型セルをコピーして、適当な位置に貼り付けます。

      ここではG8セルをコピーし、L8セルの位置に貼り付けます。その後、分かりやすいようにそれぞれ「登録ページA」、「登録ページB」にセルの値を変更します。

    14. コピーした「登録ページB」ハイパーリンク型セルを選択し、右ペインの[コマンド...]ハイパーリンクをクリックしてコマンドの内容を次の図のように変更します。

      遷移先ページを「登録ページB」へと変更し、[遷移先ページの値の受け渡し]を設定します。

    15. リストビュー内の「更新」ハイパーリンク型セルを選択し、右ペインから[コマンド...]ハイパーリンクをクリックして[コマンド]ダイアログを開きます。

      ここではT10セルが対象セルとなります。

    16. [条件分岐]コマンドを追加し、「テーブル1」テーブルの「種類」フィールドの値が「登録ページA」だった場合には「登録ページA」へと、そうでない場合には「登録ページB」へ遷移するようにコマンドを修正します。

      [遷移先ページの値の受け渡し]では、「登録」、および「更新」となるボタン型セルに「更新」という値(文字列)を渡すようにそれぞれ設定します。

    17. 「テーブル1_一覧ページ」ページをスタートページに設定し、デバッグの開始を行います。

      スタートページの設定方法はページの操作(ナビゲーションウィンドウ)を参照してください。1つの再利用コマンドを2つのページ上で再利用し、それぞれのページ名が「種類」フィールドに登録されることを確認できます。

    再利用コマンドの修正

    作成した際利用コマンドに修正を加えた際に、一度の修正でその再利用コマンドを利用しているすべての箇所が変更される例を示します。

    1. [高度な機能]リボンタブから[再利用コマンド]ボタンをクリックして、[再利用コマンド]ダイアログを開きます。

    2. コマンドの編集アイコン[]をクリックして、[コマンドの編集]ダイアログを開きます。

    3. データの登録を行う[テーブルデータの更新]コマンドの[確認ダイアログを表示する]チェックボックスをチェックし、[OK]ボタンをクリックしてダイアログを閉じます。

      本変更により、登録ボタンを押した際に確認ダイアログが表示されるようになります。

    4. デバッグの開始を行い、動作を確認します。

      1つの再利用コマンドの修正により、「登録ページA」と「登録ページB」の両方において、その修正が反映されていることを確認できます。

    再利用コマンドの使用箇所の検索

    1. [高度な機能]リボンタブから[再利用コマンド]ボタンをクリックして、[再利用コマンド]ダイアログを開きます。

    2. 使用箇所の検索アイコン[]をクリックすると、その再利用コマンドを使用している個所が一覧で表示されます。

      一覧からどれか1つをダブルクリックすることで、その使用箇所へとジャンプします。

    パラメーターの管理

    1. [高度な機能]リボンタブから[再利用コマンド]ボタンをクリックして、[再利用コマンド]ダイアログを開きます。

      [新しい再利用コマンドの追加]ボタンをクリックして再利用コマンドを1つ追加します。

    2. パラメーターアイコン[]をクリックすると[パラメーター]ダイアログが表示され、その再利用コマンドで使用するパラメーターを追加したり、名前を変更したりできます。

      注意:ここで定義したパラメーター名を再利用コマンド内使用して、パラメーターの値を参照できます。この際、この再利用コマンドの呼び出し元のページに存在するセル名と名前が重複している場合、セル名が優先されて参照されます。Forguncy Builderはこの名前の重複を検知できません。そのため、名前の重複が起こらないように、パラメーター名には「p対象チェックボックス」のように接頭辞を付けるなどのルールを適用することをおすすめします。

    3. 使用箇所の検索アイコン[]をクリックすると[パラメーター使用箇所の検索]ダイアログが表示され、そのパラメーターを使用している個所が一覧で表示されます。

    戻り値の管理

    1. [高度な機能]リボンタブから[再利用コマンド]ボタンをクリックして、[再利用コマンド]ダイアログを開きます。

      [新しい再利用コマンドの追加]ボタンをクリックして再利用コマンドを1つ追加します。

    2. 戻り値アイコン[]をクリックすると[戻り値]ダイアログが表示され、その再利用コマンドで使用する戻り値を追加したり、名前を変更したりできます。

      作成した戻り値は[リターン(コマンドの終了)]コマンドを使用して返します。

      返した戻り値は[再利用コマンドの呼び出し]コマンドで受け取ることができます。

    作成した再利用コマンドの追加方法

    1. [コマンド]ダイアログで、[コマンドの選択]ドロップダウンリストから[再利用コマンドの呼び出し]コマンドを選択します。

    2. [使用する再利用コマンド]を選択し、適宜[入力パラメータ-]を設定します。