【代码块】子表自动新增行同时自动标注序号0CODE.CC-零代码社区轻代码资源社区0CODE.CC-零代码社区轻流专版0CODE.CC-零代码社区0code.cc
0CODE.CC-零代码社区

【代码块】子表自动新增行同时自动标注序号

应用场景

主要应用场景为实现子表字段根据指定数字字段(预设行数)自动增加子表行,同时自动填写序号!

感谢【轻代码】开发者交流群的eden大神提供的代码块代码

20240212140621952-image

 

操作方法

1、建立子表

编辑应用中创建子表,并建立序号字段和辅助行字段

注1:如在已存在的子表中处理则使用你自己的子表,只需要增加字段即可,注意需使用数字字段

注2:序号字段和辅助行字段可以根据需要选择隐藏字段,在编辑字段时勾选在表单中隐藏来增加界面美观度

20240212130721728-image

 

2、建立行数字段

建立一个数字字段,用于输入行数,根据输入的行数自动增加子表行数(如果是做为自动执行项目可选择在右侧隐藏字段来增加表单美观度)

20240212130824805-image

 

3、建立代码块

左侧高级字段中点击代码块,点击代码块设置右侧的代码编译与测试

20240212131301392-image

 

4、输入代码

将代码复制如代码框中

let new_row = qf_field.{需要新增的行$$19A6C9DEC$$} //输入行数
let table = [];
for (let index = 0; index < new_row; index++) {
table.push({
'field_188381601':index+1,  //生成序号,需替换子表ID
'field_188381600':''            //新增行,需替换子表ID
});
}
qf_output = {table}

注1qf_field.{需要新增的行$$19A6C9DEC$$}  替换为一个你要用于输入行数的数字字段

注2:  field_188381601 替换成你子表序号的字段ID (本文中末尾附获取字段ID的方式

注3:field_188381600 替换成你子表的辅助行字段ID(仅用于新增行,所以最终输出的内容也会是空)

 

5、测试及编译

输入字段内容,例如输入7,然后点击测试,显示解析成功后,点击下一步

20240212134144762-image

 

按照截图内容创建别名,注:别名中序号和辅助行的$.内容后面是字段ID,直接从左侧输出内容中复制即可,注意核对与前文获取的字段ID是否一致,填写完成后点击完成。

 

20240212134419899-image

 

6、子表绑定代码块

首先,选中子表,右侧设置中的默认内容改成关联已有表格

20240212135859328-image

接下来目标选择刚刚创建的代码块及代码块的table字段,并在右侧子字段关联中将子表字段与刚刚代码块解析的序号、辅助行字段进行关联。

20240212140020110-image

到这里配置已经完成,可以试试看效果,点右上角保存按钮,然后点重新发布按钮。

返回应用列表也,点右上角的发起新的,在行数字段中输入几,你就会发现子表自动创建了几行,并且序号字段自动生成。

20240212140325719-image

 

子表ID获取方法

1、创建代码块

输入下列代码,将代码中的qf_field.{子表自增行及自动标记序号$$22646B0DE$$} 替换为你自己的子表

let table = qf_field.{子表自增行及自动标记序号$$22646B0DE$$} //替换为你的子表

qf_output = {table}

3、测试内容

下一步,设置表格中随便添加一行内容,然后点确定

20240212133015238-image

最后点击测试

20240212133309751-image

复制留存字段ID,在需要的时候使用,其中存在内容1的就是序号字段(自己填写的的时候应该有留意到),另外一个null是空值的意思。例如我截图当中的序号字段的id是:field_214126967,辅助行字段的ID是field_214126968,保存好后可以点击上一步返回代码输入框,继续完成之前未完成的步骤。

请登录后发表评论