前回、カスタマーポータルユーザの作成方法を説明したので、今日は無効化の方法をご紹介。
画面上で無効化する方法
画面上で無効化する方法は
- カスタマーポータル取引先の無効化
- カスタマーポータルユーザの無効化
- ユーザの無効化
の3つの方法があります。
それぞれの手順と特徴は以下の通り。
1. カスタマーポータル取引先の無効化
<手順>
取引先詳細画面の 「ポータルの使用」⇒「カスタマーポータル取引先の無効化」を選択
<特徴>
- 取引先配下の全てのカスタマーポータルユーザが無効化される
- 再度、「ポータルの使用」→「カスタマーポータルの有効化」から有効化すると、別のユーザが新たに作成される(無効化前のデータを引き継ぐことはできないので注意!)
- 無効化されたカスタマーポータルユーザは「無効ユーザ」となり、ユーザ名の先頭にアンダーバーが付与される
2. カスタマーポータルユーザの無効化
<手順>
取引先責任者詳細画面の 「ポータルの使用」⇒「カスタマーポータルユーザの無効化」を選択
<特徴>
- 選択したカスタマーポータルユーザのみが無効化される
- それ以外の特徴は「カスタマーポータル取引先の無効化」と同様
3. ユーザの無効化
<手順>
ユーザ設定画面で、「有効」のチェックを外して保存
<特徴>
- ユーザを再び有効にすることにより無効化前の状態に戻る
Web Service APIから無効化する方法
APIから無効化する方法は
- カスタマーポータル取引先の無効化
- ユーザの無効化
の2つの方法があります。
それぞれの手順は以下の通り(特徴は画面上での方法と同じ)。
1. カスタマーポータル取引先の無効化
<手順>
無効化対象の取引先(Account) のIsCustomerPortalをFalseに設定する
PHPで書くと、ソースコードはこんな感じ↓
try { $account = new SObject(); $account->Id = $accountId; // IDを指定 $account->fields = array( 'IsCustomerPortal' => false, ); $account->type = 'Account'; $result = $client->update(array($account), 'Account'); } catch(Exception $e) { echo $e->faultstring; }
2. ユーザの無効化
<手順>
無効化対象のユーザ(User) のIsActiveをFalseに設定する