レガシー・プラットフォーム

ウィザードの作成

ウィザードを作成するには、 additionalwizards.xml ファイルでウィザード定義を指定し、ウィザード UI ウィジェットを作成します。

始める前に

カスタム画面の作成方法を知っていることを前提としています。

手順

  1. additionalwizards.xml ファイルにウィザード定義を作成します。 ウィザード ID に接頭部 extnが付いていることを確認します。
    例えば、 <wizard id=extn.wizards.CustomWizard>のようになります。
  2. コピー additionalwizards.xml ファイルに <INSTALL_DIR>/extensions/wsc isccs/webpages/wizardxmls/ フォルダ。
  3. 対応するウィザード ID のウィザード・ウィジェットを作成します。
    例えば、ウィザード ID が extn.wizards.CustomWizardの場合、 extn.wizards.CustomWizardとして宣言されたクラスを使用して CustomWizard.js ウィジェットを作成します。 コピー CustomWizard.js ファイルに <INSTALL_DIR>/extensions/wsc isccs/webpages/wizards/ フォルダと対応するウィザードウィジェットテンプレートを <INSTALL_DIR>/extensions/wsc isccs/wizards/templates/ フォルダ。
  4. WizardUtils.openWizardInEditor ユーティリティーを呼び出してウィザードを開きます。 ウィザードを開くには、 WizardUtils.openWizardInEditor ユーティリティーで以下のパラメーターを渡します。
    • wizardId -ウィザードの ID。
    • wizardInput -ウィザードの初期入力。
    • editorId -エディターの ID。
    • editorConfig -エディターの構成。 このパラメーターに指定された属性がエディターに追加されます。
    ウィザード・ユーティリティー・メソッドを使用すると、ユーザーはウィザード内をナビゲートすることができます。 以下の表では、 WizardUtils.js (sc.plat.dojo.utils.WizardUtils) ファイルのいくつかのウィザード・ユーティリティー・メソッドについて説明します。 ウィザード・ユーティリティー・メソッドについて詳しくは、 JavaScript の資料を参照してください。
    表 1. ウィザード・ユーティリティ・メソッド

    以下の表に、ウィザード・ユーティリティー・メソッドのリストを示します。

    ウィザード・ユーティリティー・メソッド 説明
    getCurrentPage ウィザード・インスタンスを考慮し、ウィザードのスタック・コンテナーに表示されるページを返します。
    isCurrentPageFirstEntity 表示または表示されるページがウィザードのスタック・コンテナー内の最初のエンティティーである場合、このメソッドは値 trueを返します。
    isCurrentPageLastEntity 表示または表示されるページがウィザードのスタック・コンテナー内の最後のエンティティーである場合、このメソッドは値 trueを返します。
    nextScreen 表示するウィザードの次の画面を取得します。
    previousScreen ウィザード・フローの前の画面を表示します。
    confirmWizard ウィザード・インスタンスを確認します。
    openWizardInEditor wizardInputを使用して wizardId のウィザード・インスタンスを開きます。
    closeWizard beforeClose イベントを発生させ、ウィザードを閉じます。
    getCurrentPageByUId 現行ページ UID を取得します。
    isCurrentPageLeaf ウィザードで開いたページがリーフ・ノードの場合、このメソッドは値 trueを返します。

    ウィザード定義 XML ファイルは <INSTALL_DIR>/repository/eardata/isccs/war/wizardxmls ディレクトリにあります。 UIファイルは <INSTALL_DIR>/repository/eardata/isccs/war/isccs/<module>/wizards ディレクトリにある。 ここで、 <module> は、注文、顧客、品目、その他を指す。 例えば、ウィザード定義 CreateOrderWizardFlow.xml ファイルは <INSTALL_DIR>/repository/eardata/isccs/war/wizardxmls ディレクトリにある。 一方、 CreateOrderWizard XML UIファイルは <INSTALL_DIR>/repository/eardata/isccs/war/isccs/order/wizards ディレクトリにある。

    ウィザード定義 XML ファイルは <INSTALL_DIR>/repository/eardata/wsc/war/wizardxmls ディレクトリにあります。 UIファイルは <INSTALL_DIR>/repository/eardata/wsc/war/wsc/<module>/wizards ディレクトリにある。 <module> 。 例えば、ウィザード定義 CustomerPickWizardFlow.xml ファイルは <INSTALL_DIR>/repository/eardata/wsc/war/wizardxmls ディレクトリにある。 一方、 CustomerPickWizard XML UIファイルは <INSTALL_DIR>/repository/eardata/wsc/war/wsc/shipment/wizards ディレクトリにある。

    「次へ」、「前へ」、「確認」、「キャンセル」などのナビゲーション・ボタンを持つウィザードを必ず作成してください。 「次へ」をクリックすると、現在のウィザード・ページでデータを保存するための saveCurrentPage イベントが生成されます。 データが保存されると、 onSaveSuccess イベントが生成され、ウィザードに次のページが表示されます。 同様に、「前へ」をクリックすると、前のページに進む前に現在のウィザード・ページにデータを保存するように求める警告メッセージが表示されます。 「はい」をクリックすると、 saveCurrentPage イベントが発生します。 データが保存されると、ページによってウィザードに対して onSaveSuccess イベントが生成され、前のウィザード・ページが表示されます。 ウィザードと、「確認」および「キャンセル」のページとの間のイベント対話は、「次へ」および「前へ」に似ています。

    カスタム・ウィザードでは、以下のイベントが発生します。
    • setScreenTitle -このイベントは、エディターでサブタイトルを設定するために発生します。 例えば、「オーダーの作成」ウィザードでは、タイトルは「オーダーの作成」で、サブタイトルは「顧客検索」です。これは、ウィザード・ページの最初の画面です。
    • handleTabClose -このイベントは、エディターが閉じられると発生します。 ウィザードを閉じる前に、保存されていないデータをページに保存するようユーザーに求める警告メッセージが表示されます。 エディターを閉じるときにデータを保存するように求めるプロンプトがユーザーに出されるように、新規ウィザードの handleTabClose イベント・サブスクライバーを必ず定義してください。
    • setWizardInput -このイベントは、一部の UI アクションでエディター入力が変更されるたびに、エディターによって生成されます。 例えば、オーダーの顧客を識別する際にエディター入力が変更されると、エディター入力が更新され、ウィザード入力を更新するために setWizardInput イベントが生成されます。