AionClaw处理空数据需区分真空与假空:先用调试模式预览确认,再通过空值处理策略拦截,用[NULL]标记并配合条件分支分流,最后按业务需求静态、关联或计算填充。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当AionClaw执行自动化流程(如读取Excel、解析邮件附件、抓取网页表格)时遇到空数据——比如整列为空、返回空列表、或字段值为None/NaN却未被识别——它不会自动跳过或报错中断,而是可能把空值带入后续步骤,导致生成错误报表、发送空白消息、甚至覆盖原文件内容。
先确认空数据是真空还是假空
第一步:在AionClaw「自动化(RPA)」模块中,运行任务前勾选【调试模式】→点击「执行预览」→观察日志面板中「输入数据源」节点的原始输出内容。
很多所谓“空数据”其实是带不可见字符的伪空:全角空格、零宽空格、换行符、或Excel中看似空白但实际含公式返回的""。AionClaw默认不清洗这些,直接当作有效字符串传给下一步,结果下游判断逻辑失效。
如果预览里显示的是[]、None或nan,才是真空;若显示[" ", ""]这类,就属于假空——必须先清洗再进主流程。
在数据加载阶段拦截并标记空值
进入「自动化(RPA)」→新建流程→拖入「读取Excel」或「获取网页表格」组件后,在其右侧属性栏找到【空值处理策略】下拉菜单:
方法一:选「跳过空行」——仅对纯空行生效,对某列为空但其他列有值的行无效。
方法二:选「填充占位符」→填入[NULL](注意用方括号包裹,这是AionClaw内部识别空值的唯一标准格式)。
【关键前提】必须开启「启用字段类型推断」,否则即使填了[NULL],后续「条件分支」组件也无法识别该字段是否为空。
方法三:选「抛出异常并终止」——适用于强校验场景,比如财务凭证编号绝对不能为空,一空就停,人工介入检查源头。
用条件分支做空值分流处理
第一步:拖入「条件分支」组件,连接上游数据节点。
第二步:点击「添加条件」→字段选择你要判断的列(如「客户名称」)→操作符选「等于」→值填[NULL]。
第三步:将「真」分支连到「记录日志+发送告警」子流程,「假」分支连到「正常处理」主路径。
这一步不能用「为空」或「is null」这类自然语言表达式——AionClaw的条件引擎只认[NULL]字面量匹配。写成""或None会永远走「假」分支,导致空数据悄无声息流入下游。
第四步:在「真」分支里,务必调用「写入本地日志」组件,日志内容模板设为:空值告警|表名:{table_name}|行号:{row_index}|字段:{field_name}。这样后续排查时能快速定位是哪个文件哪一行出了问题。
对空值做业务级兜底填充
当空值允许存在但需补全时,不要依赖Excel或数据库默认值——AionClaw的「填充字段」组件支持三种动态填充方式:
方法1:静态填充。直接输入「未知」或「待补充」,适合分类字段。
方法2:关联填充。点击「从其他数据源获取」→选择已加载的客户主数据表→匹配字段设为「客户ID」→返回字段选「客户等级」。若主数据中该ID对应等级为空,则自动回退到静态值。
方法3:计算填充。在表达式框输入if(is_null(销售额), 0, 销售额)——注意函数名必须小写,且is_null()只接受单字段,不能写is_null(销售额 * 数量),否则报错中断。
填完后立刻点「验证表达式」按钮,绿色对勾出现才算通过。没点验证就保存流程,运行时会因语法错误卡死在该节点,且不提示具体哪行错。

















