"Show"処理について
サブビューを追加すると、その都度Show処理が自動的に作成されます。Show処理は処理バーに表示され、ユーザーが関連サブビューを表示できるようになります。Show処理はスマート処理ではなく、手動で作成する必要はありません。Show処理について変更が必要になる可能性があるのは、ラベルのみです。Show処理の各文字列はハードコードされていますが、翻訳可能な文字列に変更できます。
Show処理とは
Show処理は、処理バーから使用できるという点で、スマート処理と似ています。しかし、Show処理はスマート処理ではありません。Show処理は、ユーザーが様々なオブジェクトのサブビューにナビゲートできるようにすることを目的として、自動的に表示される処理です。
たとえば、次のShow処理は、次のオブジェクトのサブビューを追加したときに自動的に作成されます:
Show処理のラベル
Show処理のラベルは、各サブビューの表示プロパティから取得されます。表示プロパティは、セクションがサブビューに初めて追加されたときに指定されています。サブビューの表示プロパティは、詳細ページのJSONで確認できます。
Show処理のラベルは表示プロパティの文字列から自動的に取得されるため、ラベルはハードコードされ、翻訳できません。必要に応じて、これを翻訳可能にすることができます。
翻訳可能文字列の作成
次に例を示します。Wikipediaを表示するマッシュアップのサブビューを追加すると、ユーザー側の処理は必要なく、Wikipediaの表示処理が自動的に作成されます。
しかし、「Wikipediaの表示」という文字列を韓国語で表示する必要があるユーザーがいるなどの場合があります。その場合は、ハードコードされている文字列を翻訳可能な文字列に変更できます。
翻訳可能なShow処理を作成するには:
-
翻訳可能な文字列をカスタム翻訳バンドルに追加します。
「翻訳バンドルの作成(まだない場合)」を参照してください。
-
翻訳バンドルの文字列を参照する定数を作成します。
-
「payment_c-detail」タブで、「変数」サブタブをクリックします。
-
「+ 変数」をクリックします。
-
変数の作成ダイアログで、「定数」オプションが選択されていることを確認し、「ID」フィールドに
subviewLabel
と入力します。 -
「タイプ」フィールドで、「オブジェクト」を選択します。
-
「作成」をクリックします。
-
新しいsubviewLabel定数の「プロパティ」ペインで、「デフォルト値」フィールドに翻訳バンドルに追加した文字列への参照を入力します。
次の形式を使用します。ここで、最初の
Wikipedia
インスタンスはサブビューの表示プロパティとなり、2番目のwikipedia
インスタンスは翻訳バンドルに追加した文字列キーです:{"Wikipedia":"[[ $translations.CustomBundle.wikipedia() ]]"}
必要に応じて、翻訳バンドル名と文字列を独自の情報に置き換えてください。
複数のサブビューがあり、各サブビューで翻訳可能なShow処理が必要である場合は、それをsubviewLabel定数のデフォルト値に追加できます。次に例を示します:
{ "PaymentContactMMInter_Src_Payment_cToPaymentContactMMInter_c_Tgt":"[[ $translations.CustomBundle.Contacts() ]]", "Wikipedia":"[[ $translations.CustomBundle.wikipedia() ]]" }
-
-
新しいsubviewLabel定数を「payment_c-detail」ページのcx-detailフラグメント・コードに追加します。
-
「payment_c-detail」タブで、ページ・デザイナ・サブタブをクリックします。
「コード」ボタンをクリックします。
-
次のようにして、subviewLabel定数をフラグメント・コードの"actionBar"パラメータに追加します:
"subviewLabelExtension": $page.constants.subviewLabel
フラグメント・コードは、次のサンプルのようになります。必ず、
Payment_c
をカスタム・オブジェクトのREST API名に置き換えてください。<oj-vb-fragment bridge="[[vbBridge]]" name="oracle_cx_fragmentsUI:cx-detail" class="oj-flex-item oj-sm-12 oj-md-12"> <oj-vb-fragment-param name="resources" value="[[ {'Payment_c' : {'puid': $variables.id, 'id': $variables.id, 'endpoint': $application.constants.serviceConnection }} ]]"></oj-vb-fragment-param> <oj-vb-fragment-param name="header" value="[[ {'resource': $flow.constants.objectName, 'extensionId': $application.constants.extensionId } ]]"></oj-vb-fragment-param> <oj-vb-fragment-param name="actionBar" value='[[ { "applicationId": "ORACLE-ISS-APP", "resource": {"name": $flow.constants.objectName, "primaryKey": "Id", "puid": "Id", "value": $variables.puid }, "subviewLabelExtension": $page.constants.subviewLabel } ]]'> </oj-vb-fragment-param> <oj-vb-fragment-param name="panels" value='[[ { "panelsMetadata": $metadata.dynamicContainerMetadata, "view": $page.variables.view } ]]'></oj-vb-fragment-param> <oj-vb-fragment-param name="context" value="[[ {'flowContext': $flow.variables.context} ]]"></oj-vb-fragment-param> <oj-vb-fragment-param name="row" value="{{ $page.variables.row }}"></oj-vb-fragment-param> </oj-vb-fragment>
-