tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:パブリッシャーアクションとVisualforceページ

まだ試していなかったのでパブリッシャーアクションでのVisualforce表示を試してみました。パブリッシャーアクションにはオブジェクト固有のアクションとグローバルアクションの2種類があり、それぞれ次の違いがあります。

  • オブジェクト固有のアクションとして使用するページは標準オブジェクトコントローラを使ったページのみ表示できます。
  • グローバルアクションとして使用するために作成するページでは、いずれの標準オブジェクトコントローラも使用できません。

それからパブリッシャーアクションを使うには設定から有効化してある必要があります。


Chatterタブで表示する場合はグローバルアクションを用意します。作成→グローバルアクション→新規アクションの手順で作成します。

f:id:tyoshikawa1106:20140613002917p:plain


アクション作成後はパブリッシャーレイアウトの設定から作成したアクションを追加します。

f:id:tyoshikawa1106:20140613003402p:plain


これでChatterタブのパブリッシャーアクションからVisualforceページを呼び出すことができます。

f:id:tyoshikawa1106:20140613003608p:plain


Salesforce1からアクセスすると次のように表示されます。

f:id:tyoshikawa1106:20140613005057p:plain

f:id:tyoshikawa1106:20140613005111p:plain

f:id:tyoshikawa1106:20140613005124p:plain

f:id:tyoshikawa1106:20140613005134p:plain


PCのパブリッシャーアクションは幅は変更できませんが、高さは変更することが可能です。ここで高さを変更してもモバイル側には影響ありません。

f:id:tyoshikawa1106:20140613005820p:plain


RemoteTKなどをつかっているページをPC側のパブリッシャーアクションに埋め込むとエラーになるみたいです。モバイル端末ではエラーが発生せずに正常に実行されました。

f:id:tyoshikawa1106:20140613010132p:plain


幅は決まっているので横幅の長いページを挿入するとレイアウトが崩れてしまうので注意が必要です。パブリッシャーアクションで使うページにはレスポンシブデザイン対応しているページを使うようにしましょう。

f:id:tyoshikawa1106:20140613011701p:plain


こんな感じでいくつか制約もあるので単純に既存のページを表示すれば動くというわけではないみたいです。パブリッシャーアクションで使うページはきちんとパブリッシャーアクション向けに準備する必要があります。