凭证模型用于定义凭证的数据结构,区分不同凭证类型配置字段属性、功能和权限。
新建元素目前有两种方式:
方式一:通过【元素对象】新建元素

方式二:通过【元素管理】新建元素:

新建时需要选择entity实体字段的层级:
entity实体字段是系统预置字段,与value合并路径字段成对出现,在单体公司核算场景中,value字段作为记账本位币
单实体凭证:可以选择将entity和value字段放在凭证头
多实体凭证:可以将其放在凭证行,以实现在一张凭证中管理多个业务实体
一旦凭证模型保存后,不可再修改字段的层次结构:

如果已经在使用单实体凭证,想要迁移至多实体进行管理,可参考以下方案进行数据迁移:数据迁移方案

第一个tab叫『字段配置』,在此处可以看到凭证模型为预置的头行结构1:N的两张表,凭证头和凭证尾区域的字段来自头表,凭证行区域的字段来自行表
点开凭证头和凭证行旁边的设置icon可以配置数据表编码和名称信息

初始进入页面时展示的所有字段均为系统字段,不可删除;除维度字段需要自行绑定维度外,其他字段的属性均有默认配置,可按情况修改,不修改也不影响保存
点击添加自定义字段
,可以按需增加字段,并为其配置属性
|
字段类型 |
属性 |
|---|---|
|
文本 |
编码、名称、长度 |
|
值列表 |
编码、名称、值列表元素 |
|
维度 |
编码、名称、维度元素 |
|
小数 |
编码、名称、整数长度、小数长度 |
|
整数 |
编码、名称、长度 |
|
用户 |
编码、名称 |
|
日期时间 |
编码、名称 |
预置字段说明:
|
层级 |
编码 |
描述 |
类型 |
说明 |
|---|---|---|---|---|
|
头 |
_main_id |
系统主键 |
文本 |
凭证头表数据的系统主键 |
|
头 |
_account_event |
会计事件 |
文本 |
预留给会计引擎组件使用,暂无相关功能 |
|
头 |
_tag |
标签 |
值列表 |
核算或报表 |
|
头 |
_type |
业务类型 |
值列表 | |
|
头 |
journal_id |
凭证编号 |
文本 |
业务主键 |
|
头 |
journal_name |
凭证名称 |
文本 | |
|
头 |
is_balance |
是否平衡日记账 |
值列表 |
值不为true的凭证,无需进行借贷平衡校验 |
|
头 |
comment_head |
备注 |
文本 | |
|
头 |
scenario |
场景 |
维度 | |
|
头 |
version |
版本 |
维度 | |
|
头 |
year |
会计年度 |
维度 | |
|
头 |
period |
会计期间 |
维度 | |
|
头/行 |
entity |
实体 |
维度 | |
|
头/行 |
value |
合并路径 |
维度 | |
|
头 |
check_status |
校验状态 |
值列表 |
校验功能使用 |
|
头 |
post_status |
过账状态 |
值列表 |
过账功能使用 |
|
头 |
approve_status |
审批状态 |
值列表 |
审批功能使用,暂无相关功能 |
|
头 |
is_reverse |
是否冲销 |
值列表 |
冲销功能使用,暂无相关功能 |
|
头 |
origin_journal_id |
原始单据号 |
文本 |
冲销功能使用,暂无相关功能 |
|
头 |
trx_currency |
交易币种 |
维度 |
外币交易场景使用,暂无相关功能 |
|
头 |
convert_type |
汇率类型 |
文本 |
外币交易场景使用,暂无相关功能 |
|
头 |
convert_date |
汇率日期 |
日期时间 |
外币交易场景使用,暂无相关功能 |
|
头 |
convert_rate |
汇率 |
小数 |
外币交易场景使用,暂无相关功能 |
|
头 |
create_by |
制单人 |
用户 | |
|
头 |
create_time |
制单时间 |
日期时间 | |
|
头 |
approve_by |
审核人 |
用户 |
审批功能使用,暂无相关功能 |
|
头 |
approve_time |
审核时间 |
日期时间 |
审批功能使用,暂无相关功能 |
|
头 |
post_by |
过账人 |
用户 | |
|
头 |
post_time |
过账时间 |
日期时间 | |
|
行 |
_main_id |
系统主键 |
文本 |
凭证行表数据的系统主键 |
|
行 |
journal_id |
系统主键 |
文本 |
联合业务主键,关联凭证头字段 |
|
行 |
line_no |
行号 |
文本 |
联合业务主键 |
|
行 |
account |
科目 |
维度 | |
|
行 |
movement |
变动项 |
维度 | |
|
行 |
comment_line |
凭证行备注 |
文本 | |
|
行 |
trx_debit |
交易币借 |
小数 |
外币交易场景使用,暂无相关功能 |
|
行 |
trx_credit |
交易币贷 |
小数 |
外币交易场景使用,暂无相关功能 |
|
行 |
trx_amount |
发生净额 |
小数 |
外币交易场景使用,暂无相关功能 |
|
行 |
debit |
本币借 |
小数 | |
|
行 |
credit |
本币贷 |
小数 | |
|
行 |
amount |
发生净额 |
小数 |
除了实际表的结构和字段,凭证相关的功能、权限等都是区分凭证类型进行管理的:


针对每个字段可以配置为使用或不使用;字段前的勾选框选中后,会出现切换为使用/不使用的按钮(如果勾选框为灰,则表示该字段强制使用)
自定义字段默认不使用,首次添加自定义字段时需要手工标记为使用
在这里标记为不使用的字段,在该凭证类型创建的凭证模板中不会出现
可配置的字段属性包括:有效性范围、默认值、必填、只读
有效性范围:凭证数据保存时会校验,不可超出有效性范围
默认值:为凭证模板提供默认值、通过接口新增数据时若无值则填充默认值
必填:在凭证模板中强制必填,凭证数据保存时会有非空校验
只读:在凭证模板中强制只读、忽略外部赋值
某些预置字段带有预置逻辑,不允许编辑<必填>和<只读>,会随功能联动,后续在【凭证功能】章节详解
凭证功能用于实现除数据保存外的其他财务功能,例如借贷平衡校验、编码自动生成、过账等。

此处可配置保存前后置及删除前后置逻辑,每个位置可配置多条,顺序执行,前一条报错或is_success=false则中止执行
各节点能选择的逻辑范围不一致,目前支持的选择范围如下
|
逻辑 |
保存前置 |
保存后置 |
删除前置 |
删除后置 |
|---|---|---|---|---|
|
借贷平衡校验 |
✅ |
✅ |
✅ |
❌ |
|
净额计算-借正贷正 |
✅ |
✅ |
❌ |
❌ |
|
净额计算-借正贷负 |
✅ |
✅ |
❌ |
❌ |
|
过账(需启用) |
❌ |
✅ |
❌ |
❌ |
|
校验(需启用) |
✅ |
✅ |
❌ |
❌ |
|
自定义逻辑 |
✅ |
✅ |
✅ |
✅ |
|
··· |
预置规则会影响对应字段的生成规则、必填/只读属性
执行策略说明:
任何情况下均生成:通过页面或接口传入值,将忽略并将其替换为应用预置规则生成的值
仅在值为空时生成:如果通过页面或接口传入值,则将值落库,如果值为空,则应用预置规则生成值并落库
|
规则 |
影响的凭证字段 |
可选执行策略 |
影响字段属性 |
详细配置 |
|---|---|---|---|---|
|
新增数据时记录制单人&制单时间 |
凭证尾: create_by-制单人create_time-制单时间
|
不启用 |
无影响 | |
|
任何情况下均生成 |
强制非必填 | |||
|
仅在值为空时生成 |
强制非必填 | |||
|
新增数据时自动生成凭证编码 |
凭证头&凭证行: journal_id-凭证编号
|
不启用 |
强制必填 | |
|
任何情况下均生成 |
强制非必填 |
由多个规则类型按顺序连接,支持的规则类型见下文 | ||
|
仅在值为空时生成 |
强制非必填 |
由多个规则类型按顺序连接,支持的规则类型见下文 | ||
|
新增凭证行数据时自动生成行号 |
凭证行: line_no行号
|
任何情况下均生成 |
强制必填 |
不可配置,始终采用起始值=1、步长=1的策略自增 |
凭证编码支持的规则类型:
固定值:需填写固定值,如JOURNAL
当前时间:可选择年/年月/年月日的具体样式,例YYYY-MM-DD
随机码:由 0-9a-zA-Z 随机生成,需填写位数,可填写范围1-24
字段信息:允许从头表选择字段
序列:允许从已添加的序列中选择,可开启【固定位数】功能,开启后将按设置的位数生成固定位数的序列值,使用填充字符进行左填充

中断逻辑同逻辑配置
校验逻辑影响凭证头字段的check_status-校验状态字段值,启用校验功能后,该字段:
强制「必填」、「只读」

默认值为false,全部校验逻辑通过后改为true;
执行后如有数据更新,则更新为false,需重新校验
功能开启/关闭,控制凭证模板上的校验按钮是否可用/禁用
用于将凭证模型中的数据保存至对应的财务模型中
可添加多个过账配置
如开启过账功能,则已过账数据不允许修改或删除
过账配置:
编辑名称
删除过账配置
选择目标财务模型
维护目标财务模型字段,选择凭证字段,过账到对应的财务模型维度字段
执行逻辑查看4)过账
过账逻辑影响凭证头字段的post_status-校验状态
post_by-过账人
post_time-过账时间字段值,启用过账功能后:
post_status强制「必填」、「只读」
post_status默认值为false,过账成功后改为true,再取消过账改为false
post_by和post_time强制「非必填」、「只读」
模型层的权限配置实现了从底层对凭证数据、功能进行控制。
凭证模型的权限体系目前分为两块区域:
权限方案:单独不生效,后续在权限配置中配置权限条件后才生效
权限配置:目前有两大权限分类——数据和功能,分类下包含具体的权限项,可以为每个权限项分别配置权限条件,满足条件则拥有该权限,未配置条件或条件不满足则无该项权限

启用后,必须配置用于控制凭证头权限的权限方案元素,并配置权限方案的维度与凭证头字段的映射。
可选择性启用控制凭证行权限的权限方案元素,但目前仅凭证查看的权限支持到凭证行,其他权限项有凭证头权限就有全部凭证行的权限。
关联的权限方案元素可用于:
配置步骤:
选择权限方案元素
权限维度字段映射
权限方案的维度若启用了权限控制,则必须配置映射的凭证字段
凭证头的维度映射只能从凭证头表的维度字段中选择
凭证行的维度映射只能从凭证行表的维度字段中选择
选择的凭证字段关联的维度,必须和权限方案维度是同一个维度元素

|
权限分类 |
权限配置项 |
实际对应权限 |
|---|---|---|
|
数据读写权限 |
凭证管理 |
增、删、改、查 |
|
凭证修改 |
改、查 | |
|
凭证查看 |
查 | |
|
业务功能权限 |
过账 |
过账 |
|
取消过账 |
取消过账 |
每条权限配置项,允许配一个适用条件。
权限条件配置说明
支持单个条件或条件组

条件间关系支持且和或,同一层级的条件间关系只能都是且或都是或

筛选字段:可选 角色/角色组 值列表字段(管理员角色不受 角色/角色组 条件限制,只受 值列表字段 的约束)

操作符:参考
嵌套筛选条件值:参考
嵌套筛选条件【凭证查看】权限支持在凭证头条件的基础上,细化到【凭证行】,其他的只要有凭证头权限就有全部凭证行的权限,如果不配置凭证行的条件,则不会对凭证行额外控制权限,即只要有头权限就有全部行权限。

权限配置目前分为【数据读写权限】和【业务功能权限】两类,可以单独控制是否启用:
未启用,则不控制权限
启用后,则判断具体的【权限配置项】是否满足对应的权限条件
满足:有权限
不满足:无权限,注意管理员角色不受权限条件中角色/角色组的条件限制
未配置条件:普通用户无权限,仅管理员角色有权限
应用在「凭证模板」上,权限控制效果为:
|
实际权限 |
【数据】效果 |
【按钮】效果 | |
|---|---|---|---|
|
数据读写权限 |
无「查」 |
展示无权限页面 |
禁用: |
|
有「查」无「改」 |
展示数据,但输入控件与行操作按钮均禁用 |
禁用: | |
|
有「查」和「改」 |
输入控件正常使用,是否禁用跟随凭证模板的字段配置 | ||
|
业务功能权限 |
过账 |
不满足「允许过账条件」,禁用: | |
|
取消过账 |
不满足「允许取消过账条件」,禁用: |
例1:已过账凭证不允许修改,需要实现打开凭证详情时不允许编辑
需求分析:仅当凭证的过账状态=是时,实际权限为有「查」无「改」,所以可「改」的权限条件为过账状态=否
权限配置:
1. 开启数据读写权限,`凭证管理`和`凭证修改`权限的条件是`过账状态=否`

2. 打开凭证的效果:

例2:多实体凭证,当用户仅有查看权限时,需要控制凭证行的查看权限
权限配置:
1. 凭证行关联权限方案
2. 开启数据读写权限,`凭证查看`中为【凭证行】配置条件
3. 打开凭证的效果:
1. 管理员:能看到所有行(2行)
2. A公司用户:只能看到A公司的
3. B公司用户:只能看到B公司的

不区分凭证类型的配置。
1、支持配置多个复制动作,凭证清单全局按钮和凭证模板按钮可选;
2、除主键等系统字段和凭证功能相关字段外,其余字段均与原凭证相同;
3、权限与凭证新建权限一致。
添加动作:

添加后的动作支持:编辑、删除、复制

配置项说明:
|
配置项 |
可选项 |
选项说明 |
|---|---|---|
|
指定年份、期间 |
复制时选择 |
复制时,用户需在对话框中选择新凭证的年份和期间,用以指定新凭证的 |
|
记录原始单据号 |
开启/关闭 |
新凭证的 |
添加的动作可以在凭证清单全局按钮和凭证模板按钮中使用。
以凭证清单全局按钮为例,展示使用效果:
按钮配置

按钮使用

1、支持配置多个冲销动作,凭证清单全局按钮和凭证模板按钮可选;
2、除主键等系统字段和凭证功能相关字段外,其余字段均与原凭证相同;
3、权限与凭证新建权限一致。
添加动作:

添加后的动作支持:编辑、删除、复制

配置项说明:
|
配置项 |
可选项 |
选项说明 |
|---|---|---|
|
冲销方式 |
红字冲销 |
冲销凭证的 |
|
切换借贷项 |
冲销凭证和原始凭证的 | |
|
指定年份、期间 |
冲销时选择 |
冲销时,用户需在对话框中选择新凭证的年份和期间,用以指定新凭证的 |
|
记录原始单据号 |
开启/关闭 |
新凭证的 |
|
回写原始单据的冲销状态 |
开启/关闭 |
冲销成功后,是否将原始单据的 |
添加的动作可以在凭证清单全局按钮和凭证模板按钮中使用。
以凭证清单全局按钮为例,展示使用效果:
按钮配置

按钮使用


头表字段is_balance-是否平衡日记账:用于标记凭证是否需要进行平衡校验
为true时,触发借贷平衡校验(例如在保存前后置配置借贷平衡校验,则在对应节点触发校验)
为false或不填时,则不执行校验
判断逻辑为
trx_debit-交易币借
trx_credit-交易币贷相等
debit-本币借
credit-本币贷相等
trx_amount-发生净额 =trx_debit-交易币借-trx_credit-交易币贷
amount-发生净额 =debit-本币借-credit-本币贷
根据科目类型和变动类型判定净额计算方向
|
科目类型 |
变动类型 |
计算逻辑 |
|---|---|---|
|
|
|
净额 = 借方 - 贷方 |
|
|
净额 = 贷方 - 借方 | |
|
|
|
净额 = 贷方 - 借方 |
|
|
净额 = 借方 - 贷方 | |
|
其他组合 |
其他组合 |
抛错 |
科目类型说明:凭证行字段account-科目关联的维度元素,其维度成员的科目类型属性

变动类型说明:凭证行字段movement-变动项关联的维度元素,其维度成员的变动类型属性


目前仅支持Python逻辑,返回格式请参考python2.0脚步返回格式V2版

单次弹出的提示信息,同一类型(成功/提示/警告/错误)只会弹出最新的一条


序列为公共配置项,因此单独一个tab在最左侧;所谓公共配置项是说多个业务类型可以共用;
起始值和步长,比如都是1,则序列为1,2,3…
是否循环是说有没有封顶的值,比如说封顶是10,那超过10就从起始值开始循环
是否分组记录序列值:可以选择凭证头和凭证行的字段,如分组字段为Entity,则按Entity的成员有自己的序列值,比如A-1;B-10,每个成员独自计数
回到顶部
咨询热线
