« 2010年5月 | メイン | 2010年7月 »

2010年6月に作成された記事

2010年6月25日 (金)

Summer '10 新機能

6月22日(火)にSummer '10がリリースされました。
今回のリリースのメインはChatterですが、その他で気になった機能をご紹介。

リリースノートはこちら

連動ルックアップ(ベータ)

参照関係/主従関係の項目を作成する時の「ステップ 3」で、↓の画面が出てくるようになり、ルックアップ項目に表示されるレコードの条件を指定できます。今後使う機会が多そうな機能です。

20100625_1

承認フローダイアグラム図(Pilot)

承認プロセスの上に「ダイアグラムの表示」ボタンが追加されています。↓

20100625_2

これを押下すると、このようなダイアグラム図が表示されます↓。印刷もできます。承認フローのドキュメントはこれで代替できそうですね。

20100625_3

Force.com Sites周りで気になった機能追加

「URLリライト」
分かりづらいURLを簡単なURLに変換できる機能です。 urlRewriterインターフェースを実装したURL書き換えクラスを作成して変換します。実装方法はリリースノートを参照のこと。

「Cookieのサポート」
Cookieクラスのget/setCookiesメソッドでCookieにアクセスできるようになります。

「ビューステート インスペクタ(ベータ)」
VisualforceのPage Editorでビューステートを参照できるようになります。
但し、この機能を利用するには、Salesforceへの連絡が必要です。

2010年6月21日 (月)

Chatterを使ってみた

Summer '10でβリリースされるChatterを、Developer Editionで使ってみました。

まず有効化します↓

20100618_1

すると、ホームが↓のような画面になります。

20100618_2

こんな感じでコメントできます。

20100618_3_3


すべてのタブを表示すると、「」「プロファイル」「グループ」というタブが増えています。

20100618_4

「人」タブでは、ユーザを検索して、フォロー/フォロー解除を指定できます。

20100618_5

「プロファイル」タブでは、写真、自己紹介を更新でき、自分をフォローしている人と自分がフォローしている人が表示されます。

20100618_6

「設定」→「Chatter」→「フィード追跡」で、フィード追跡の有効化と追跡する項目をオブジェクト毎に選択できます
フィード追跡を有効化したオブジェクトの詳細画面では、上部にChatterが表示され、追跡する項目が更新されると、Chatterにその旨が表示されます。コメントも投稿できます。もちろん、カスタムオブジェクトもフィード追跡可能です。

20100618_7

20100618_8

レコードをフォローすると、追跡項目の更新状況やコメントが自分のChatter上に表示されます。

20100618_9

「グループ」タブでは、非公開/公開のグループを作って、グループの中で情報共有ができます。

20100618_10

20100618_11

もちろん、加入しているグループのコメントは自分のChatter上に表示されます。

20100618_12

主要な機能はこんな感じ。
レコード毎にフォローできたり、簡単にチームを作れて情報共有できるのは、結構便利かも。

使う前は、Chatterという社内Twitter機能がリリースされるというくらいの認識でしたが、使ってみると、Chatterがアプリケーションの広範囲に関わっており、Chatterによって、Salesforceの使い方が大きく変わりそうな感じがしました。
パートナーポータルやカスタマーポータルと連動して使えるようになると、さらに便利になりそうです。

2010年6月16日 (水)

Save to ServerとDeploy to Serverの違い

Force.com IDEには、ローカルで開発したコードを組織にアップロードするメニューとして、「Save to Server」と「Deploy to Server」が用意されています。

似たような機能で紛らわしいので、挙動を表にまとめてみました。
「Save to Server」でも「Deploy to Server」でもテストは実施されるんですね。
前回の記事の「組織の種類と開発環境/デプロイ方法」と合わせて、整理して理解しておきたいところです。

                                                                                               
Save to ServerDeploy to Server
デプロイ先Force.com Projectで設定した組織実行時に指定
テスト実施される実施される
エラーの詳細表示なしあり
バックアップ不可可能
デプロイ前の検証不可可能

↓のように、開発用組織と連動するForce.com Projectを作成し、
開発用組織に保存する時に使うのが「Save to Server」。
運用組織等の他の組織にデプロイする時に使うのが「Deploy to Server」という位置付けのようです。

20100616_1

ちなみに、Force.com IDEで保存ボタンを押下すると(Ctrl + Sも同様)、
「Save to Server」が実行されてしまいますが、
組織に毎回保存したくない場合もあるかと思います。

その場合は、プロジェクトを右クリックして、
「Force.com」⇒「Work Offline」(「オフラインで作業」)を選択すればOK。
オフラインモードで作業することができます。
運用組織と連動して使用する場合等に使える豆知識です。

20100616_2

2010年6月 9日 (水)

単体テストのコードを書かなくてもデプロイできる?

開発者の方はDeveloper EditionやSandboxで開発を行うことが多いのではないでしょうか。

DEだと単体テストのコードを書かなくてもデプロイできますし、ブラウザ上でApexコードを書いて保存して、すぐ動かせるのでとても便利です。

そのせいで、運用組織を利用せずに、DEやSandboxに慣れ過ぎてしまうと、
「単体テストのコードを書かなくてもデプロイできる」
と勘違いしてしまいがちです。

しかし、そうではありません。
運用組織へのApexのデプロイは、Force.com IDE か Migration Toolからしかできず(※)、やはり単体テストのカバレッジ率が75%以上であることが必須となります。ブラウザ上からはApexコードを作成することも、削除することもできないので、注意が必要です。

※リリース接続機能やパッケージ機能を利用してリリースすることも可能

DEでは、ブラウザ上でApexクラスの作成ができます(新規ボタン、編集、削除のリンクがある)↓

20100609_1_3

運用組織では、ブラウザ上でApexクラスの作成ができません(新規ボタン、編集、削除のリンクがない!)↓

20100609_2_3

とはいえ、なかなか気軽に運用組織を扱える機会が少ないというのも事実です。運用組織の扱いに慣れるには、無料で利用できる「Force.com Free Edition」がお薦めです。CRM機能は利用できないものの、デプロイに関してはEEやUEと同様の挙動を示します。

○組織の種類と開発環境/デプロイ方法

組織の種類Developer Edition、Sandbox運用組織(EE、UE、Force.com Free Edition等)
開発環境 ブラウザ上
Force.com IDE
Force.com IDE
デプロイ方法 ブラウザ上
Force.com IDE
Migration Tool
Force.com IDE
Migration Tool
テストコード なくてもOK 必須

2010年6月 4日 (金)

カスタマーポータルユーザの無効化

前回、カスタマーポータルユーザの作成方法を説明したので、今日は無効化の方法をご紹介。

画面上で無効化する方法

画面上で無効化する方法は

  1. カスタマーポータル取引先の無効化
  2. カスタマーポータルユーザの無効化
  3. ユーザの無効化

の3つの方法があります。

それぞれの手順と特徴は以下の通り。

1. カスタマーポータル取引先の無効化

<手順>
取引先詳細画面の 「ポータルの使用」⇒「カスタマーポータル取引先の無効化」を選択

<特徴>

  • 取引先配下の全てのカスタマーポータルユーザが無効化される
  • 再度、「ポータルの使用」→「カスタマーポータルの有効化」から有効化すると、別のユーザが新たに作成される(無効化前のデータを引き継ぐことはできないので注意!
  • 無効化されたカスタマーポータルユーザは「無効ユーザ」となり、ユーザ名の先頭にアンダーバーが付与される

2. カスタマーポータルユーザの無効化

<手順>
取引先責任者詳細画面の 「ポータルの使用」⇒「カスタマーポータルユーザの無効化」を選択

<特徴>

  • 選択したカスタマーポータルユーザのみが無効化される
  • それ以外の特徴は「カスタマーポータル取引先の無効化」と同様

3. ユーザの無効化

<手順>
ユーザ設定画面で、「有効」のチェックを外して保存

<特徴>

  • ユーザを再び有効にすることにより無効化前の状態に戻る

Web Service APIから無効化する方法

APIから無効化する方法は

  1. カスタマーポータル取引先の無効化
  2. ユーザの無効化

の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に設定する

2010年6月 1日 (火)

カスタマーポータルユーザの作成方法

今日はカスタマーポータルユーザの作成方法をご紹介。

画面上で作成する方法

画面上でカスタマーポータルユーザを作成するには、以下の手順を踏みます。

1. 「セルフサービスユーザの編集」の権限を持つユーザでログイン

2. カスタマーポータルユーザにしたい取引先責任者の詳細画面を開く

3. 「ポータルの使用」→「カスタマーポータルの有効化」を押下

20100601_1

4. ユーザの編集画面でユーザ情報を入力して、「保存」を押下

3.では、取引先責任者に対応する取引先の所有者にロールが設定されていないと、エラーとなってしまうので、注意してください。

20100601_2

Web Service APIで作成する方法

Web Service APIでカスタマーポータルユーザを作成するには、
ログイン後、下記の項目を設定して、Userオブジェクトを作成します。

・ContactId : カスタマーポータルユーザにしたい取引先責任者のID
・ProfileId : 「Custmer Portal Manager」のプロファイルのID

UserTypeを指定して作成するのではなく、
ProfileIdにカスタマーポータルユーザに割り当てるプロファイルを指定して作成するところがポイント。
「Custmer Portal Manager」の代わりに「High Volume Portal」を割り当てることもできます。

PHPで書くと、ソースコードはこんな感じ↓

try {
	$user = new SObject();
	$user->fields = array(
		'LastName' => '山田', 
		'FirstName' => '太郎', 
		'Alias' => '山田', 
		'Username' => 'y-taro@test.co.jp', 
		'EmailEncodingKey' => 'ISO-2022-JP', 
		'Email' => 'y-taro@test.co.jp', 
		'ContactId' => '003A0000008F9Xy', 
		'ProfileId' => '00eA0000000rBJN', 
		'TimeZoneSidKey' => 'Asia/Tokyo', 
		'LanguageLocaleKey' => 'ja', 
		'LocaleSidKey' => 'ja_JP'
	);
	$user->type = 'User';
	$result = $client->create(array($user), 'User');
} catch(Exception $e) {
	echo $e->faultstring;
}

採用情報

株式会社フレクトでは、事業拡大のため、
・Salesforce/Force.comのアプリケーション開発
・HerokuやAWSなどのクラウドプラットフォーム上
でのWebアプリケーション開発
エンジニア、マネージャーを募集中です。

未経験でも、これからクラウドをやってみたい方、
是非ご応募下さい。

フレクト採用ページへ

会社紹介

  • 株式会社フレクトは、
      ・認定コンサルタント
      ・認定上級デベロッパー
      ・認定デベロッパー
    が在籍している、セールスフォースパートナーです。
    また、heroku partnersにも登録されています。
    herokuパートナー
    株式会社フレクト
    Salesforce/Force.com
    導入支援サービス
    弊社の認定プロフェッショナルが支援致します。
    ・Visualforce/Apexによるアプリ開発
    ・Salesforceと連携するWebアプリ開発
    も承っております。
    セールスフォースご検討の際は、
    お気軽にお問合せください。

Twitter

リファレンス

■Developer's Guide(リファレンス)
・Apex  HTML | PDF | 日本語PDF | ガバナ制限
・Visualforce  HTML | PDF
・Web Services API  HTML | PDF | 日本語PDF
・Bulk API  HTML | PDF
・REST API  HTML | PDF | 日本語PDF
・Metadata API  HTML | PDF
・Migration Tool  HTML | PDF
・AJAX Toolkit  HTML | PDF
・Data Loader PDF | 日本語PDF

■早見表 (日本語)
数式
Apex
Visualforce
Web Services API
Chatter