未按预期处理 Null 值和空值
适用于:
- Workday 写回
- SAP SuccessFactors 写回
| 故障排除 | 详细信息 |
|---|---|
| 问题 | 你已成功配置写回应用。 你从 Microsoft Entra ID 获取的值为 null 或为空。 你期望预配服务清除 HR 应用中的相应电子邮件或电话号码值。 但该操作失败。 |
| 原因 | 预配服务没有适用于处理 null 值的默认逻辑。 当预配服务从源应用获取空字符串时,它会尝试将值“按原样”传递给目标应用。 如果 Workday 或 SuccessFactors 无法处理空值,则会返回错误。 |
| 分辨率 | 按照建议更新属性映射以使用表达式映射。 |
建议的解决方法
假设映射到 SAP SuccessFactors 属性 telephoneNumber 的属性 businessPhoneNumber 在 Microsoft Entra ID 中可能为 null 或为空。
选项 1:使用 IIF、IsNullOrEmpty、Coalesce 或 IsPresent 等函数定义用于检查空值或 null 值的表达式,并传递一个非空的文本值(示例:本例中为 000-000-0000)。
IIF(IsNullOrEmpty([telephoneNumber]),"000-000-0000",[telephoneNumber])选项 2:使用函数 IgnoreFlowIfNullOrEmpty 在发送到 SuccessFactors 的有效负载中删除空属性或 null 属性。
IgnoreFlowIfNullOrEmpty([telephoneNumber])