测试数据:[{"A":"A1","B":"B1","C":"C1"},{"A":"A2","B":"B2","C":"C2"},{"A":"A3","B":"B3","C":"C3"}]
具体表现:当【每个】中存在【表格数据操作】模块时,【每个】模块始终只提取了第一行的数据
错误情况如下:
不要在循环里修改被循环的对象试试。
【每个】模块仍然只输出了第一行调试报告:https://temp.getquicker.net/1144232/dbb665512eb54434b1c4eca891d42a1e.html
动作分享一下我试试
https://getquicker.net/Sharedaction?code=36ede6b2-50de-4ee4-d1e2-08ddd5d225e9
测试了一下,在禁用【表格数据操作】时,【每个】模块工作正常。该异常应该时仅在【表格数据操作】模式为更新行时出现,但令人奇怪的是,如果模式为添加行,会提示集合已修改;枚举操作可能无法执行。 这里的循环内外并未操作同一个表格变量,仅仅是添加行的操作似乎并不应该出现此报错
是因为你赋值给了“表格副本”,但实际上这2个变量指向了同一个对象,相当于直接更新了“表格”变量。 把第一步禁用了,也会没问题了。
但是这里比较反直觉,对于不太明白Quicker底层运行逻辑的用户可能会造成困扰。“赋值”不应该是将值复制到新的对象吗?为什么新的变量其本质仍然是一条指向原有变量的链接,是否有办法解决这一问题?
试试 $= {表格}.Copy()
使用 $= ({表格}.Copy()).Rows 该表达式,【每个】模块按预期成功正常运行。
此问题已解决,建议修改表格变量类型文档中,遍历表格数据一节的表达式用例,以避免其他用户出现此问题
并且在使用 $= ({表格}.Copy()).Rows 的情况下,不对{表格}变量创建副本变量,直接在【每个】内部对{表格}变量执行操作,其表现也仍然正常
好,我试试。