CData Sync V25.3 新機能紹介 Salesforce_Formulas でSalesforceの数式項目の同期を完璧に

by 松本勝成 | October 14, 2025 | Last Updated: October 14, 2025

CData Sync V25.3 新機能紹介 Salesforce_Formulas でSalesforceの数式項目の同期を完璧に

CData Sync V25.3 の新機能である、Salesforce の数式フィールドをレプリケートする際の不便を解消するSalesforce_Formulas 機能についてご紹介します。

データ同期の隠れた課題を解決する

Salesforceのデータ同期において、多くの開発者や管理者が見落としがちな重要な課題があります。
それは数式項目(Formula Fields)の同期です。

今回は、CData Syncが提供する「Replicating Salesforce Formula Fields」機能を使用した、アプローチと実践的な活用方法をご紹介します。

なぜ数式項目の同期は特別な配慮が必要なのか?

通常のフィールドとは異なる振る舞い

Salesforceの数式項目は、標準フィールドと異なり、再計算が行われて値が変化してもSystemModStampが更新されないという特性があります。

このため、従来のSystemModStamp を基準にした差分レプリケーションでは最新の計算結果が同期先に反映されない可能性があり、数式項目の変更を正確に追跡することが困難でした。

CData Syncのソリューション:2つのスキーマアプローチ

今回、この問題を解決するため、CData Sync にSalesforce_Formulas という専用スキーマが追加されました。

1. Salesforceスキーマ(標準フィールド向け)

  • 標準フィールドの増分同期に最適化

  • 高速で効率的なデータ転送

  • Skip Formula Fieldsプロパティで数式項目の包含/除外を制御可能

2. Salesforce_Formulasスキーマ(数式項目専用)

  • 数式項目に特化した完全リフレッシュ方式

  • 常に最新の計算結果を保証

  • 新規追加された数式項目の自動検出と同期

実装方法:ベストプラクティス

Salesforce_Formulasスキーマの活用シーン

タスクを追加または編集する際、Salesforce_Formulasスキーマを選択すると、以下の動作が実現されます:

主な特徴

IDフィールドと数式フィールドのみが利用可能

実行のたびにTruncate & Reload(完全リフレッシュ)

Alter Schemaプロパティ有効時:Salesforceで新規作成された数式項目を自動的に同期対象に追加

推奨される使用ケース

  • 数式の定義が頻繁に変更される環境

  • 常に最新の計算結果が必要な分析用データベース

  • 数式項目の追加・変更を自動的に反映したい場合

Salesforceスキーマでの制御方法

標準のSalesforceスキーマを使用する場合、Skip Formula Fieldsプロパティで柔軟な制御が可能です:

Skip Formula Fields = True → 数式項目を除外(標準フィールドのみ同期)

Skip Formula Fields = False → 数式項目を含める(混合同期)

重要:このプロパティの変更は、Salesforceスキーマにのみ影響し、Salesforce_Formulasスキーマの動作には影響しません。

導入のメリット

  1. データの正確性向上

    数式の変更が確実に同期先に反映され、データの不整合を防ぎます。

  2. パフォーマンスの最適化

    標準フィールドと数式項目を分離することで、それぞれに最適な同期戦略を適用できます。

  3. 自動化による運用負荷軽減

    新規数式項目の自動検出により、メンテナンス作業が大幅に削減されます。

  4. 柔軟な設定オプション

    業務要件に応じて、数式項目の同期方法を細かく制御できます。

CData Sync での設定例

業務要件に応じて、数式項目の同期方法を細かく制御できます。

・Salesforce オブジェクト

サンプルとして、Book オブジェクトのPrice を1.1 倍する数式を持つフィールドを用意します。

Salesforce オブジェクト

CData Sync のタスクでSalesforce_Formulas スキーマから数式が含まれているテーブルを指定します。

CData Sync Salesforce_Formulas スキーマ

追加されたタスクのカラムを見ると、Id と数式カラムが含まれています。

CData Sync タスク カラム

実行します。

CData Sync 実行

同期先のテーブルを確認すると、Salesforce のBook オブジェクトにある数式フィールドの値がレプリケートされていることが確認できます。

CData Sync 実行結果

・Salesforce スキーマとの違い

Salesforce Formulas スキーマのテーブルは、Salesforce スキーマのテーブルにある更新日時(SystemModstamp) に相当するカラムがなく、常に洗い替えとなります。

常に数式フィールドから最新の値を取り込むことにより、Salesforce で再計算が行われた場合でもSalesforceの値を同期先に連携することができます。

実装時のベストプラクティス

推奨構成パターン

  • 高頻度更新環境

    標準フィールド:Salesforceスキーマ(Skip Formula Fields = True)

    数式フィールド:Salesforce_Formulasスキーマ(日次完全リフレッシュ)

  • リアルタイム分析環境

    標準フィールド:Salesforceスキーマ(Skip Formula Fields = True)

    数式フィールド:Salesforce_Formulasスキーマ(高頻度完全リフレッシュ)

  • 大規模データ環境

    標準フィールド:Salesforceスキーマ(Skip Formula Fields = True/False)

    数式フィールド:Salesforce_Formulasスキーマ(重要な数式項目のみ選択)

まとめ

CData Syncの「Replicating Salesforce Formula Fields」機能を活用することで、数式項目同期の課題を解決することができます。

2つのスキーマを使い分けることで、以下を実現できます:

  • ・データの完全性と正確性の保証

  • ・パフォーマンスと効率性の両立

  • ・自動化による運用の簡素化

  • ・ビジネス要件に応じた柔軟な構成

Salesforceのデータ同期でお悩みの方は、ぜひこの機能を活用して、より信頼性の高いデータ基盤を構築してください。