Web サイトでのアクションに応じて、Salesforce マーカー クラウド経由でメールを送信しています。アイデアは、最初に API を介してメールの件名に関連するデータを保存することです。すべてが保存されていることを確認したら、トランザクション メール キューにデータを追加します。問題は、この電子メールがトリガーされたときに、以前にマーカー クラウドに保存されたデータを使用しようとしていることです。しかし、データがまだ利用できない場合があるという問題が発生しました。異なるデータ ストア間の内部転送がトリガーよりも少し遅い可能性があります。
%%[ if @itemsRowCount > 0 then for @a = 1 to @itemsRowCount do var @DE_Image ....
この行は、データがある場合はそのデータをレンダリングし、そうでない場合は無視することを確認しようとしています。
ただし、API からこのエラーが発生します。
The initial end count value for the for loop could not be cast to an integer.
そして、彼らが電子メールで参照しているコード:
for @a = 1 to @itemsRowCount do var @DE_Image
しかし、if はこのエラーをキャッチする必要がありますか? または、他の場合に if ステートメントが真になる可能性はありますか?