You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AWS AppFlow同步至Salesforce遇JSON解析错误求助

问题分析

错误JSON_PARSER_ERROR: Cannot deserialize instance of boolean from VALUE_STRING value f(完整信息应为无法从字符串值"True"反序列化为布尔类型),根源是Redshift UNLOAD导出的CSV中,布尔值True以字符串"True"形式存储,而AWS AppFlow同步到Salesforce时,Salesforce的布尔字段要求接收**布尔类型值(小写true/false)**或等效数字(1/0),字符串格式的"True"无法被解析为布尔类型,导致同步失败。

解决方案

修改Redshift的UNLOAD查询语句,将布尔值转换为Salesforce兼容的格式,以下两种方案任选其一:

方案1:输出小写布尔字符串

把查询中的True替换为小写的字符串'true',AppFlow会自动将其识别为布尔值:

UNLOAD(
'select 
    contact_id,
    999 contact_score,
    ''true'' contact_is_genius
from 
    salesforce.some_table')
TO 's3://your-target-bucket/prefix/'
FORMAT CSV
IAM_ROLE 'arn:aws:iam::your-account-id:role/your-redshift-unload-role'
HEADER
DELIMITER ','
CLEANPATH;

方案2:输出数字表示布尔值

Salesforce支持用1代表true,0代表false,也可以用数字形式输出:

UNLOAD(
'select 
    contact_id,
    999 contact_score,
    1 contact_is_genius
from 
    salesforce.some_table')
TO 's3://your-target-bucket/prefix/'
FORMAT CSV
IAM_ROLE 'arn:aws:iam::your-account-id:role/your-redshift-unload-role'
HEADER
DELIMITER ','
CLEANPATH;
验证步骤
  • 执行修改后的UNLOAD语句,将数据导出到S3
  • 查看S3中的CSV文件,确认contact_is_genius列的值为true或1
  • 重新运行AWS AppFlow同步任务,检查是否成功更新Salesforce对象

内容的提问来源于stack exchange,提问作者AIViz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 19:09:27