爱招飞帮助手册 爱招飞帮助手册
首页
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 系统工具
    • 系统管理
    • 数据库工具
    • 专用模板
    • 外部功能
    • 开发流程
    • 函数代码
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 报表设计
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • RestAPI
    • WebSocket
  • 学习手册

    • 安装配置
    • 快速上手
    • 程序架构
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 预设资料
    • RestAPI说明
    • WebSocket说明
    • MQTT说明
    • Python说明
    • 自定程序
    • 运行卫士
    • 自动化作业
    • 函数程序
    • 控件使用
  • 开发手册
  • FastERP
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
    • HiDesk
    • HiNAT
    • FastBPM
    • ReportBuilder
首页
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 系统工具
    • 系统管理
    • 数据库工具
    • 专用模板
    • 外部功能
    • 开发流程
    • 函数代码
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 报表设计
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • RestAPI
    • WebSocket
  • 学习手册

    • 安装配置
    • 快速上手
    • 程序架构
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 预设资料
    • RestAPI说明
    • WebSocket说明
    • MQTT说明
    • Python说明
    • 自定程序
    • 运行卫士
    • 自动化作业
    • 函数程序
    • 控件使用
  • 开发手册
  • FastERP
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
    • HiDesk
    • HiNAT
    • FastBPM
    • ReportBuilder
  • FastBPM帮助主页
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 功能用法

      • 用户管理
      • 流程用户
      • 流程设计
      • 工作任务单
      • 任务审批与任务查看
      • 文档管理
      • SO表单
        • 1. 构建数据表结构
        • 2. 构建存储过程
        • 3. 为SO表单设计编号规则
        • 4. 设计SO表单模块
        • 5. 工作流程中引用SO表单
      • 数据监控
      • 企业工作流程服务
    • RestAPI说明
    • 控件使用
    • 函数程序

目录

SO表单

# SO表单

提示

以下内容涉及到模块开发,以下内容仅适用于流程设计开发人员阅读。

  FastBPM 与其他工作流程管理软件相比,特色之处在于可以轻松整合表单的功能,使工作流程与表单建立起更明确的关系,将传统ERP中难以管辖的工作流专用的零散表单纳入列管,使企业的工作流程更符合标准体系规范的要求。

  在标准化规范实施的过程中,通常需要对标准的工作流程内容进行记录,产生纸质的档案,这些内容会贯穿整个产品的生命周期。但是,这些内容往往停留在纸质表面,很难被软件系统利用。因为这些纸质档案很多都是非规格化的内容,且是针对企业生产实际进行设计的,传统的软件系统(ERP)由于没有建立起这些资料数据的关联性,故要将其转化为电脑操作的表单需花费大量时间,操作也相对繁琐。

  FastBPM的出现解决了上述问题。FastBPM来源于FastERP,使用的是相同的开发框架,用户只要熟悉了FastERP的模块开发方法,就能在FastBPM上进行SO表单的开发。以下将介绍在FastBPM上开发一个适用于特定流程的SO表单,并将其与工作流程绑定。

# 1. 构建数据表结构

  制作SO表单的第一步,需要构建SO表单所需的字段。其中部分字段内容是根据SO表单的字段来制定,请自行根据SO表单分析并添加这些字段,以下仅介绍FastBPM中必须要包含的表字段的说明。

  • 主表字段的说明(建议以SO表单编号为表名,特殊符号使用下划线替代,例如这个SO表单的编号为EFO-1702,则表名称可以命名为EFO_1702)
字段名称 数据类型 说明
FInterID varchar(36) 单据ID,主键,建议使用GUID生成
FDate datetime 单据日期,建议不要包含时间信息
FBillID varchar(20) 单据ID,参考流水号设计
FBillNo varchar(50) 单据编号,参考流水号设计
FStatus int 单据状态
0 - 已作废
1 - 草稿
2 - 已审核
3 - 已核准
4 - 已确认
FCreater varchar(50) 单据创建用户
FCreateDate datetime 单据创建时间
FChecker varchar(50) 审核用户
FCheckDate datetime 审核时间
FClosed int 关闭状态, 0 - 未关闭
1 - 已关闭
FApproval varchar(50) 核准用户
FApprovalDate datetime 核准时间
FConfirm varchar(50) 确认用户
FConfirmDate datetime 确认时间
  • 明细表字段的说明(如果有明细表,以下为必要的字段。表名称建议使用SO表单编号_D,以主表的SO表单编号为例,明细表的表名为EFO_1702_D)
字段名称 数据类型 说明
FID varchar(36) 单据明细ID,主键
FInterID varchar(36) 单据ID,外键
FEntryID int 序号
FKey int 对应的工作流实例的ID
FCreatedDate datetime 记录创建日期
FUserName varchar(50) 记录创建用户

# 2. 构建存储过程

  构建存储过程,是为了创建FastBPM单据状态变更的运行逻辑,从而实现单据管控的功能。

  可参考以下实例构建专用的存储过程实例,只需要将其中的 EFO_1702 批量替换为实际的主表名称:

CREATE PROCEDURE [dbo].[sp_EFO_1702]
    @ProcID VARCHAR(10), --处理标识:Check、UnCheck、Revoke、Recover、Delete
    @DataID VARCHAR(50), --数据ID
    @UserID VARCHAR(50)  --用户ID
AS
DECLARE @SkipStatus INT; --状态不对直接跳过,不提示错误
SELECT  @SkipStatus = 0; --不处理这个参数

DECLARE @FReturnFlag INT,
        @FReturnMsg VARCHAR(100);

DECLARE @Status INT,
        @BillNo VARCHAR(30);

--初始化变量
SELECT @FReturnFlag = 1,
       @FReturnMsg = '';

SELECT @Status = FStatus,
       @BillNo = FBillNo
FROM EFO_1702
WHERE FInterID = @DataID;
IF @@ROWCOUNT = 0
BEGIN
    SELECT @FReturnFlag = 0,
           @FReturnMsg = '没有找到单据,可能已被删除!';
END;

BEGIN TRAN tr_EFO_1702;
IF @ProcID = 'Check'
BEGIN
    --审核
    IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已作废,不能审核!';
        RETURN;
    END;
    ELSE IF @Status = 2
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已经审核,不需要再审核!';
        RETURN;
    END;
    ELSE IF @Status = 3
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已核准,不能审核!';
        RETURN;
    END;
    ELSE IF @Status = 4
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已确认,不能审核!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 2,
            FChecker = @UserID,
            FCheckDate = GETDATE()
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据审核时出错!';
    END;

END;
ELSE IF @ProcID = 'UnCheck'
BEGIN
    --消审
    IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已作废,不能消审!';
    END;
    ELSE IF @Status = 1
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据尚未审核,不需要消审!';
    END;
    ELSE IF @Status = 3
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已核准,不能消审!';
        RETURN;
    END;
    ELSE IF @Status = 4
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已确认,不能消审!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 1,
            FChecker = NULL,
            FCheckDate = NULL
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据消审时出错!';
    END;
END;

ELSE IF @ProcID = 'Approval'
BEGIN
    --消审
    IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已作废,不能核准!';
    END;
    ELSE IF @Status = 1
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据尚未审核,不能核准!';
    END;
    ELSE IF @Status = 3
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已核准,不需要核准!';
        RETURN;
    END;
    ELSE IF @Status = 4
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已确认,不能核准!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 3,
            FApproval = @UserID,
            FApprovalDate = GETDATE()
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据核准时出错!';
    END;
END;

ELSE IF @ProcID = 'UnApproval'
BEGIN
    --消审
    IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已作废,不能取消核准!';
    END;
    ELSE IF @Status = 1
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据尚未审核,不能取消核准!';
    END;
    ELSE IF @Status = 2
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已审核,不能取消核准!';
        RETURN;
    END;
    ELSE IF @Status = 4
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已确认,不能取消核准!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 2,
            FApproval = NULL,
            FApprovalDate = NULL
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据取消核准时出错!';
    END;
END;

ELSE IF @ProcID = 'Confirm'
BEGIN
    --消审
    IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已作废,不能确认!';
    END;
    ELSE IF @Status = 1
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据尚未审核,不能确认!';
    END;
    ELSE IF @Status = 2
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已审核,不能确认!';
        RETURN;
    END;
    ELSE IF @Status = 4
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已确认,不需要确认!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 4,
            FConfirm = @UserID,
            FConfirmDate = GETDATE()
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据确认时出错!';
    END;
END;

ELSE IF @ProcID = 'UnConfirm'
BEGIN
    --消审
    IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已作废,不能取消确认!';
    END;
    ELSE IF @Status = 1
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据尚未审核,不能取消确认!';
    END;
    ELSE IF @Status = 2
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已审核,不能取消确认!';
        RETURN;
    END;
    ELSE IF @Status = 3
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已核准,不能取消确认!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 3,
            FConfirm = NULL,
            FConfirmDate = NULL
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据取消确认时出错!';
    END;
END;


ELSE IF @ProcID = 'Revoke'
BEGIN
    --作废
    IF @Status = 2
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已审核,不能作废!';
        RETURN;
    END;
    ELSE IF @Status = 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已经作废,不需要再进行作废处理!';
        RETURN;
    END;
    ELSE IF @Status = 3
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已核准,不能作废!';
        RETURN;
    END;
    ELSE IF @Status = 4
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据已确认,不能作废!';
        RETURN;
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 0,
            FCheckDate = NULL
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据作废时出错!';
        IF @@TranCount > 0
            ROLLBACK TRAN;
    END;
END;
ELSE IF @ProcID = 'Recover'
BEGIN
    --还原
    IF @Status <> 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据没有作废,不能还原!';
    END;

    --更新状态
    IF @FReturnFlag = 1
        UPDATE EFO_1702
        SET FStatus = 1,
            FCheckDate = NULL
        WHERE FInterID = @DataID;
    IF @@ERROR <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据还原时出错!';
    END;
END;
ELSE IF @ProcID = 'Delete'
BEGIN
    --删除
    IF @Status <> 0
    BEGIN
        IF @SkipStatus = 1
            SELECT @FReturnFlag = 1,
                   @FReturnMsg = '';
        ELSE
            SELECT @FReturnFlag = 0,
                   @FReturnMsg = '单据没有作废,不能删除。要删除申请单,请先将单据作废!';
        RETURN;
    END;

    DECLARE @errCount INT;
    SELECT @errCount = 0;

    --更新状态
    DELETE EFO_1702
    WHERE FInterID = @DataID;
    SELECT @errCount = @errCount + @@ERROR;

    IF @errCount <> 0
    BEGIN
        SELECT @FReturnFlag = 0,
               @FReturnMsg = '单据删除时出错!';
    END;
END;

Error:

IF @FReturnFlag = 1
    COMMIT TRANSACTION tr_EFO_1702;
ELSE
BEGIN
    IF @@TRANCOUNT > 0
        ROLLBACK TRANSACTION tr_EFO_1702;
END;

IF @FReturnFlag = 0
    RAISERROR(@FReturnMsg, 16, 1);
GO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493

# 3. 为SO表单设计编号规则

  为SO表单设计的编号规则,可用于在新增SO表单时产生单据编号,用于工作流程间的单据流转记录。

  打开[平台设计]-[流水号设计],其中显示的内容为单据的前缀,日期生成的格式与序号位数。新增对应的记录,编辑编号规则后保存。

# 4. 设计SO表单模块

  1. 打开[平台设计]-[模块设计],进入模块设计画面,点击新建节点,将两个模块分别命名为EFO_1702_L(查询列表)与EFO_1702(编辑框),分别进行设计,关于模块设计的方式请参考FastERP开发流程-列表 与 FastERP开发流程-编辑窗体。

    提示

    请注意,编辑框对应的模块的编号要与主表名称一致。否则后续在流程图使用SO表单时无法定位至目标模块。

  2. 创建菜单,与模块绑定。

# 5. 工作流程中引用SO表单

  当创建完成SO表单后,如需要在工作流程中引用编辑,请按照以下方式来进行操作:

  1. 在工作流程设计阶段引入SO表单。点击[BPM流程管理]-[流程设计],打开流程设计画面。选择要设置添加SO表单的流程,点击[流程表单]标签页。点击[导入表单],打开表单选择框,选择要导入的表单。选择表单的填写频率、与哪个任务稽核点关联后,点击[保存]按钮。

  2. 在流程任务运行时编辑SO表单。当工作流程在运行时,用户可以在附件管理中引入文件列表的文档内容。点击[BPM流程管理]-[待办事项],打开待办事项列表,从中选择打开任务进度对话框。切换至[流程表单]选项卡。点击[编辑表单]按钮,将根据表单编号信息打开对应的模块编辑窗口,可以在此处进行单据编辑操作,编辑完成后点击[保存],退出时,流程中的单据编号信息会更新。

文档管理
数据监控

← 文档管理 数据监控→

Copyright © 2021-2025 爱招飞IsoFace | ALL Rights Reserved
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式