スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


--------------------------------------------------------------------------------------

メモ。iReportとReportsConnect。画像の表示について

久々にiReportとReportsConnectを使っての帳票開発をすることになりそうで、使い方の予習・復習中です。

「見積・見積明細で見積書を出力」っていうまあ典型的なものですが、見積を承認した人の印影を表示したいというご要望が。
見積オブジェクトに承認者1、承認者2、承認者3のようなユーザ参照項目を用意して、そのユーザの印影画像を拾ってきて表示せいということらしいです。


それで、どのようにすればいいか?なのですが、動的に画像を変える必要があるわけで、そこはApexにて、ReportsConnectControllerのsetAttachment(List atts) メソッドを使って、対象の画像をメモ&添付として渡す必要があります。
メモ&添付はSalesforceIdがあることが前提っぽいです。つまり、
Attachment at = new Attachment();
atts.add(at);
のようにinsertせずにApexのAttachmentオブジェクトだけでやりくりしようというのはダメっぽいです。
ドキュメントとか静的リソースは使えないということですね。
さらに、ユーザオブジェクトはメモ&添付は使えません。
そこで、
1.ユーザに合わせて印影画像を変えるために、カスタムオブジェクトで印影格納用オブジェクトのようなものを作り、そこにメモ&添付で画像を格納。
2.ユーザオブジェクトにカスタム項目「印影画像Id」というテキスト項目を持たせ、該当のメモ&添付のSalesforceIdを入れておく。
3.Apexで見積→ユーザ→添付ファイルとたどって、ReportsConnectControllerのsetAttachment(List atts) メソッド実行
というような流れが必要ですよと。

さらに、
4.getParms()でパラメータマップを取得し、ここに画像のファイル名をパラメータに格納しておく。
5.iReportのimageのプロパティ「Image Expression」に該当のパラメータを指定
といったことが必要と。

注意として、ファイルの名称は全部異なるようにしないといけないようです。
制約多くて大変です。


※追記2017/05/26-------------------
さらに分かったこと、はまったことをメモ

★画像の保管場所について、印影のようなものでしたら、わざわざ新しいカスタムオブジェクトを作ってそこに添付するよりも、帳票のレコードとして「画像保管用」とでも名づけて、管理用レコードにチェックを入れる。とすると不要なオブジェクトは作らなくてすむし、Apexでメモ&添付を検索する必要もないみたい。

★帳票をまとめて出力。の機能を使用する場合、メモ&添付のName項目に「子帳票のSFID + "/"」 を頭につけてあげてからSetAttachment()をし、渡すパラメータも「子帳票のSFID + "/"」をつけてあげる必要があるようです。

--------------------------------------------------------------------------------------

Salesforce認定Platformアプリケーションビルダの移行試験」を受験してきました

無事合格できました。
一度、2016年の2月に受験して落ちておりまして、1年以上を超えてのリベンジ受験でした。
もうすぐ、移行試験やめちゃうよーみたいなアナウンスもありましたし。

引用 開始----
https://www.salesforce.com/jp/services-training/education-services/cert/dev/exam.jsp
2017年4月にWebassessorが更新され、Winter'17以降の認定デベロッパー資格のリリース試験料のお支払い機能がなくなります。 そのため、支払いタイミング以降のリリース試験を受験できないことにより、お持ちの認定デベロッパー資格が終了します。

ただし、2017年2月時点で有効な認定デベロッパー資格をお持ちの方は、資格失効後も2018年4月まで移行試験を受験できます(予定)。 お早めにご受験ください。

引用 終わり----



今回、どの辺りを勉強したかを試験範囲と、参考にしたヘルプ一覧を記述します。
漏れ、あるかも。

移行試験に的を絞らず、通常試験範囲で勉強しました。ご了承ください。


-----------------
SALESFORCE の基本(8%)


・フィード追跡
https://help.salesforce.com/articleView?id=collab_feed_tracking_overview.htm&type=0&language=ja&release=206.13

・個人設定の通貨または組織の通貨の設定
https://help.salesforce.com/articleView?id=admin_currency_set.htm&type=0&language=ja&release=206.16

マルチ通貨組織では、マスタ通貨を、本社が収益を報告するときに使用する通貨に設定します。すべての換算レートは、マスタ通貨に基づいています。


・独自の Salesforce アプリケーションの構築
https://help.salesforce.com/articleView?id=dev_tabsets.htm&type=0&language=ja&release=206.16

・割り当てルールの管理
https://help.salesforce.com/articleView?id=customize_leadrules.htm&language=ja&type=0

・リード項目の対応付け
https://help.salesforce.com/articleView?id=lead_conversion_mapping.htm&type=0&language=ja&release=206.15

・リードの取引開始に関する考慮事項
https://help.salesforce.com/articleView?id=leads_notes.htm&type=0&language=ja&release=206.15

リードの取引開始のための入力規則とワークフロートリガが組織で有効になっている場合、ワークフロールールは、取引開始済みのリードについてのみトリガされます。
リードにレコードタイプがある場合、リードを変換するユーザのデフォルトレコードタイプが、リードの変換中に作成されたレコードに割り当てられます。
リードを変換するユーザのデフォルトのレコードタイプによって、変換時に使用できるリードの変換元値が決まります。必要なリードの変換元値を使用できない場合、リードを変換するユーザのデフォルトのレコードタイプに値を追加します。


-----------------
データモデリングおよび管理(10%)


・カスタム項目のデータ型の変更に関するメモ
https://help.salesforce.com/articleView?id=notes_on_changing_custom_field_types.htm&type=0

ほぼ全部覚える。
特にリッチテキスト、自動項目採番、選択リスト・複数選択リストあたりが重要っぽい。



・多対多リレーションの作成
https://help.salesforce.com/articleView?id=relationships_manytomany.htm&language=ja&type=0

・リレーションの考慮事項
https://help.salesforce.com/articleView?id=relationships_considerations.htm&type=0

主オブジェクトに積み上げ集計項目がない場合は、「主従関係」を「参照関係」に変換できます。
標準オブジェクトは、主従関係にあるカスタムオブジェクトの従側であってはいけません。
カスタムオブジェクトにすでにデータが含まれる場合、主従関係を作成することはできません。ただし、すべてのレコードの参照項目に値が含まれている場合には、リレーションを参照関係として作成してから、それを主従関係に変換できます。


・選択リストおよび複数選択リスト数式項目の使用のヒント
https://help.salesforce.com/articleView?id=tips_for_using_picklist_formula_fields.htm&type=0&language=ja&release=206.15

選択リスト項目は、次の関数でのみ使用できます。
ISPICKVAL ? 選択リストの値を単一値と比較します。
CASE ? 選択リストの値を複数の値と比較します。
TEXT ? 選択リスト値をテキスト値に変換して、CONTAINS などテキスト値をサポートする関数で使用できるようにします (フロー数式リソース、数式項目、入力規則、およびワークフロー項目自動更新でのみ使用可能)。


・スキーマビルダーへのアクセス方法
https://help.salesforce.com/articleView?id=schema_builder_working.htm&type=0&language=ja&release=206.15

・データローダを使用するケース
https://help.salesforce.com/articleView?id=when_to_use_the_data_loader.htm&type=0&language=ja&release=206.16

50,000 ~ 5,000,000 件のレコードを読み込む必要がある。データローダは最大 500 万件のレコードの読み込みに対応します。
インポートウィザードによってまだサポートされていないオブジェクトに読み込む必要がある。
夜間インポートなど、定期的なデータ読み込みスケジュールを設定する。


・データインポートウィザード
https://help.salesforce.com/articleView?id=data_import_wizard.htm&type=0&language=ja&release=206.15

・外部 ID とユニーク ID の違いは何ですか?
https://help.salesforce.com/articleView?id=000005395&type=1&language=ja

・Salesforce Connect
https://help.salesforce.com/articleView?id=platform_connect_about.htm&type=0&language=ja

Salesforce Connect では Salesforce 外部オブジェクトを外部システムのデータテーブルに対応付けます。組織にデータをコピーする代わりに、Salesforce Connect は必要なときにリアルタイムでデータにアクセスします。データは決して古くならず、必要なデータにのみアクセスします。Salesforce Connect は次のような場合に使用することをお勧めします。


・外部オブジェクトリレーション
https://help.salesforce.com/articleView?id=external_object_relationships.htm&type=0

まとめられている表をおぼえる


-----------------
セキュリティ(10%)

・項目入力の必須化によるデータ品質の確保
https://help.salesforce.com/articleView?id=fields_about_universally_required_fields.htm&type=0&language=ja

・必須項目の考慮事項
https://help.salesforce.com/articleView?id=fields_universally_required_field_considerations.htm&type=0&language=ja

・権限セット
https://help.salesforce.com/articleView?id=perm_sets_overview.htm&type=0

・ユーザロール階層
https://help.salesforce.com/articleView?id=admin_roles.htm&type=0

・組織の共有設定
https://help.salesforce.com/articleView?id=security_sharing_owd_about.htm&type=0&language=ja&release=206.13

-----------------
ビジネスロジックとプロセスの自動化(27%)


・商談の項目
https://help.salesforce.com/articleView?id=opp_fields.htm&type=0


・積み上げ集計項目
https://help.salesforce.com/articleView?id=fields_about_roll_up_summary_fields.htm&type=0

合計・件数・最大値・最小値
合計はパーセント・数値・通貨
最大値・最小値は日付・日付日時も
積み上げするには主従関係が必要


・ワークフローと Visual Workflow の違いは?
https://help.salesforce.com/articleView?id=vpm_faq_workflow_comparing.htm&type=0&language=ja&release=206.16


・ワークフローの考慮事項
https://help.salesforce.com/articleView?id=workflow_rules_considerations.htm&type=0&language=ja&release=206.15

ワークフロールールは、個々のキャンペーン統計やキャンペーン階層統計など、キャンペーン統計項目でトリガすることはできません。


・項目自動更新アクションの考慮事項
https://help.salesforce.com/articleView?id=workflow_field_update_considerations.htm&type=0

すべてのカスタムオブジェクトおよび一部の標準オブジェクトについて、詳細レコードを変更すると関連マスタレコードの項目が更新されるように設定して、ワークフローと承認アクションを作成できます。クロスオブジェクト項目の更新は、カスタム-to-カスタムの主従関係、カスタム-to-標準の主従関係、およびいくつかの標準-to-標準の主従関係について機能します。詳細は、「クロスオブジェクトの項目更新」(11 ページ) を参照してください。


・トリガと実行の順序
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_order_of_execution.htm

・自動化ルール、および、Apex トリガーはどのような順番で処理されますか?
https://help.salesforce.com/articleView?id=000005694&language=ja&type=1
1 古いレコードをデータベースからロード(または、新しい挿入の初期化)
2 新しいレコードの値で古い値を上書き
3 システムの入力規則(商談商品を挿入する場合、システムの入力規則に加えてカスタム入力規則が実行されます)
4 すべての before トリガを実行(EE / UE のみ)
5 カスタム入力規則
6 レコードをデータベースに保存(しかし、コミットされていない)
7 レコードをデータベースから再ロード
8 すべての after トリガを実行(EE / UE のみ)
9 割り当てルール
10 自動応答ルール
11 ワークフロー ルール
12 プロセス
13 エスカレーション ルール

14 積み上げ集計数式の値の更新(存在する場合)
15 データベースのコミット
16 コミット後のロジック(メールの送信)


・時間ベースのアクションとタイムトリガの考慮事項
https://help.salesforce.com/articleView?id=workflow_time_action_considerations.htm&language=ja&type=0

・FAQ - 時間ベースのワークフロー
https://help.salesforce.com/articleView?id=000005245&type=1&language=ja

オブジェクトの日付項目または日付/時間項目に従って実行する時間ベースのアクションをトリガするルールを定義することができます。


・入力規則
https://help.salesforce.com/articleView?id=fields_about_field_validation.htm&type=0&language=ja&release=206.13

入力規則を使用して、データの質を向上させます。


・入力規則の考慮事項
https://help.salesforce.com/articleView?id=fields_validation_considerations.htm&type=0&language=ja&release=206.15

ワークフロールール基づき、プロセスのスケジュール済みアクションにも基づくレコードの更新は入力規則を実行しないため、以前は有効な項目がワークフロールールおよび一部のプロセスによって無効な内容に書き換えられることがあります。



・Lightning プロセスビルダー
https://help.salesforce.com/articleView?id=process_overview.htm&type=0&language=ja&release=206.15



・メール承認の有効化
https://help.salesforce.com/articleView?id=approvals_email.htm&type=0&language=ja&release=206.15

・承認ステップを削除/追加することができない
https://help.salesforce.com/articleView?id=000120161&type=1&language=ja


-----------------
ソーシャル(3%)


・ソーシャル取引先、取引先責任者、およびリード
https://help.salesforce.com/articleView?id=social_networks_overview.htm&type=0&language=ja&release=206.15

Lightning Experience および Salesforce1 でサポートされるオブジェクトでサポートされているのはtwitterのみ
使用を開始するには、取引先、取引先責任者、またはリードの詳細ページに移動し、ソーシャルネットワークアカウントにサインインするだけです。


-----------------
ユーザインターフェース(14%)


・Lightning コンポーネントフレームワーク
https://help.salesforce.com/articleView?id=aura_overview.htm&type=0&language=ja&release=206.15

・Lightning コンポーネントフレームワークとは?
https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/intro_framework.htm

・Lightning ページの標準コンポーネント
https://help.salesforce.com/articleView?id=lightning_page_components.htm&type=0&language=ja&release=206.15

検索条件リストコンポーネント
最近使ったデータコンポーネント
レポートグラフコンポーネント
リッチテキストコンポーネント
Visualforce ページコンポーネント


・Lightning アプリケーションビルダー
https://help.salesforce.com/articleView?id=lightning_app_builder_overview.htm&type=0&language=ja&release=206.15

Lightning アプリケーションビルダーでは、次のものを作成できます。
・標準ページにドリルダウンする単一ページアプリケーション
・四半期の上位の販売見込み客や主要なリードを追跡するアプリケーションなど、ダッシュボードスタイルのアプリケーション
・ユーザが経費を入力し、送信した経費を監視する経費アプリケーションなど、特定の作業に対処する「ポイント」アプリケーション
・ユーザのニーズに合わせて調整した、オブジェクトのカスタムレコードページ
・ユーザが最も使用するコンポーネントと機能が含まれたカスタムホームページ


・カスタムボタンとカスタムリンクの考慮事項
https://help.salesforce.com/articleView?id=links_considerations.htm&type=0&language=ja&release=206.16

カスタムボタンは、Web-to-Lead、Web-to-Case、ケースチーム関連リスト、またはユーザーオブジェクトでは使用できません


・カスタムリンクの例: レポートへのリンク
https://help.salesforce.com/articleView?id=custom_links_example_linking_to_reports.htm&language=ja&type=0

・埋め込まれたレポートグラフ
https://help.salesforce.com/articleView?id=reports_embed_showcharts_pages.htm&type=0

-----------------
レポート(5%)


・レポート形式の選択
https://help.salesforce.com/articleView?id=reports_changing_format.htm&type=0&language=ja&release=206.15

・レポートフォルダまたはダッシュボードフォルダの共有
https://help.salesforce.com/articleView?id=analytics_share_folder.htm&type=0&language=ja&release=206.15

・ダッシュボードの絞り込み
https://help.salesforce.com/articleView?id=dashboard_filters_overview.htm&type=0

・Salesforce Classic の実行ユーザの選択
各ダッシュボードには実行ユーザが指定され、そのユーザのセキュリティ設定によってダッシュボードに表示されるデータが決まります。

-----------------
モバイル(5%)


・アクションの定義済みの値の使用
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.salesforce1appadmin.meta/salesforce1appadmin/s1_admin_guide_actions_predef_values.htm

アクションの特定の項目に対して定義済みの値を設定すると、モバイルユーザの生産性が向上し、同時にモバイル環境のアクションを最適化することができます。


-----------------
アプリケーションのリリース(8%)


・アプリケーションライフサイクル管理の概要
https://trailhead.salesforce.com/ja/modules/alm_deployment/units/alm_intro

・高度な開発ライフサイクルシナリオ
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.dev_lifecycle.meta/dev_lifecycle/lifecycle_adv_chapter_intro.htm

・Salesforce からバックアップデータをエクスポートする
https://help.salesforce.com/articleView?id=admin_exportdata.htm&type=0&language=ja&release=206.15

・変更セット
https://help.salesforce.com/articleView?id=changesets.htm&type=0&language=ja&release=206.15

変更セットを使用すると、Salesforce 組織間でカスタマイズを送信できます。たとえば、Sandbox 組織で新しいオブジェクトを作成してテストしてから、変更セットを使用して本番組織に送信することができます。変更セットには、[設定] メニューから実行できる変更のみを含めることができます。たとえば、変更セットを使用して、取引先責任者レコードのリストをアップロードすることはできません。変更セットに組織に関する情報は含まれますが、レコードなどのデータは含まれません


・変更セットで使用可能なコンポーネント
https://help.salesforce.com/articleView?id=changesets_about_components.htm&type=0

リリースされたカスタムタブは、デフォルトですべてのユーザに対して非表示


・Sandbox の作成
https://help.salesforce.com/articleView?id=data_sandbox_create.htm&type=0

Salesforce は Sandbox ユーザ名を自動的に変更しますが、パスワードは変更しません。新しい Sandbox では、メールの送信設定がデフォルトで [システムメールのみ] になります。

ull Sandbox にすべてのデータを含めるには、どの程度の項目追跡履歴データを含めるか、および Chatter データをコピーするかどうかを選択します。履歴は 0 ~ 180 日分のコピーが可能で、30 日単位で増加できます。デフォルトは 0 日です。Chatter データには、フィード、メッセージ、および検出トピックが含まれます。コピーするデータの量を減らすと、Sandbox のコピー時間を大幅に短縮できます。


・Sandbox の種別およびテンプレート
https://help.salesforce.com/articleView?id=create_test_instance.htm&type=0


・Sandbox の設定に関する考慮事項
https://help.salesforce.com/articleView?id=data_sandbox_implementation_tips.htm&language=ja&type=0

Sandbox と本番組織には、常に一意の組織 ID があります。Sandbox コピーエンジンでは、作成要求および更新要求ごとに組織が作成されます。このため、Sandbox の組織 ID は、Sandbox を更新するたびに変更されます


・パッケージについて
https://help.salesforce.com/articleView?id=sharing_apps.htm&type=0&language=ja&release=206.13

未管理パッケージは、通常、開発者にアプリケーションの基本ビルディングブロックを提供するために、オープンソースプロジェクトまたはアプリケーションテンプレートを配布する場合に使用します。未管理パッケージからコンポーネントがインストールされると、コンポーネントはインストールされた組織で編集できるようになります。未管理パッケージを作成してアップロードした開発者は、インストールされたコンポーネントを制御できず、これらのコンポーネントを変更またはアップグレードできません。Sandbox から本番組織へのコンポーネントの移行に未管理パッケージを使用しないでください。代わりに、変更セットを使用してください。



・手動による変更の追跡
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.dev_lifecycle.meta/dev_lifecycle/dev_track_changes_manual.htm

メタデータの差分をとる
変更履歴フォームを作成し、書き込むようにする
毎週、セットアップ監査証跡を確認する


--------------------------------------------------------------------------------------

メモ:テキトーに作ったプログラム。週報の集計。

今現在勤めている会社では、部署ごとに「週報:○○部」というようなグループを作っていて、そこに各自週報を書くということをやっております。
っで、提出率が悪いっぽいから調査したい。
ということになったので、簡易に実装してみました。という話。


Apexを実装せずにレポートだけでやってみたら、投稿0だけは私の力ではどうしてもうまくできず・・・。


★要件
・毎週、各週報グループに投稿しているかどうかをレポートで見えるようにする。
・投稿数0のユーザも名前を表示させる。
・External Chatterなど、外部社員のユーザは集計対象外。

★前提
・ユーザの項目「部署」には正しい部署名が入っている。

★開発
◆カスタムオブジェクトの設定
・週報投稿状況(WeeklyReportStatus__c)というオブジェクトを作成し、以下の項目を用意
・・ユーザ(参照関係)
・・集計開始日(日付)
・・集計終了日(日付)・・・基本的には開始日+6日となる。例開始日が1/1の場合、終了日は1/7。
・・投稿有無(チェックボックス)

◆カスタム表示ラベルの設定
・WEEKLY_REPORTS_IDS・・週報のグループのSFIDをセミコロンで区切って格納。

◆Apexコード
ユーザを検索して、投稿があったらtrue、なかったらfalseでレコードを作ってみましょう。
という簡易に作ったもの。




◆Apexを毎週どこかの曜日を指定してスケジューリング

◆カスタムレポートタイプ
ユーザ - 週報投稿状況 で作成。0件も許すのオプションにする。

◆レポート作成
条件
・ユーザ.作成日:常時
・ユーザ.有効:true
・ユーザ.部署:レポートで表示させたいの部署名
・ユーザ.ユーザ種別:標準

マトリックスタイプのレポートで、ユーザ.氏名と日付(一週間単位)で作成。
投稿有無は合計表示としておく。

20170412_sf1.jpg



--------------------------------------------------------------------------------------

「Salesforce認定Platformデベロッパー」を受験してきました

試験案内
https://www.salesforce.com/jp/services-training/education-services/cert/credentials.jsp
受験ガイド
https://secure2.sfdcstatic.com/jp/assets/pdf/misc/studyguide_cert_pla_dev1.pdf


結果からいうと、無事合格できました。

これから、この試験を勉強するっていう方のため?に私のメモを下記に残しておきます。
試験範囲はStudy ガイドを参考にしてください。

一部、参考URLがかぶっています。
なお、私が受験したときはWinter '17です。
--------------------------------------------

1.SALESFORCEの基本(10%)


★参考URL

・Apexガバナ制限
https://developer.salesforce.com/docs/atlas.ja-jp.salesforce_app_limits_cheatsheet.meta/salesforce_app_limits_cheatsheet/salesforce_app_limits_platform_apexgov.htm

Apex はマルチテナント環境で実行するため、Apex ランタイムエンジンは、回避 Apex コードまたはプロセスが共有リソースを独占しないよう制限事項を強制します。


・Apexのバージョン設定の管理
https://help.salesforce.com/articleView?id=code_version_settings_apex.htm&language=ja&type=0

下位互換性を持たせるため、クラスは、Apex および API の特定のバージョンのバージョン設定と共に保存されます。
Apex、API、および管理パッケージのコンポーネントが次のリリースバージョンにアップグレードされた場合でも、クラスまたはトリガは特定の、既知の動作のバージョンにバインドされたままになります。


・パッケージについて
https://help.salesforce.com/articleView?id=sharing_apps.htm&language=ja&type=0

未管理パッケージは、通常、開発者にアプリケーションの基本ビルディングブロックを提供するために、オープンソースプロジェクトまたはアプリケーションテンプレートを配布する場合に使用します。未管理パッケージからコンポーネントがインストールされると、コンポーネントはインストールされた組織で編集できるようになります。未管理パッケージを作成してアップロードした開発者は、インストールされたコンポーネントを制御できず、これらのコンポーネントを変更またはアップグレードできません

管理パッケージは通常、アプリケーションをカスタマーに配布、販売するために Salesforce パートナーが使用します。これらのパッケージは、Developer Edition 組織で作成される必要があります

管理パッケージには次のような利点もあります。
Apex の知的財産の保護
・API アクセスが可能なコンポーネントの組み込みのバージョン管理サポート
・前のバージョンを分岐およびパッチする機能
・登録者へのパッチ更新のシームレスな転送を行う機能
・インストールで競合が発生しないようにすべてのコンポーネントに一意の名前を指定

・Visualforce の概要
https://developer.salesforce.com/page/JP:An_Introduction_to_Visualforce

MVCモデルについての説明箇所


・積み上げ集計項目
https://help.salesforce.com/articleView?id=fields_about_roll_up_summary_fields.htm&language=ja&type=0

次の場所で積み上げ集計項目を作成します。
・主従関係の主側にあるカスタムオブジェクト
・カスタムオブジェクトとの主従関係の主側にあるすべての標準オブジェクト
・関連する商談商品の値を使用する商談
・関連する商談の値を使用する取引先
・キャンペーンメンバーの状況またはキャンペーンメンバーのカスタム項目の値を使用するキャンペーン


積み上げ集計項目で計算できる項目の種類は、計算の種類によって異なります。
・積み上げの種類として [合計] を選択した場合は、数値、通貨、およびパーセント項目が使用できます。
・積み上げの種類として [最小] または [最大] を選択した場合は、数値、通貨、パーセント、日付、および日付/時間項目が使用できます。


・単体テストの組織データとテストデータの分離
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_data_access.htm

Apex コードより、テストメソッドはデフォルトで、標準オブジェクト、カスタムオブジェクト、およびカスタム設定データなどの組織の既存のデータにアクセスできません。アクセスできるのは、テストメソッドが作成したデータのみです。ただし、組織またはメタデータオブジェクトの管理に使用する次のようなオブジェクトなどは、そのままテストでアクセスできます。
・User
・Profile
・Organization
・AsyncApexJob
・CronTrigger
・RecordType
・ApexClass
・ApexTrigger
・ApexComponent
・ApexPage

可能な場合は常に、テストごとにテストデータを作成する必要があります。この制限は、IsTest(SeeAllData=true) アノテーションで、テストクラスまたはテストメソッドにアノテーションを付加することによって無効にできます。


・IsTest アノテーション
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_annotation_isTest.htm

SeeAllData=trueの使い方について


・カスタムオブジェクトの活動の有効化に関するメモ
https://help.salesforce.com/articleView?id=tracking_activities_for_custom_objects.htm&language=ja&type=0

カスタムオブジェクトを作成するときに活動を有効化すると、自動的に [活動] 関連リストがデフォルトのページレイアウトに追加されます。


・クロスオブジェクト数式項目とは?
https://help.salesforce.com/articleView?id=customize_cross_object.htm&language=ja&type=0

クロスオブジェクト数式項目とは、2 つの関連オブジェクトにまたがり、そのオブジェクトで差し込み項目を参照する数式です。
最大 10 リレーション離れたオブジェクトの項目を参照できます。
別のオブジェクトの項目を参照する数式を作成し、ページレイアウトにその数式を表示する場合、ユーザは、そのオブジェクトレコードへのアクセス権がなくても、オブジェクトでその項目を表示できます


・入力規則
https://help.salesforce.com/articleView?id=fields_about_field_validation.htm&type=0&language=ja&release=206.12

入力規則を使用して、データの質を向上させます。


・ワークフロー
アウトバウンドメッセージアクション
https://help.salesforce.com/articleView?id=workflow_managing_outbound_messages.htm&type=0&language=ja&release=206.12

アウトバウンドメッセージでは、外部サービスなどの指定エンドポイントに情報を送信します。
※プロセスビルダーでは、アウトバウンドメッセージを使用することができないことを抑えておく。


★Trailhead

Salesforce プラットフォームの基礎
https://trailhead.salesforce.com/ja/trails/force_com_admin_beginner/modules/starting_force_com

Visualforceの基礎
https://trailhead.salesforce.com/ja/trails/force_com_dev_beginner/modules/visualforce_fundamentals

データモデリング
https://trailhead.salesforce.com/ja/modules/data_modeling

Apex テスト
https://trailhead.salesforce.com/ja/modules/apex_testing

数式と入力規則
https://trailhead.salesforce.com/ja/modules/point_click_business_logic

プロセスの自動化
https://trailhead.salesforce.com/ja/modules/business_process_automation


--------------------------------------------

データモデリング及び管理(12%)


★参考URL

・オブジェクトリレーションの概要
https://help.salesforce.com/articleView?id=overview_of_custom_object_relationships.htm&language=ja&type=0

主従関係
従レコードを削除すると、従レコードはごみ箱に移動しますが、主レコードはそのまま残ります。主レコードを削除すると、関連する従レコードおよび副従レコードも削除されます
デフォルトでは、主従関係でレコードの親を変更することはできません。ただし、システム管理者は、主従関係定義の [親の変更を許可] オプションを選択して、カスタムオブジェクトで主従関係にある子レコードの親を別の親レコードに変更できます。
従レコードおよび副従レコードの [所有者] 項目は使用できません。この項目は、自動的に主レコードの所有者に設定されます。主従関係の従側にあるカスタムオブジェクトでは、共有ルール、共有の直接設定、またはキューを使用できません。これは、共有ルール、共有の直接設定、またはキューには [所有者] 項目が必要なためです。
従レコードおよび副従レコードは、主レコードからセキュリティ設定と権限を継承します。従レコードに独自に権限を設定することはできません。

参照関係
参照項目が省略可能である場合、参照レコードが削除されたときに発生する動作を次の 3 つの中から 1 つ指定できます。
[この項目の値をクリアします]
[参照関係に含まれる参照レコードは削除できません]
[このレコードも削除します]



・積み上げ集計項目
https://help.salesforce.com/articleView?id=fields_about_roll_up_summary_fields.htm&language=ja&type=0

・多対多リレーションの作成
https://help.salesforce.com/articleView?id=relationships_manytomany.htm&type=0&language=ja&release=206.12

連結オブジェクト
2 つの主従関係を持つカスタムオブジェクトです。カスタム連結オブジェクトを使用して、2 つのオブジェクト間の「多対多」リレーションをモデル化できます


・クロスオブジェクト数式項目とは?
https://help.salesforce.com/articleView?id=customize_cross_object.htm&language=ja&type=0

・カスタム項目のデータ型
https://help.salesforce.com/articleView?id=custom_field_types.htm&language=ja&type=0

・プリミティブデータ型
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_primitives.htm

すべての Apex 変数は、クラスのメンバー変数であるかメソッド変数であるかに関係なく、null に初期化されます。


・項目の削除
https://help.salesforce.com/articleView?id=deleting_fields.htm&language=ja&type=0

カスタム項目を削除する前に、参照されている場所を考慮してください。他の場所で参照されているカスタム項目は削除できません。たとえば、項目自動更新や Apex によって参照されているカスタム項目は削除できません。


・データローダガイド
https://developer.salesforce.com/docs/atlas.ja-jp.dataLoader.meta/dataLoader/data_loader.htm
※データローダを使用したデータの挿入、更新、または削除
https://developer.salesforce.com/docs/atlas.ja-jp.dataLoader.meta/dataLoader/inserting_updating_or_deleting_data.htm

外部IDが使えるのはupsertだけ。


★Trailhead

データモデリング
https://trailhead.salesforce.com/ja/modules/data_modeling

数式と入力規則
https://trailhead.salesforce.com/ja/modules/point_click_business_logic

Apex の基礎とデータベース
https://trailhead.salesforce.com/ja/modules/apex_database

アプリケーションのカスタマイズ
https://trailhead.salesforce.com/ja/modules/lex_implementation_customization

Lightning Experience のデータ管理
https://trailhead.salesforce.com/ja/modules/lex_implementation_data_management

データの管理
https://trailhead.salesforce.com/ja/modules/data_management


--------------------------------------------

ロジックとプロセスの自動化(46%)


★参考URL

・数式の演算子と関数
https://help.salesforce.com/articleView?id=customize_functions.htm&type=0&language=ja&release=206.12

PRIORVALUE
NOW
REGEX
IMAGE
HYPERLINK
その他、よく使う数式は抑えておく。


・入力規則
https://help.salesforce.com/articleView?id=fields_about_field_validation.htm&type=0&language=ja&release=206.12

・ワークフロー
https://help.salesforce.com/articleView?id=customize_wf.htm&type=0&language=ja&release=206.12

・承認
https://help.salesforce.com/articleView?id=what_are_approvals.htm&type=0&language=ja&release=206.12
https://help.salesforce.com/articleView?id=approvals_create_recordeditability.htm&type=0&language=ja&release=206.12

レコードは承認申請されるとロックされ、承認プロセス中にユーザがそのレコードを編集するのを防ぎます。編集権限のプロパティを使用して、この承認プロセスでロックされているレコードの編集者を決定します。
管理者のみ...
管理者または...




・Lightning プロセスビルダー
https://help.salesforce.com/articleView?id=process_overview.htm&type=0&language=ja&release=206.12

ワークフローと同じアクションを実行するには、より強力で柔軟になったプロセスビルダーを使用します。プロセスビルダーでは、次のことができます。
・レコードを作成する。
・レコードとその親のみでなく、あらゆる関連レコードを更新する。

・クイックアクションを使用して、レコードの作成、レコードの更新、または活動の記録を行う。
・プロセスを別のプロセスから呼び出す。
・フローを起動する。このアクションはワークフローでスケジュールできません。
・メールを送信する。
・Chatter に投稿する。
・承認申請する。



・使用する自動化ツール
https://help.salesforce.com/articleView?id=process_which_tool.htm&type=0&language=ja

・アクセス修飾子
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_access_modifiers.htm

・Apex クラス定義
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_defining.htm

・Apex クラスと Java クラスの違い
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_java_diffs.htm

内部クラスとインターフェースは、外部クラスの 1 つ下のレベルでのみ宣言できます。
デフォルトのアクセス修飾子は private です。
例外クラス名の末尾には、exception をつける必要があります。
例外クラスは 4 つの暗黙的なコンストラクタが組み込まれていますが、追加することもできます。




・For ループ
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_loops_for.htm

・変数
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_variables.htm

変数は、宣言した後に値で初期化しないと null になります
変数はブロック内のどの場所でも定義でき、その地点から適用されます。サブブロックは、すでに親ブロックで使用されている変数名を再定義できませんが、並行ブロックでは変数名を再利用できます



・sObject 型
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SObjects.htm

・Exception クラスおよび組み込み例外
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_exception_methods.htm

DmlException
LimitException・・・ガバナ制限を超えました。この例外は、キャッチできません。
ListException
NullPointerException
QueryException



・組み込み例外および共通メソッド
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_exception_builtin.htm

・カスタム例外の作成
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_exception_custom.htm

カスタム例外クラスを作成するには、組み込み Exception クラスを拡張して、「MyException」や「PurchaseException」のようにクラス名の最後が Exception で終わるように指定します


・SOQL および SOSL クエリ
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SOQL.htm

SOQL ステートメントは、sObjects のリスト単一 sObject、または count メソッドクエリの Integer を評価します。
SOSLの戻り値は List>



・SOQL および SOSL クエリ結果の処理
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SOQL_working_with_results.htm


・SOQL 集計関数の使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SOQL_agg_fns.htm

・リレーションクエリ制限について
https://developer.salesforce.com/docs/atlas.ja-jp.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_relationships_query_limits.htm

各指定リレーション内で、親-子リレーションの 1 つのレベルだけが 1 つのクエリ内で指定可能です。たとえば、FROM 句が Account を指定している場合、SELECT 句では Contact かそのレベルの他のオブジェクトのみを指定できます。Contact の子オブジェクトを指定することはできません。


・DML ステートメントと Database クラスメソッド
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_dml_database.htm

・Apex DML 操作
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dml_section.htm

・一括 DML 例外処理
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dml_bulk_exceptions.htm

Database DML メソッドの allOrNone パラメータが true に指定されている場合とfalseに指定されている場合の違い



・トランザクションの制御
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_transaction_control.htm

設定した各セーブポイントは、DML ステートメントのガバナ制限にカウントされます。
各ロールバックは、DML ステートメントのガバナ制限にカウントされます


・実行ガバナと制限
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_gov_limits.htm

発行される SOQL クエリの合計数:100
SOQL クエリによって取得されるレコードの合計数:50000
発行される DML ステートメントの合計数:150
DML ステートメントのレコード数:10000



・ガバナ実行制限内での Apex の実行
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_limits_tips.htm

個々の sObject ではなく、sObject のリストに対して DML コールを行うと、DML ステートメント制限に達する可能性が低くなります

SOQL クエリを for ループブロック内に置くと、SOQL クエリが反復ごとに実行されて、100 回というトランザクションあたりの SOQL クエリ数制限を超える可能性があるため、よい方法とはいえません。


・Limits クラス
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_methods_system_limits.htm

Limits メソッドは、メソッドのコール数やヒープサイズの残りの量など、特定のガバナの具体的な制限を返します。
getDMLRows()
getLimitDMLRows()
getDMLStatements()
getLimitDMLStatements()
getQueries()
getLimitQueries()
getQueryRows()
getLimitQueryRows()



・トリガ
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers.htm

・トリガ構文
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_syntax.htm

・トリガコンテキスト変数
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_context_variables.htm

new、newMapの使い方。


・トリガと実行の順序
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_order_of_execution.htm

順番を覚える。
特に、18:データベースコミット後に19:メール送信など、確定後のロジックが実行


・共有の理解
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_bulk_sharing_understanding.htm

with sharing キーワードで定義されていないクラスを介して開始されたトリガは、システムモードで実行されます。この場合、トリガは実行ユーザに特定のアクセス権を要求しません。


・Apex を使用したレコードの共有
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_bulk_sharing_creating_with_apex.htm

すべてのカスタムオブジェクトの共有オブジェクトには次のように名前が付けられています。MyCustomObject はカスタムオブジェクトの名前です。
MyCustomObject__Share


・with sharing または without sharing キーワードの使用
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_classes_keywords_sharing.htm

内部クラスはそのコンテナクラスから共有設定を継承しません。


・匿名ブロック
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_anonymous_block.htm

・DescribeSObjectResult クラス
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_methods_system_sobject_describe.htm

getRecordTypeInfos()
isCreateable()


・DescribeFieldResult クラス
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_methods_system_fields_describe.htm

getPicklistValues()


・Apex Describe Information について
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dynamic_describe_objects_understanding.htm

・項目トークンの使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dynamic_field_tokens.htm

・カスタム設定へのアクセス
https://help.salesforce.com/articleView?id=cs_accessing.htm&language=ja&type=0

{!$Setup.CustomSettingName__c.CustomFieldName__c}


・カスタムデータセットの作成
https://help.salesforce.com/articleView?id=cs_about.htm&language=ja&type=0

カスタム設定データはアプリケーションキャッシュで公開されます。これにより、データベースへのクエリを繰り返し行うコストをかけずに、効率的なアクセスを実現します。さらに、このデータは、数式項目、入力規則、フロー、Apex、SOAP API で使用できます。


・カスタム設定
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_customsettings.htm




★Trailhead

数式と入力規則
https://trailhead.salesforce.com/ja/modules/point_click_business_logic

プロセスの自動化
https://trailhead.salesforce.com/ja/modules/business_process_automation

データ品質
https://trailhead.salesforce.com/ja/modules/data_quality

Apex の基礎とデータベース
https://trailhead.salesforce.com/ja/modules/apex_database

クイックスタート: Apex
https://trailhead.salesforce.com/ja/projects/quickstart-apex

会議管理アプリケーションを構築する
https://trailhead.salesforce.com/ja/projects/salesforce_developer_workshop

データベースと .NET の基本
https://trailhead.salesforce.com/ja/modules/database_basics_dotnet

Apex トリガ
https://trailhead.salesforce.com/ja/modules/apex_triggers

データセキュリティ
https://trailhead.salesforce.com/ja/modules/data_security



--------------------------------------------

ユーザインタフェース(10%)


★参考URL


・PDF ファイルとしての Visualforce ページの表示
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_output_pdf_renderas.htm

<apex:page renderAs="pdf">


・Visualforceを使ってみよう
http://successjp.salesforce.com/blogs/2014/04/visualforce-ef12.html

・静的リソース
https://help.salesforce.com/articleView?id=pages_static_resources.htm&language=ja&type=0

静的リソースにより、アーカイブ (.zip や .jar ファイルなど)、画像、スタイルシート、JavaScript、その他のファイルなど、Visualforce ページ内で参照できるコンテンツをアップロードできます。
apex:image
apex:includeScript
apex:stylesheet


・Visualforce マークアップでの静的リソースの参照
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_resources_reference.htm

・標準コントローラ
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_controller_std.htm

・標準リストコントローラ
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_controller_sosc_about.htm

・カスタムコントローラおよびコントローラ拡張
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_controller.htm

・PageReference クラス
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/apex_system_pagereference.htm

Page.existingPageName
PageReference pageRef = new PageReference('***partialURL***');
PageReference pageRef = new PageReference('***fullURL***')


・Lightning コンポーネントフレームワークとは
https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/intro_framework.htm

Lightning コンポーネントフレームワーク
https://help.salesforce.com/articleView?id=aura_overview.htm&language=ja&type=0



★Trailhead


Visualforce の基礎
https://trailhead.salesforce.com/ja/modules/visualforce_fundamentals

クイックスタート: Visualforce
https://trailhead.salesforce.com/ja/projects/quickstart-visualforce

会議管理アプリケーションを構築する
https://trailhead.salesforce.com/ja/projects/salesforce_developer_workshop

Visualforce と Lightning Experience
https://trailhead.salesforce.com/ja/modules/lex_dev_visualforce

Visualforce Mobile
https://trailhead.salesforce.com/ja/modules/visualforce_mobile_salesforce1

クイックスタート: Lightning コンポーネント
https://trailhead.salesforce.com/ja/projects/quickstart-lightning-components

Lightning コンポーネントの基本
https://trailhead.salesforce.com/ja/modules/lex_dev_lc_basics

取引先の地理位置情報アプリケーションを作成する
https://trailhead.salesforce.com/ja/projects/account-geolocation-app

レストランの位置を示す Lightning コンポーネントを作成する。
https://trailhead.salesforce.com/ja/projects/workshop-lightning-restaurant-locator



--------------------------------------------

テスト(12%)


★参考URL


・Apex 単体テスト
https://help.salesforce.com/articleView?id=code_run_tests.htm&language=ja&type=0

Apex コードの少なくとも 75% が単体テストでカバーされており、かつすべてのテストが成功している。
すべてのトリガについて何らかのテストを行う。



・Apex のテスト
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing.htm

・isTest(SeeAllData=true) アノテーションの使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_seealldata_using.htm

・System クラス
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_methods_system_system.htm

・Apexテストコード作成の落とし穴
http://blogjp.sforce.com/2011/07/apex-04b8.html

・TestVisible アノテーション
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_annotation_testvisible.htm

TestVisible アノテーションを使用すると、テストクラス外にある別のクラスの非公開メンバーまたは保護メンバーにテストメソッドからアクセスできるようになります。


・IsTest アノテーション
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_annotation_isTest.htm

・runAs メソッドの使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_tools_runas.htm

ユーザのレコード共有を強制実行するために、システムメソッド runAs を使用して、コンテキストユーザを既存のユーザまたは新規ユーザに変更するテストメソッドを作成できます。


・Limits、startTest、および stopTest の使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_tools_start_stop_test.htm

Limits メソッドのほかに、startTest メソッドと stopTest メソッドを使用して、コードがガバナ制限にどれくらい近づいているかを確認します。


・テストデータについて
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_data.htm

・Apex テストの実行
https://help.salesforce.com/articleView?id=code_test_execution.htm&language=ja&type=0

・開発者コンソールでのテストの実行
https://help.salesforce.com/articleView?id=code_dev_console_tab_tests.htm&language=ja&type=0

・単体テストメソッドの実行
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_unit_tests_running.htm



★Trailhead


Apex テスト
https://trailhead.salesforce.com/ja/modules/apex_testing



--------------------------------------------

デバッグとリリースツール(10%)


★参考URL

・匿名ブロック
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_anonymous_block.htm

・Salesforce 開発ツール
https://help.salesforce.com/articleView?id=development_tools.htm&language=ja&release=206.7&type=0

・Sandbox の種別およびテンプレート
https://help.salesforce.com/articleView?id=create_test_instance.htm&language=ja&type=0

Developer Sandbox は、隔離された環境での開発とテストを目的
Developer Pro Sandbox は、隔離された環境での開発とテストを目的。より多くの開発および品質保証作業の処理や、インテグレーションテストまたはユーザトレーニングに使用
Partial Copy Sandbox は、テスト環境として使用されることを目的。ユーザ受け入れテスト、インテグレーションテスト、トレーニングなどの品質保証作業。Sandbox テンプレートで定義されている本番組織のデータのサンプルが含まれます
Full Sandbox は、テスト環境として使用されることを目的としています。パフォーマンステスト、負荷テスト、およびステージングをサポートするのは Full Sandbox のみ。Sandbox テンプレートを適用し、Sandbox にテストやその他のタスクに必要なレコードのみが含まれるようにすることをお勧めします。


・種類別 Sandbox ライセンスおよびストレージ
https://help.salesforce.com/articleView?id=data_sandbox_environments.htm&language=ja&type=0

表 2. Sandbox 機能のクイックリファレンス


・Sandbox の作成
https://help.salesforce.com/articleView?id=data_sandbox_create.htm&language=ja&type=0

・Salesforce の機能とエディションの制限
https://help.salesforce.com/articleView?id=limits_general.htm&language=ja&type=0

・Force.com Developer Edition組織について
https://developer.salesforce.com/page/JP:Developer_Edition

・デバッグログ
https://help.salesforce.com/articleView?id=code_debug_log.htm&language=ja&type=0

・デバッグログの設定
https://help.salesforce.com/articleView?id=code_add_users_debug_log.htm&language=ja&type=0

・デバッグログの詳細
https://help.salesforce.com/articleView?id=code_debug_log_details.htm&language=ja&type=0

・デバッグログレベル
https://help.salesforce.com/articleView?id=code_setting_debug_log_levels.htm&language=ja&type=0

レベルは、低いものから順に並べてあります
NONE
ERROR
WARN
INFO
DEBUG
FINE
FINER
FINEST


・Apex コードへのチェックポイントの設定
https://help.salesforce.com/articleView?id=code_dev_console_checkpoints_setting.htm&language=ja&type=0

・[Checkpoints (チェックポイント)] タブ
https://help.salesforce.com/articleView?id=code_dev_console_tab_checkpoints.htm&language=ja&type=0

リストの各チェックポイント
Namespace (名前空間)
Class (クラス)
Line (行)
Time (時間)


・開発者コンソールのログの操作
https://developer.salesforce.com/docs/atlas.ja-jp.198.0.apexcode.meta/apexcode/apex_debugging_system_log_console.htm

・デバッグログ
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_debugging_debug_log.htm

・変更の作成ツールとリリースツールの選択
https://help.salesforce.com/articleView?id=code_tools_ant.htm&language=ja&type=0

・変更点のリリース
https://help.salesforce.com/articleView?id=deploy_overview.htm&language=ja&type=0

変更セット機能を使用するには、リリース接続


・Force.com 移行ツールを使用したリリース
https://help.salesforce.com/articleView?id=code_tools_ant_using.htm&language=ja&type=0

Apache の Ant 開発ツールを使用して Developer Edition または Sandbox を使用している組織から本番組織にメタデータの変更および Apex クラスをファイルベースでリリースする場合は、Force.com 移行ツールをダウンロードします。


・変更セットを使用したリリース
https://help.salesforce.com/articleView?id=code_tools_changesets.htm&type=0

・Force.com IDE を使用した作成およびリリース
https://help.salesforce.com/articleView?id=code_tools_forceIDE.htm&type=0

・変更セット
https://help.salesforce.com/articleView?id=changesets.htm&language=ja&type=0

変更セットを使用すると、Salesforce 組織間でカスタマイズを送信できます

★Trailhead


Apex テスト
https://trailhead.salesforce.com/ja/modules/apex_testing

アプリケーションライフサイクル管理
https://trailhead.salesforce.com/ja/modules/alm_deployment

変更管理
https://trailhead.salesforce.com/ja/modules/app_deployment

Apex と .NET の基本
https://trailhead.salesforce.com/ja/modules/apex_basics_dotnet


--------------------------------------------

以上が、2017/04現在、help、trailheadで参考になりそうなところです。
テキストエディタやExcelなどにコピペすれば勝手にハイパーリンクができると思います。
赤字はここがポイントかな?と思ったところですが、私の勝手な判断なので責任持ちません。

ほかに、ポイントスタディの講座を聴きに行ったり、適当に検索すれば他にも試験対策を書いている方々がいるので、そういったものを参考にするとよいかと思います

--------------------------------------------------------------------------------------

Trailhead、グローバルクイックアクションの作成。のチャレンジ問題について。

https://trailhead.salesforce.com/ja/modules/salesforce1_mobile_app/units/salesforce1_mobile_app_actions_global

Salesforce1 モバイルの基本事項。
グローバルクイックアクションの作成。

このチャレンジ問題で一週間以上足止めもらいました。
たぶん、同じような悩みを持つ人は多いのではないかと思いましたので、ここにメモしておきます。


問題文は以下の通り
------------
Create a Global Action.

Users sometimes want a more detailed way to add new Accounts. In order to make entry of new Account data more flexible, add a new global quick action with a new layout and new default values.

Create a new global quick action labeled 'New Detailed Account' to create an Account record.
Add the Account Name, Type, Rating and Fax fields to the action layout.
Add the new quick action to the global publisher layout.
Set the predefined value of the 'Type' field to 'Prospect'.
------------

問題内容をざっくり日本語で書くと、
------------
・New Detailed Account という名前でグローバルアクションを作る
・グローバルアクションは「レコードの作成」で、対象のオブジェクトは取引先。
・定義済み項目値に、種別を選択して、値はProspectにする。
・グローバルアクションのレイアウト編集で、取引先名、FAX、種別、評価を入れる。
・パブリッシャーレイアウトに、作成したグローバルアクションを設定する。
------------

とすればいいと書いてあるのですが、何度やっても以下のようなエラーメッセージが表示されました。

------------
Challenge Not yet complete... here's what's wrong:
You do not have the correct account fields in the 'New Detailed Account' publisher action layout
------------





回答を以下の動画を参考に日本語でなぞってみてもダメでした。



んで、解決はですね、ハンズオン環境のシステム管理者ユーザの地域の設定で、言語をEnglishにしたら通りました。

2017_03_14_01.jpg

2017_03_14_02.jpg


追記--2017/03/14
オブジェクト固有のクイックアクションの作成 の単元でも同様の現象発生有り。
もうね、練習問題を行うときは、英語設定にしておいたほうがいいみたい。

--------------------------------------------------------------------------------------

このブログについて
  • 全記事一覧(時間順)
  • このブログについて
  • 私のプロフィール
  • 当ブログで扱っている動画について
  • 記事違いなコメントのお返事

  • カテゴリー
    twitter
    カレンダー
    07 | 2017/08 | 09
    - - 1 2 3 4 5
    6 7 8 9 10 11 12
    13 14 15 16 17 18 19
    20 21 22 23 24 25 26
    27 28 29 30 31 - -
    Amazon
    でたらめな当ブログにぴったりな商品を自動で表示するみたいです。



    月別アーカイブ
    プロフィール

    たづみ

    Author:たづみ
    ・1981年生まれの男
    ・もう少し詳細なプロフィールはこちらで

    最新コメント
    アクセスランキング
    [ジャンルランキング]
    日記
    921位
    アクセスランキングを見る>>

    [サブジャンルランキング]
    会社員・OL
    200位
    アクセスランキングを見る>>


    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。