自动执行业务流程
自动操作是可重复使用的组件,可在后台执行某种操作,如更新字段或发送电子邮件。创建自动操作后,将其添加到批准过程、工作流规则中。
字段更新操作允许您自动更新字段值。您可以将字段更新与工作流规则、批准过程关联。
开始之前,检查要更新字段的类型。只读字段(如公式字段或自动编号字段)不可用于字段更新。
流程自动化-工作流操作-字段更新
,然后新建字段更新或编辑某条已有的字段更新记录。这些字段更新记录都可以作为工作流规则、批准过程或其他自动过程的备选字段更新操作。
您可以在新建、编辑工作流规则或新建、编辑批准过程时选择已有字段更新选项或创建新的字段更新操作来与之关联。
对于所有自定义对象和一些标准对象,您可以创建对子表记录的更改会更新相关主表记录上字段的操作。跨对象字段更新可用于自定义对象与自定义对象之间的主表/子表关系、自定义对象与标准对象之间的主表/子表关系以及标准对象与标准对象之间的主表/子表关系。
例如,在自定义招聘应用程序中,创建一个当候选人(子表)接受职位时将应用程序(主表)的状态设为“关闭” 的工作流规则。再比如,创建规则,以便在客户添加个案留言时将个案状态从“等待客户回复”更改为“进行中”。
了解如何在工作流中充分利用字段更新操作,在为工作流规则或批准过程创建字段更新时,请考虑以下事项:
通知操作允许您自动发送工作流通知给指定人员。您可以将工作流通知与工作流规则、批准过程关联。
流程自动化-工作流操作-工作流通知
,然后新建通知或编辑某条已有的通知记录。这些记录都可以作为工作流规则、批准过程或其他自动过程的备选通知操作。
您可以在新建、编辑工作流规则或新建、编辑批准过程,批准步骤时,在各种操作分组中选择已有工作流通知选项或创建新的工作流通知操作。
有新消息到达时,Steedos 在页面右上角显示推送通知提醒,点击推送通知小铃铛图标,可以查看通知中心。
出站消息会将信息发送到指定端点,例如外部服务。您可以从“设置”配置出站消息。您必须配置外部端点并且使用 HTTP API 为消息创建监听程序。您可以将出站消息与工作流规则关联。
流程自动化-工作流操作-出站消息
,然后新建或编辑某条已有的出站消息记录。这些记录都可以作为工作流规则备选操作。您可以在新建、编辑工作流规则时,在各种操作分组中选择已有出站消息选项或创建新的出站消息操作。
出站消息选择了关联应用,使用应用的API密钥解析消息:
// nodejs
const express = require("express");
const router = express.Router();
const jwt = require('jsonwebtoken');
router.post('/api/test', async function (req, res) {
console.log(req.body)
// {
// data: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJvYmplY3RfbmFtZSI6InNwYWNlX3VzZXJzIiwiZG9jIjp7Il9pZCI6IkFGTkVuQ3hiU29HRWc0b2NmIiwibmFtZSI6Inh4eCIsInVzZXJuYW1lIjoieHh4eHh4IiwiZW1haWwiOiJzQHMuY29tIn0sImlhdCI6MTY2OTI2NjA0NiwiZXhwIjoxNjY5MjY5NjQ2fQ.qeld2kTl5zjLGjCWgk3cb6UPEPlqmzMaME20mo_t-t4'
// }
const payload = jwt.verify(req.body.data, 'app_api_secret') // app_api_secret 为应用的API密钥
console.log(payload)
// {
// object_name: 'space_users',
// doc: {
// _id: 'AFNEnCxbSoGEg4ocf',
// name: 'xxx',
// username: 'xxxxxx',
// email: 's@s.com'
// },
// iat: 1669266046,
// exp: 1669269646
// }
res.status(200).send({ message: 'router ok' });
});
exports.default = router;
出站消息未关联应用:
// nodejs
const express = require("express");
const router = express.Router();
router.post('/api/test', async function (req, res) {
console.log(req.body)
// {
// data: {
// object_name: 'space_users',
// doc: {
// _id: 'AFNEnCxbSoGEg4ocf',
// name: 'xxx',
// username: 'xxxxxx',
// email: 's@s.com'
// },
// iat: 1669266046,
// exp: 1669269646
// }
// }
res.status(200).send({ message: 'router ok' });
});
exports.default = router;