半年間Salesforceを触ってみて

皆さん、こんにちは。 岩崎です。 今年も残す所あと僅かとなりまして、 年末に向けてラストスパートという方も多いかと思います。 今回は、多分に漏れず忙しいブログメンバーに代わりまして私岩崎からお送り致します。

実は私は今年度社会人になったばかりで、 右も左もわからないなかテラスカイに入社し、日々Salesforceの開発に勤しんでいます。 今回、そんなSalesforce初心者の目線から、 Salesforceに対して感じたこと、気を付けていることをお伝えできればいいなと思っています。

初めてのSalesforce開発で苦労したこと

私が初めて携わった開発では、まずApexトリガーの作成を行いました。 Apexについて調べながら開発を行いましたが、 検索して出てくるのは英語のページばかりで、英語の苦手な私は英語を読み解く事に苦労しました。

学生時代に英語をもっとしっかりとやっておけば良かったと感じています。 また、初めはSalesforceで何ができるのかを把握することが難しかったことを覚えています。 最近Salesforceを使い始めた方は、私と同じように感じている方もいるのではないでしょうか。

しかし、一つ一つ勉強していくことで、徐々にお客様の要望を叶えることもできてきました。 ApexやVisualforceでの開発についても不安がありましたが、 弊社製品のSkyVisualEditorを使用して開発が行えたため、 私でもお客様に喜んでいただける画面を開発することができました。

開発での経験から気をつけていること

技術情報ブログらしく、私が経験したことからいくつか書きたいと思います。 当たり前だったりすることもありますが、 これからSalesforce開発をはじめる方に少しでも参考になればと思います。

入力規則

まず入力規則を作成した際に、気を付けていることがあります。 それは、入力規則の作成後にApexのテストを実行することです。 もし、Apexでの開発を行っていた場合、同時にテストクラスも作成をしますが、 テストを行うためのデータとして実データを使用することはできないため(※1)、テスト用にデータを作成します。 このとき作成に使用した項目の値が、新しく追加した入力規則に引っかかってしまうことがあるためです。

私は、事前に教えていただけたので回避することができましたが、 一人ではおそらく思いつきもしなかったでしょう。 これは、標準カスタマイズといえど変更の影響を考えるようになった良いきっかけとなりました。

(※1)通常は、UserやProfileといった一部を除き、組織のデータにはアクセスできません。 しかし、「@IsTest(SeeAllData=true)」アノテーションを付けることにより、すべてのデータにアクセス可能です。

変更リリースセット

次は、変更リリースセットでのデプロイに関してです。 承認プロセスでは、承認ステップで「承認者の選択」を「自動的に承認者に割り当てる」とした際、 以下の図のように、複数の承認者が選択された場合についての挙動を選択します。

承認ステップ

この選択を「選択したすべての承認者~」としている承認ステップをリリースセットに含めてデプロイした場合、 デプロイ先でリリースすると「最初の返答に基づいて~」へ変わってしまいました。(※2) また、項目をデプロイした際には、 「項目レベルセキュリティ」の設定が反映されません。 上記の2点はリリース後手動で修正をしなければなりません。 しかし、忘れてしまいやすいことでもあります。

そこで、教育担当の方から教わり、リリースの前にリリース手順書を作成することにしました。 手順書を作成しておくと、上記のような修正忘れをしなくなりますし、 万が一何かあり、リリース日に出社できななった時に他の人でも対応ができるようになるのとのことでした。 それ以来リリース手順書を作成するようにしています。

(※2)この件に関しては、Salesforce側の不具合によるものでしたが、 Salesforceのサポートに問い合わせたところ、Winter'14で解消するとのことでした。

終わりに

SalesforceはDeveloper組織を利用して実際にカスタマイズができるため、 勉強に非常に役立っています。 他にも、標準のカスタマイズに関しては日本語のヘルプも充実しており、 このブログのような技術者の方が情報を公開している場も多くあります。 それらを参考に勉強をして、認定Administrator 認定Developer の資格を取得することができました。

まだまだ未熟な私ですが、立派な技術者になれるよう日々精進していくので、 今後ともよろしくお願い致します。