.Net 平台应用与技巧
MRZ图表分组数据源过滤设计示例
平台应用类
OrBit平台Job配置
【序列号规则】插件使用说明
工单自定义流程节点应用说明
平台 【SVN 版本管理】工具使用说明
平台SPC应用介绍
平台WebAPI文件上传、下载(OrBitWebAPI2)
平台【元对象授权】功能使用说明
平台【分级授权】功能使用说明
平台【消息对象】使用说明
平台【表单消息升级】应用说明
平台可配置【 Excel 文件导出】功能使用说明
按产品定义采集功能使用说明
用户自定义编码及系统单据状态、单据类型的颜色配置
系统中如何增加用户密码过期更换提醒
通用在线打印功能使用说明
平台技巧类
MS-SQL 添加并引用 DLL 程序集
OrBit “自定义对话框”使用说明
Matrix标签打印(OrBitMESHelp/OrBitMetaHelp)
MES事务对象Scripter--扩展方法
MES事务帮助类OrBitMESHelp
WebView2管理类--用于展示看板
元对象Scripter--扩展方法
元对象帮助类OrBitMetaHelp
外挂Exc程序(发布为平台插件)---调用自定义对话框
自定义对话框--Xml/Json数据解析神器
OrBit-KanBan File 类型应用说明
OrBit-X 如何支持 Https 协议
OrBit-X 平台 Bartender 标签模板制作说明
OrBit-X 平台元对象多文件上传、预览
OrBit-X 平台内置 WebAPI 使用说明
OrBit-X 应用打包-扩展工具-快捷迁移
OrBit平台“调用摄像头拍照、录制视频,并上传FTP”窗体控件的应用
元对象可配置Excel导入功能应用说明
元对象嵌入看板
基于 Json 数据格式的 Mrt 模板设计说明
如何利用 Bartender 标签模板实现一拖几打印
平台 Excel 对象导入功能应用说明
平台 MES 事务对象实现网格多选效果
平台 WebAPI 应用说明
平台中 Mrz 模板实现钻取功能
平台发布接口(OrBitWebAPI&OrBitWebAPI2)
平台通过 CLR 实现企业微信消息及文件自动推送
标签/报表实现只预览不打印
通过平台 Web 服务实现远端 Wifi 打印说明
静态事务“平铺按钮”控件的应用
静态事务”调用摄像头扫码识别条码(条形码/二维码)“功能的应用与实现
钉钉机器人接口实现及其他API扩展
-
+
首页
平台【表单消息升级】应用说明
# 一、概述 鉴于愈来愈多的表单,都有消息提醒、消息升级的业务场景,如安灯、维修的消息推送、消息升级,维保预警、超期提醒等等,故在结合平台原有的【消息对象】、【系统单据】的基础上,提供一种可快速配置、实现的解决方案。具体如下: 【消息示例】 ![](/media//202403/2024-03-19_151737.png) 【应用场景】 ![](/media//202403/2024-03-21_175535.png) [【附件】OAP.rar](/media/attachment/2024/03/OAP.rar) OAP.rar解压后,包含1个OAP文件、2个excel文件、1个sql文件,先导入OAP更新,再分别在消息对象、系统单据中导入相关数据,最后参照sql文件调用接口的示例(写操作记录、推送消息等)。 # 二、消息对象 消息对象主要用于将各类消息进行分类、归档,支持按照特定的消息模板、多数据源自动填充,具体请参照[**平台【消息对象】使用说明**](http://121.37.203.18:8006/project-7/doc-423/ "消息对象")。 【消息对象】 ![](/media//202403/2024-03-19_143450.png) 【消息发布】 ![](/media//202403/2024-03-19_143608.png) 【消息来源】 ![](/media//202403/2024-03-19_143632.png) # 三、系统单据 **3、1 表单定义 及 消息对象维护** 可按业务表单定义消息对象。 ![](/media//202403/2024-03-19_143842.png) **3.2 单据属性** 维护单据的一些属性信息,如“状态字段”、“单据编号字段”、“升级机制匹配条件”、“列表数据源”等相关配置。 ![](/media//202403/2024-03-19_144120.png) **3.3 状态流规则** 维护单据的业务流程,控制单据状态的流转。 ![](/media//202403/2024-03-19_144647.png) **3.4 升级机制** 维护单据业务的责任人及消息升级机制。 “**用户岗位**”所匹配的用户,代表处理通知对象及处理权限人; “**知会岗位**”所匹配的用户,代表仅推送消息的通知对象; “**消息对象组**”可支持按照升级机制维护各类消息对象,优先级高于表单的消息对象; “**循环次数**”、“循环周期”用于定义循环发送的消息; “**定时时间**”用于定义定时发送的消息 “**反馈状态**” 用于维护需要将处理结果消息反馈给哪个节点的处理人,如维修好之后,告知报修人 ![](/media//202403/2024-03-19_145314.png) # 四、表单消息接口 **4.1 消息主体表类型** 包含业务表单主体信息的**用户自定义表类型** ```sql -- 待推送消息表类型 IF NOT EXISTS ( SELECT 1 FROM sys.types WHERE name = 'AlarmSend_Type' ) CREATE TYPE AlarmSend_Type AS TABLE ( EnterpriseId CHAR (12) NULL , FactoryId CHAR (12) NULL , SiteId CHAR (12) NULL , UrgLevel NVARCHAR (50) NULL , BillState NVARCHAR (50) NULL , EscalationLevelId INT NULL , EscalationLevel NVARCHAR (50) NULL , Timeout INT NULL , Timelong INT NULL , TimelongSec INT NULL , AlarmObjectId CHAR (12) NULL , AlarmCode NVARCHAR (50) NULL , AlarmObjectType NVARCHAR (50) NULL , IsGroup BIT NULL , Cycles INT NULL , TimedAt DATETIME NULL , CycleInterval INT NULL , FlowRecordId CHAR (12) NULL , BillEntityId CHAR (12) NULL , BillNO NVARCHAR (50) NULL , OpUser NVARCHAR (50) NULL , OperationDescribe NVARCHAR (200) NULL , AttachFile NVARCHAR (120) NULL , UserComment NVARCHAR (500) NULL , ToUserIds NVARCHAR (MAX) NULL , EventName NVARCHAR (200) NULL , EventDate DATETIME NULL ) ; ``` **4.2 接口调用示例** ```sql DECLARE @I_ReturnMessage NVARCHAR (MAX) ; EXEC dbo.BillAlarmSend @I_ReturnMessage = @I_ReturnMessage OUTPUT , @BillName = N'' , @BillEntityId = '' , @IsDebug = 0 SELECT @I_ReturnMessage ``` 参数说明: @BillName 业务单据名称,非空时,则只执行此业务单据的消息推送,适用于按表单创建Job进行超时、定时消息推送; @BillEntityId 业务单据Id,非空时,则只处理该张单据的消息推送,适用于实时消息推送; @IsDebug 调试模式标识,为1时,输出各个中间临时表的数据。 # 五、消息队列 启用消息队列,即把提取业务单据消息 与 发送消息的逻辑分离,这样可以缩短消息提取Job的执行耗时,从而确保消息都能被提取到;另外需再配置一个发送消息的Job,定时从消息队列中抽取Top N条待发送的消息去进行推送。 **5、1 启用消息队列参数配置** ![](/media//202403/2024-03-21_140038.png) **5、2 消息队列判定**(若指定单据Id时,则不通过队列发送,而是立即发送) ![](/media//202403/2024-03-21_140110.png) **5、3 若启用消息队列,则不会立即发送消息** ![](/media//202403/2024-03-21_141232.png) **5.4 消息队列接口调用** ```sql DECLARE @I_ReturnMessage NVARCHAR (MAX) ; EXEC dbo.AlarmToNotice @I_ReturnMessage = @I_ReturnMessage OUTPUT -- nvarchar(max) , @AlarmId = '' -- char(12) , @AlarmSendId = '' -- char(12) , @IsHtmlConvertImage = 0 -- bit , @IsDebug = 0 -- bit ``` 【获取Top N参数配置】 ![](/media//202403/2024-03-21_141902.png) 【抽取Top N】 ![](/media//202403/2024-03-21_142314.png) # 六、其他 **注意事项**: 消息汇总以普通消息模板中是否包含“#”为依据,即包含列表数据集合的配置,如 #EqAssetList、#PersonList等 ![](/media//202403/2024-03-22_090802.png) ![](/media//202403/2024-03-22_090910.png) 应用此功能,需具备以下条件: 1、单据属性中,维护了必要属性,如“状态字段”,状态字段用来匹配升级机制; 2、写单据的操作记录(BillStatesFlowRecord),才可以取到每一步的操作时间及其他消息。 ![](/media//202403/2024-03-19_151043.png) 以上内容可供有相关业务场景需求的同事参考。若有任何纰漏之处,请指正。谢谢!
消息升级
定时消息
循环消息
表单升级
消息队列
HG0064
2024年3月22日 09:49
分享
上一篇
下一篇
目录
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
下载Markdown文件