上下文:此流程称为“向案件负责人发送电子邮件”,旨在发送电子邮件通知。然而,有时它找不到用户,操作会被跳过,并且流程结果为“成功”,从而无法检测到错误。我添加了一个在“Applyto every”之后执行的操作,该操作仅在被跳过时运行,以便在团队中发布一条消息,让我知道流程实际上失败了(之前的操作没有返回任何输出,因此跳过后续步骤。 但是,我遇到了跳过上一步时触发的操作的错误,因为它也跳过了此操作!
红色框中的操作应该运行(因为跳过了对每个操作的应用),但它也被跳过了。
我尝试使用条件腿(输出('Buscar Analista')小于1 这不是一个解决方案,因为当将公式应用于输出时,当输出为空时,它也会被跳过。而且它以一种最烦人的方式失败,因为它创建了另一个应用到每个循环。
我还尝试在达到条件之前使用 Compose 变量将其设为纯文本,但也不起作用。
还尝试了“过滤数组”操作和“选择”操作,但由于上述相同原因都失败了。
我添加了一个在“Applytoeach”之后的操作,该操作仅在以下情况下运行 它被跳过了,在团队中发布消息让我知道流程 实际上失败了
根据您的屏幕截图,操作“aplicar a cada uno”(您的 foreach 循环)被标记为绿色复选框,表明它已执行,但是没有找到运行内部循环的记录。 这解释了为什么你的“跳过后运行”不起作用。
解决方案是验证缺席 if 项目是否有条件:
length()
表达式对数组中的项目进行计数或检查空值 - 根据您的条件。下面是一个简单的 dataverse 示例,请注意“列表行”没有返回任何值。你看我们在这里执行“NoRecordsFoundAction”