Salesforce:SFDCのボタンからプロファイルを判定して処理を実行する
- By: Ryuhagiwara
- カテゴリー: javascript, salesforce
- Tags: javascript, profile, Salesforceボタン, プロファイル名で処理を分岐する
javascript
Salesforceボタン
SalesforceのClassicでは、ボタンにJavascriptを利用することができますね。
JavascriptをSalesforceボタンで実行するメリットとしてはApex開発が不要になります。
テストクラスソースも不要になるので、本番移行が簡単になりますね。
今回は、カレントユーザからプロファイル名を取得し、プロファイル名を判断して
実行する処理内容を分岐させる方法を考えてみました。
プロファイル名を判断して処理を分岐することにより、ボタンを複数用意しなくてすむので、
画面レイアウトも共通で利用することが可能になります。
プロファイルごとに処理を分岐するSalesforceボタンのサンプル
{!REQUIRESCRIPT("/soap/ajax/30.0/connection.js")}
var profile_name = " {!User.Profile}"
window.alert( 'ユーザプロファイル: ' + profile_name );
//対象プロファイル判定後に処理を実行
if (window.confirm ('初期 確認メッセージ')){
//Profile Check
var reg = new RegExp( /システム管理者/ );
var regresult = reg.test(profile_name ) ;
//対象プロファイルの場合に実行
if ( regresult ) {
if ( window.confirm( '実行してよろしいですか?: ' + profile_name + ':[' + regresult + ']' ) ) {
//処理実行
window.alert( '実行しました。' );
}else{
//処理中断
window.alert( '中断しました。' );
}
}else {
window.alert( '実行できません。終了します。:[' + profile_name +']' );
}
}
注意が必要な点
セキュリティの観点から、今後はSalesforceではJavascriptに利用制限がかかる可能性があります。
コメントはまだありません