この記事の目次
Salesforce APIとは?
Salesforce APIとは、Salesforceにおける「アプリケーション」と「プログラム」をつなぐインターフェースです。 Salesforce APIには種類も豊富にあり、SOAP APIやBulk API、REST APIなどがあります。中でもSOAP APIが業界の中でも一番スタンダードなAPIです。 SalesforceAPIを利用することにより、簡単にデータ連携ができます。データ連携はシステム導入には必要不可欠です。 たとえば、APIを利用することで片方のアプリケーションから数値データを取得し、もう片方のプログラムでそのデータを分析・解析という使い方も可能です。Salesforce Reports and Dashboards API via Apexについて
Salesforce Reports and Dashboards API via Apexは、レポートビルダーで定義したレポートデータにプログラムを利用してアクセスするためのものです。これにより、データへのアクセスと視覚化を大幅に改善できます。 Salesforce Reports and Dashboards API via Apexで実行できることには、レポートデータをカスタムオブジェクトに統合することやレポートデータを豊富な視覚効果に統合、カスタムダッシュボードを作成やレポートタスクを自動化などがあります。 たとえば、APIを利用して毎期ごとの特別賞受賞者のコメントが掲載されているChatter投稿を引き出すことが可能です。Salesforce Reports and Dashboards API via Apexの概要
ここでは、Salesforce Reports and Dashboards API via Apexの概要についてレポートの実行から各種レポートデータの取得、そして要件や制限などを説明します。 下記で紹介する内容を参考に、Salesforce Reports and Dashboards API via Apexへの理解を深めてください。レポートの実行
Salesforce Reports and Dashboards API via Apexで、レポートを同期、非同期に実行可能です。 これは詳細の有無に関係なく可能で、メタデータを設定して絞り込むことも可能です。 たとえばレポートの同期実行をする場合、こちらのコードを使用します。List <Report> reportList = [SELECT Id,DeveloperName FROM Report where
DeveloperName = 'Closed_Sales_This_Quarter'];
String reportId = (String)reportList.get(0).get('Id');
Reports.ReportResults results = Reports.ReportManager.runReport(reportId, true);
System.debug('Synchronous results: ' + results);
レポートメタデータの取得
Reports and Dashboards API via Apexでは、レポートのメタデータを取得できます。 これにより、レポートおよびレポートタイプが何なのかも確認できます。 もしカスタムグラフ視覚効果を作成したい場合、項目や集計などのメタデータ情報を取得し利用しましょう。レポートデータの取得
レポートデータの取得は、ReportResultsクラスで行います。 これによって、ファクトマップを取得できます。 たとえば、抽出対象のレポートからIdを取得および実行し、レポートの最初のダウングルーピングを取得後にファクトマップを取得する際のコードはこちらです。String factMapKey = groupingVal.getKey() + '!T';
Reports.ReportFactWithDetails factDetails = (Reports.ReportFactWithDetails)reportResults.getFactMap().get(factMapKey);
レポートのテスト
Reports and Dashboards API via Apexコードのテストカバー率が必要です。 Apexでのテストの際、SeeAllDataアノテーションは、trueもしくはfalseどちらであっても必然的に無視されます。つまり、レポートの結果にはテストで作成した以外のデータもあります。 もしレポートの結果を制限したい場合、レポートで検索条件を利用しましょう。要件と制限事項
Reports and Dashboards API via Apexは、一般的なAPI制限以外にも制限があります。 具体的には、1時間あたり501回以上はレポートの同期実行を組織で要求できないことや、APIでは一度に21回以上のレポートの同期実行の要求はサポートしていないこと、レポートの実行時にカスタム項目の検索条件は20件まででるというような制限があります。 たとえば、大量のレポートの同期実行をしたい場合は、20回ごとに実行する必要があります。 出典:Apex 開発者ガイド|要件および制限事項 参照:https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_analytics_limitations.htmSalesforceをAPIでさらにスマートに使いこなそう!
Salesforce Reports and Dashboards API via Apexを利用することで、レポートをデータを簡単に統合でき、より機能性に優れかつ迅速なデータ処理ができます。 組織の効率化を図るためにも、APIへの理解を深めましょう。]]>この記事の監修者・著者
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
最新の投稿
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に向いている人の性格・特徴ランキング【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に必要なスキルランキング&スキルアップの方法とは?【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に向いている人の性格・特徴ランキング【現役クリエイター職(ライター・デザイナー・編集)64人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に必要なスキルランキング&スキルアップの方法とは?【現役クリエイター職(ライター・デザイナー・編集)64人が回答】