凭证生成往来通知单时字段携带配置原创
金蝶云社区-岳朝斌
岳朝斌
2人赞赏了该文章 1,312次浏览 未经作者许可,禁止转载编辑于2022年09月07日 16:09:35
summary-icon摘要由AI智能服务提供

本文档指导如何在星空标准产品中实现将凭证上的值携带到往来通知单上。通过BOS设计器,用户可配置在凭证提交或审核时触发脚本,定义字段映射关系,从而实现值传递。示例展示了如何将凭证上的业务类型、核算维度中的供应商等字段携带到往来通知单的单据头或单据体上,并提供了Python脚本示例和详细解释。此外,还提到了此功能可能存在的不足之处,并鼓励用户反馈以便后续完善。

背景

在星空的标准产品中,凭证生成往来通知单时只携带部分预设字段的值,现如果有需求场景需要携带凭证上的值到往来通知单上。那这份文档也许可以指导你实现你的需求。配置的过程很简单,只要能正常使用BOS设计器就可以完成。

实现思想

凭证生成通知单有两个触发时机(触发时机可以通过内部往来协同参数进行配置),即凭证的提交操作或凭证的审核操作,可以在对应的操作上采用python脚本配置值携带的映射关系,配置完成后,在凭证提交/审核自动生成往来通知单时便会根据配置的值携带映射关系进行数据解析携带,从而实现把凭证上的字段携带到往来通知单上。

实现步骤(下面从几种场景来进行说明)

此处以携带凭证上的业务类型到往来通知单上的业务类型单据头字段为例来进行说明。

1、首先登录BOS设计器,找到凭证,右键,选择扩展

image.png


2、在单据属性区域找到操作列表,如下图

image.png


3、打开操作列表后选择提交操作,也可以选择审核操作,这主要取决于你配置的凭证生成往来通知单的触发时机,当然建议提交操作和审核操作都同步处理。处理流程如下图所示

image.png


通过上图,找到脚本注册界面。脚本名可以任意写,脚本内容见文末附件,然后添加字段的携带映射即可。拷贝进去后如下图。

clr.AddReference('System')
from System import *
from System.Collections.Generic import *

def OnPreparePropertys(e):
	#定义字典
	d = Dictionary[str,str]()
	#前面不可修改[在下面写映射配置]
        #在区域内填写您的业务配置#	

	#后面不可修改[在上面写映射配置]
	this.Option.SetVariableValue('VchFieldKeysToBillFieldKeysMap', d)


字段的携带映射也和简单,一般就是如下样式

d['FVchSourceBillKey']='FSourceBillKey'


其中最关键的一句就是

d['FVchSourceBillKey']='FSourceBillKey'

详细解释:见下图

image.png

只需要修改上图中箭头指向的两个标识,唯一标识的查看参考下图

image.png

凭证单据头或者单据体上的字段携带到往来通知单的单据头上,只要是类型相同,如都是日期字段、或者都是多语言文本字段、或者都是基础资料类型字段(基础资料类型必须相同)、或者都是维度关联字段等等,都可以使用上面的配置方式进行配置从而达到值携带的目的。




下面演示下如何把凭证上的核算维度里面的基础资料,如录入的具体供应商带到通知单的凭证供应商【单据头字段】上

往来通知单上的字段如下图所示

image.png

和前面描述的场景大部分是相同的,唯一的区别是python脚本的书写格式。

此处要完成此携带,你可以这样写脚本(下图中框住的一句)

image.png

语句 d['FVchSupplier'] = 'FDETAILID.FFLEX4' 的详细解释

(1)FVchSupplier 表示 往来通知单单据头 上凭证供应商字段的唯一标识

(2)FDETAILID.FFLEX4的详细解释,其实可以拆分成三部分。

      (2.1)第一部分:  FDETAILID  表示凭证上凭证单据体核算维度字段的唯一标识

      (2.2)第二部分:  .        固定的,不需要进行改动

      (2.3)第三部分:  FFLEX4 表示核算维度的维度列标识,如果要带供应商,就是供应商维度的维度列标识,如果要携带客户的值,就是客 户核算维度的维度列标识

维度列标识如何查询?

找到核算维度基础资料,即可以查看到了,此处需要注意,维度列标识默认是不可见的,需要通过过滤界面显示隐藏列进行勾选,如下图所示

image.png




下面演示如何把凭证分录上的字段携带到往来通知单的对方科目单据体分录字段

往来通知单上的字段如下图所示

image.png

其实和前面两种场景的配置差不多,唯一的区别是python脚本的书写格式。

image.png

语句 d['FEntity.FVchExplanation_S'] = 'FExplanation' 的详细解释

(1)FExplanation 表示凭证分录上摘要字段的唯一标识

(2)FEntity.FVchExplanation_S 的详细解释,其实可以拆分成三部分。

      (2.1)第一部分:  FEntity  表示对方分录单据体的唯一标识,一般不需要修改

      (2.2)第二部分:  .        固定的,不需要进行改动

      (2.3)第三部分:  FVchExplanation_S 表示对方分录  对方分录摘要 字段的唯一标识。

此功能是第一次提供,有可能还有不完善的地方,请留言,后期会评估完善

建议下载附件中的脚本模板



p.rar(0.36KB)

赞 2