メインコンテンツへスキップ

Salesforceの日付型に対しデータを更新する場合の注意点

Xplentyでは、Date型という型はないため、文字列型もしくはDateTime型で処理されます。 Xplentyで変換を行う場合、以下になります。 例えばCSVファイルをSalesforceへ連携する場合の日付型の扱いについて紹介します。
商談IDクローズ予定日商談名
0062x000005elWKAAY2021/5/11テスト
クローズ予定日は「2021/5/11」となっており、yyyy/M/d形式となっています。 これをSalesforceに入れる場合、XplentyではString型もしくはDateTime型のまま、Salesforceコンポーネントに連携することにより、クローズ予定日を追加もしくは更新することが可能です。

文字列型で連携する方法

Salesforce側のDate型のフィールドにyyyy/M/d形式のまま、データを入れることはできないので、以下のyyyy-M-d形式(もしくはyyyy-MM-dd形式)に変換する必要があります。 2021/5/11 > 2021-5-11 変換式:REPLACE(*クローズ予定日のfield名*,'/','-') 結果:2021-5-11 もし上記のFiledの値がNULLの場合、NULLが返されます。

DateTime型での連携

Salesforce側のDate型のフィールドにDateTime型に変換し、挿入することも可能です。その場合、 変換式:ToDateCustomFormats(*クローズ予定日のfield名*,'yyyy/M/d') 結果:2021-05-12T00:00:00.000Z もし上記のFiledの値がNULLの場合、NULLが返されます。 Xplenty側ではDateTime型のデータをSalesforceに投入時に日付型「2021-05-12」に自動的に変換されるので、問題ありません。

SalesforceのオブジェクトのIDフィールド(AccountIdやOwnerId)に使われるHexstring(16進文字列)型のフィールドを文字列型に変換するには?

Xplentyでは「0052x0000034oJqAAI」のような値を文字列として変数画面で使用した場合、Hexstring(16進文字列)として自動的に扱われます。こうした場合、Chararray関数を使用して文字列型へ変換しようとするとエラーとなってしまいます。 そこでHexstring(16進文字列)の値を文字列型で定義し、パイプラインの条件やSelectコンポーネントで使用したい場合、バックスラッシュを使い「‘[Hexstring文字列]‘」のように定義することで、文字列に変換が可能です。 例)文字列「0052x0000034oJqAAI」を変数で文字列型として定義する場合 '\'0052x0000034oJqAAI\''
最終更新日 2026年7月13日