跳到主要内容

表单

开发准备

  • 脚本必须使用ES5以下的语法规则编写
  • 所有内容适用于表单

取值

获取表单信息

用于获取表单信息

dataForm.getDataFormInfo()

输入参数:无

返回内容:

参数类型含义
formCodestring表单code
sheetCodestring原始表单code比如在引用表单里,就是引用的表单code;在正常表单里,就是表单code
dataIdstring数据id
flowIdstring流程id
appItemTypeenum ('GridList''WorkflowList'
formViewTypeenum ('add''view'
isSubFormbool是否是子表
subCodestring子表code
subDataIdstring子表数据Id
formExtensionInfoobject表单扩展信息
CreatorIdstring创建人Id
CurrentActivityCodestring当前流程节点code
CurrentActivityNamestring当前流程节点名称
OUFullNamestring创建人组织机构路径
OUPoststring创建人角色
Originatorstring创建人账号
ParentIdstring创建人的部门Id

返回数据样例:

{

formCode: "7e8c13a1247fbfd3",
sheetCode: "7e8c13a1247fbfd3",
dataId: "8f42c97d-e135-4769-b13c-8030d2243e0b",
flowId: "xxx"
appItemType: "GridList",
formViewType: "edit",
isSubForm: false,
formExtensionInfo:{
CreatorId: "18f923a7-5a5e-426d-94ae-a55ad1a4b239",
CurrentActivityCode: "",
CurrentActivityName: "",
OUFullName: "devzuo",
OUPost: "",

Originator: "devzuo",
ParentId: "18f923a7-5a5e-426d-94ae-a55ad1a4b240"
}
}

获取所有子表对象

dataForm.getAllSubTable()

输入参数:无

返回内容:

参数类型含义
subTablearray当前表单的所有子表对象

返回数据样例:

const subtables = dataForm.getAllSubTable();
subtables.forEach(subtable => {
// `subtable.xxx` 操作子表

});

获取子表对象

dataForm.getSubTable(subCode)

输入参数:

参数类型必填说明
subCodestring子表code

返回内容:

参数类型含义
subtableobject子表对象

返回数据样例:

const subtable = dataForm.getSubTable(subCode);
// `subtable.xxx` 操作子表

获取表单字段的值

dataForm.getDataItemValue(code)

输入参数:

参数类型必填说明
codestring表单字段code

返回内容:

参数类型含义
valuestringnumber

返回数据样例:

const value = dataForm.getDataItemValue(code);

获取业务规则结果

dataForm.getBusinessRuleResult(rule)

输入参数:

参数类型必填说明
rulestring规则字符串

返回内容:

返回一个Promise类型的对象,可以直接通过then来处理正确回调,通过catch来处理错误回调

参数类型含义
Codenumber网络请求的返回码
Statusnumber网络请求的返回状态
Messagestring网络请求的返回信息
Resultstring网络请求的返回值

样例:

dataForm.getBusinessRuleResult(rule).then(res => {
const value = res.Result;
// 数据处理

}).catch(error => {
// 错误处理

});

赋值

设置表单字段的值

dataForm.setDataItemValue(code, value)

输入参数:

参数类型必填说明
codestring表单字段code
valuestringnumberobject

返回内容:无 返回数据样例:无

设置表单下拉框、关联控件字段的赋值

dataForm.setDataItemValue(code,object)

输入参数:

参数类型必填说明
codestring表单字段code
objectobject要设置的值

示例:

// 下拉控件字段赋值
dataForm.setDataItemValue('f_5c4e67ba1f', 'bb5a5281-d7af-4303-b81c-633cb46cc215');

// 关联控件字段赋值
dataForm.setDataItemValue('f_06b0a12dbe', {
name: '陈家玉叉车卸货',
objectId: '6e1adf16-9e96-426e-b535-878d3671e471'
});

返回内容: 无

返回数据样例:无

人员控件字段的赋值

dataForm.setDataItemValue(code,object)

输入参数:

参数类型必填说明
codestring表单字段code
objectobject数组

示例:

dataForm.setDataItemValue("f_ab05d8e2db", [{
ObjectID: '0400a9d8-a396-46dd-9056-d79db3be5823',
Name: '李霞'
},

{
ObjectID: '05e911b7-7543-4c28-bc16-7c86f7be311c',
Name: '孙俊'
}]);

返回内容:无

返回数据样例:无

子表给主表字段赋值

暂未实现

dataForm.setMainTableDataItemValue(code, value)

输入参数:

参数类型必填说明
codestring主表字段code
valuestringnumberobject

返回内容:无

返回数据样例:无

设置可选字段的附属属性

目前只支持option的修改

dataForm.setExtendAttributeByCode(code, key, value)

输入参数:

参数类型必填说明
codestring表单字段code
keystring属性名
valuestring要设置的值

返回内容:无

示例:

this.form.setExtendAttributeByCode('f_xxx', 'option', [  
{ name: '选项一', selectionId: 1 },
{ name: '选项二', selectionId: 2 }
]);

提交表单数据

暂未实现

this.form.submitFormData(participativeIds)

输入参数:

参数类型必填说明
participativeIdsarray下一步审批人Id

返回内容:

返回一个Promise类型的对象,可以直接通过then来处理正确回调,通过catch来处理错误回调

返回数据样例:

const participativeIds = ['xxx', 'yyy'];
this.form.submitFormData(participativeIds).then(res => {
// 正确的回调

}).catch(() => {
// 错误的回调

});

保存子表数据(要校验)

暂未实现 可传入单条数据或多条数据保存

this.form.saveSubTableData(subCode, datas);

保存表单

暂未实现 非流程表单保存

this.form.preserveFormData();

输入参数:

参数类型必填说明

返回内容:

返回数据样例:

重置表单:

暂未实现 非流程表单保存

this.form.resetFormData();

输入参数:

参数类型必填说明

返回内容:

返回数据样例:


规则

隐藏表单字段

dataForm.hideComponentByCode(codes, hide)

输入参数:

参数类型必填说明
codesarray字段code
hidebool是否隐藏,默认false

返回内容:无

返回数据样例:无

隐藏子表列

暂未实现

this.form.hideSubTableColums(subCode, codes, hide)

输入参数:

参数类型必填说明
subCodestring子表code
codesarray子列表字段code
hidebool是否隐藏,默认false

返回内容:无

返回数据样例:无

隐藏表单按钮

this.form.isHiddenButton(titles, hide)

输入参数:

参数类型必填说明
titlesarray按钮名称
hidebool是否隐藏,默认false

返回内容:无

返回数据样例:无


其他

刷新子表

仅刷新子列表而非整个页面的刷新

dataForm.refreshSubTable(subCode)

输入参数:

参数类型必填说明
subCodestring子表code

返回内容:

返回一个Promise类型的对象,可以直接通过then来处理正确回调,通过catch来处理错误回调 返回数据样例:

dataForm.refreshSubTable('xxx').then(res => {  
// 正确的回调

}).catch(() => {
// 错误的回调

});

关闭表单

dataForm.closeView();

输入参数:无

返回内容:无

返回数据样例:无

获取控件

dataForm.getComponentByCode(code)

输入参数:

参数类型必填说明
codestring控件code或者fieldId

返回内容:无

返回数据样例:无