SkyVisualEditorのよくある質問集(FAQ)

  • Posted on
  • by

弊社ではSkyVisualEditorの有償/無償サポートを行っています。

 <<SkyVisualEditorへのお問い合わせ>>
 因みに無償ってどこらへんまで?
  -> SkyVisualEditor標準機能に関する内容です

標準機能といってもたくさんあります。膨大過ぎて中の人でも戸惑ってしまいます。

そんなSkyVisualEditor、沢山のご愛顧と共に日々沢山のお問い合わせをいただいております。
そこで、より多く寄せられたお問い合わせとその対策をご紹介したいと思います。




其之壱 ~「URLパラメータ設定」を便利に使う~
Salesforce標準のレコード詳細画面では、関連リストの新規ボタンから子オブジェクトレコードを作成出来るのはご存じの事と思います。

  

同じことをSkyVisualEditorで作成した画面でやろうとすると...

  

セットされていない...?!

「SkyVisualEditorで作った画面では標準みたいな動きはしないの?」
できます。

「何か設定が必要なの?」
仰る通りです。

設定が必要なのはSkyVisualEditorで作成した以下の画面。
  1.子オブジェクト登録ページ
  2.親オブジェクト詳細ページ

ますは1の子オブジェクト登録ページ
SkyVisualEditorで作った子オブジェクトページには、親レコードの情報を受け取る準備ができていません。
なので、子オブジェクトページで親レコードの情報を受け取れるようにする設定を行います。
この「URLパラメータ設定」で。
  

Salesforce標準で親取引先の情報としてあらかじめ設定されている項目「取引先名」にあたる「取引先ID」を選択します。

  

これで子オブジェクト登録ページでの設定は終わりです。
ダイアログ下部にある遷移URLの例を控えておいて、デプロイしてしまいましょう。

次に2の親オブジェクト詳細ページ
こちらでは子オブジェクトページに遷移するリンク or ボタンの「遷移先設定」に少し手を加えます。

まずカスタムリンク、またはカスタムボタンのプロパティ「画面遷移」の「遷移先設定」を開きVisualforceページを選択します。
ここで、先程「URLパラメータ設定」の"遷移URLの例"を元にパラメータを付与します。

  

設定は全て完了です、こちらのページもデプロイしてしまいます。
これで、親オブジェクト参照ページから遷移した子オブジェクト登録ページに親レコードの値をセットすることが出来ます。

「あれ...でもこれだと遷移元画面はSkyVisualEditorで作ったページじゃないといけない...?」
「SkyVisualEditorで作成した親オブジェクトページから開いた時しか使えないのか」
「取引先は標準の画面を使っているんだけど...」

そういう時はちょっと一工夫、、

Salesforce標準画面では以下の様に参照元の取引先レコードIDを取得しています。
  

"accid=001i000001IAWpn"
これによって、新規取引先責任者画面上の取引先項目にデフォルトで値が入力されて表示されるのです。

なので、「URLパラメータ指定」のキーにSalesforce標準が使用しているパラメータキーと同じ"accid"と設定すると、標準画面から遷移した場合でもデフォルト値をセットさせることが出来ます。

  
 (注)"accid"にあたる部分はオブジェクト毎に異なりますのでご注意ください。




其之弐 ~"SkyEditorDummy"と"SearchCondition"~
SkyVisualEditorパッケージをインストールすると、組織にカスタムオブジェクトが追加されます。
  

「ヘルプに権限設定が必要って書いてあるけど何このオブジェクト」
「これって一体何してるの?」
このようなお問い合わせを多数いただきました。

簡単に言うと、これがないと以下のテンプレート画面で支障をきたします。
  [テンプレート]検索画面
  [テンプレート]カスタムルックアップ

1)まずは"SkyEditorDummy"
カスタムオブジェクトなのでオブジェクト権限が以下のようなことになっていると使えません。
  

使えないとどうなるかというと...

  [テンプレート]検索画面
  

  [テンプレート]カスタムルックアップ
  

項目がない??!
SkyVisualEditorで作成される検索画面,カスタムルックアップ画面では
検索条件項目に"SkyEditorDummy"オブジェクトのカスタム項目を使用しているものがあります。
各データ型の項目を表示するために、どのような権限が必要かをまとめた表は次の通りです。

  
『SkyVisualEditorユーザマニュアル』より抜粋

"SkyEditorDummy"オブジェクト項目を使用している検索条件項目は、Visualforceで以下の様に出力されます。

<apex:inputText value="{!Component10.SkyEditor2__Text__c}" size="1" id="Component10" style="width:107px;height:14px;color:#000000;font-size:1.0em;" rendered="{!$ObjectType.Account.fields.Name.accessible}" />

Name項目はテキスト型なので"SkyEditorDummy"オブジェクトのテキスト型項目
"SkyEditor2__Text__c"が出力されています。
その為、主オブジェクトとして選択したオブジェクトと項目の権限設定が正しく行われていても
"SkyEditorDummy"への参照権限がない場合、画面上に表示することが出来ません。

「作成した検索画面を一般ユーザで開いたら項目が出てこなくなった」
そんな時は"SkyEditorDummy"オブジェクトのオブジェクト権限、項目レベルセキュリティをご確認ください。

2)ずいぶん長くなってしまいましたがお次は"SearchCondition"
こちらは[テンプレート]検索画面がもつ機能「検索条件登録」使用するために必要不可欠なオブジェクトです。

オブジェクトへの参照・作成・編集・削除権限のないユーザが使用するとこうなります。
  

検索条件はSkyVisualEditorパッケージの"SearchCondition"オブジェクトに保存されるので、「検索条件登録」を利用されるユーザーの方は、"SearchCondition"オブジェクトの新規・参照・編集・削除権限が必要になります。

「検索条件が登録できない」
「検索条件を編集できない」
そんな時は"SearchCondition"のオブジェクト権限、項目レベルセキュリティをご確認ください。





如何でしたでしょうか。
今回取り上げたのは数ある中のほんの一部です。
取り上げきれなかった分については、また別の機会でご紹介できたらと思います。