表格变量类型

因软件更新较快,部分文档内容与软件最新版本有所出入,请知悉。

【本功能为预览状态,欢迎反馈问题】文档编写中....

表示一个二维数据表。内部为一个System.Data.DataTable对象。

表格变量存储的信息类似于一个包含标题行的Excel工作表,按行存储数据,每一行中的不同列存储一个特定的属性值。


表格大概可以分为两种常见的使用方式:

(1)在Quicker中管理表格中的数据。需要预先定义好列信息(名称、类型、编辑方式等)。

(2)从数据库或CSV、Excel文件中读取和临时使用表格数据,不需要进行更新和管理。这种情况下不需要预先定义列信息。

相关操作模块

通过Quicker管理简单的表格数据

如果需要在动作中管理数据,可以参考本部分内容。

您需要对数据库相关概念有一些了解。

定义表格列信息


查看演示视频

创建或编辑表格变量时,点击“表格设置...”按钮即可打开表格的设置界面。

在表格字段设置窗口中,可以添加、编辑或删除字段(列)。

添加或编辑一个列:

此界面分为两个主要部分,“基础信息”用于设置数据的类型和限制。“编辑设置”用于定义在添加或编辑行的时候所使用的界面(类似于表单模块)。

一些基本的设置参数含义如下:

  • 列名:内部存储数据时的列名(类似于词典的键,在表达式中访问某一列时,需要使用此列名。建议使用英文单词。)
  • 标题:列的显示名。
  • 自动计算公式:用于根据其它列的值自动生成本列的值。 内部对应于c# DataColumn类型的Expression属性。这里直接写计算公式,列名可直接用列名[列名],例如:price * 0.0862price + tax。注意这里不要写quicker的表达式$=...
  • 扩展设置:一些特殊功能支持参数。示例动作
    • image:50 在表格的“查看或编辑数据”窗口中,使用图片显示该列的值(文件路径或网址),image后面的数字表示显示缩略图的宽度。双击缩略图可以查看大图。(v1.43.24+版本支持)
    • link:将单元格的当做路径或网址打开。(1.43.25+版本)
    • link:格式化字符串使用格式化字符串,将单元格的值格式化后得到的结果当做网址或路径打开。格式化字符串中使用{0}表示单元格的值。如: link:https://www.baidu.com/s?wd={0}点击后使用百度搜索单元格的值。(1.43.25+版本)
    • link:sp:子程序名点击后调用子程序,并将当前单元格的值传入input输入参数,将当前行的各属性和值作为词典传入row输入参数中。子程序尽量避免再使用界面交互,以免造成死锁。(1.43.25+版本)


临时存储表格数据

如果不需要对表格数据进行管理,可以不定义表格的列信息。

此时表格仅用于临时存储从其它位置读取的二维数据信息。

加载数据到表格变量

(1)通过表格数据操作模块,读取Excel、csv或json数据。

(2)通过 数据库查询 模块,将查询结果存入表格

遍历表格数据

可以通过“每个”模块循环循环访问表格的每一行。

在“列表”参数中,通过表达式 $= {表格}.Rows传入DataRow的集合。

每次循环,会将一行数据放入“项”输出参数中指定的变量中。

变量可以为词典或对象类型。赋值到词典变量时会进行自动转换,赋值到对象时,内部为DataRow类型。

无论哪种类型,都可以在循环内部使用类似于词典变量的方式(行变量["列名"])获取该行中某一列的信息。

注意事项

  • 表格变量被设计为读取后不会被赋值,只可对其内容进行修改。所以不支持将其它内容赋值给表格变量、不支持通过状态存取等模块将内容放入表格变量。

其它信息

表格作为状态存储时使用JSON格式。

更新历史

  • 20240529 修正拼写错误。
  • 20240905 增加自动计算公式的说明。

反馈与讨论

语雀在语雀上查看