ウィザードの作成
ウィザードを作成するには、 additionalwizards.xml ファイルでウィザード定義を指定し、ウィザード UI ウィジェットを作成します。
始める前に
手順
-
additionalwizards.xmlファイルにウィザード定義を作成します。 ウィザード ID に接頭部extnが付いていることを確認します。例えば、<wizard id=extn.wizards.CustomWizard>のようになります。 - コピー
additionalwizards.xmlファイルに <INSTALL_DIR>/extensions/wsc isccs/webpages/wizardxmls/ フォルダ。 - 対応するウィザード 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/ フォルダ。 -
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 XMLUIファイルは <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 XMLUIファイルは <INSTALL_DIR>/repository/eardata/wsc/war/wsc/shipment/wizards ディレクトリにある。「次へ」、「前へ」、「確認」、「キャンセル」などのナビゲーション・ボタンを持つウィザードを必ず作成してください。 「次へ」をクリックすると、現在のウィザード・ページでデータを保存するための
saveCurrentPageイベントが生成されます。 データが保存されると、onSaveSuccessイベントが生成され、ウィザードに次のページが表示されます。 同様に、「前へ」をクリックすると、前のページに進む前に現在のウィザード・ページにデータを保存するように求める警告メッセージが表示されます。 「はい」をクリックすると、saveCurrentPageイベントが発生します。 データが保存されると、ページによってウィザードに対してonSaveSuccessイベントが生成され、前のウィザード・ページが表示されます。 ウィザードと、「確認」および「キャンセル」のページとの間のイベント対話は、「次へ」および「前へ」に似ています。カスタム・ウィザードでは、以下のイベントが発生します。setScreenTitle-このイベントは、エディターでサブタイトルを設定するために発生します。 例えば、「オーダーの作成」ウィザードでは、タイトルは「オーダーの作成」で、サブタイトルは「顧客検索」です。これは、ウィザード・ページの最初の画面です。handleTabClose-このイベントは、エディターが閉じられると発生します。 ウィザードを閉じる前に、保存されていないデータをページに保存するようユーザーに求める警告メッセージが表示されます。 エディターを閉じるときにデータを保存するように求めるプロンプトがユーザーに出されるように、新規ウィザードのhandleTabCloseイベント・サブスクライバーを必ず定義してください。setWizardInput-このイベントは、一部の UI アクションでエディター入力が変更されるたびに、エディターによって生成されます。 例えば、オーダーの顧客を識別する際にエディター入力が変更されると、エディター入力が更新され、ウィザード入力を更新するためにsetWizardInputイベントが生成されます。