金蝶EASV75编码规则用户手册.docx

上传人:b****8 文档编号:23758453 上传时间:2023-05-20 格式:DOCX 页数:23 大小:1MB
下载 相关 举报
金蝶EASV75编码规则用户手册.docx_第1页
第1页 / 共23页
金蝶EASV75编码规则用户手册.docx_第2页
第2页 / 共23页
金蝶EASV75编码规则用户手册.docx_第3页
第3页 / 共23页
金蝶EASV75编码规则用户手册.docx_第4页
第4页 / 共23页
金蝶EASV75编码规则用户手册.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

金蝶EASV75编码规则用户手册.docx

《金蝶EASV75编码规则用户手册.docx》由会员分享,可在线阅读,更多相关《金蝶EASV75编码规则用户手册.docx(23页珍藏版)》请在冰豆网上搜索。

金蝶EASV75编码规则用户手册.docx

金蝶EASV75编码规则用户手册

金蝶BOS_V7.5编码规则用户手册

前言

概述

本手册主要介绍金蝶BOS_V7.5编码规则的基本概念、常用功能、典型案例以及详细的界面参数等内容。

本手册的内容可以满足不同层次的使用用户,初学者可以通过本文档迅速掌握编码规则的基本操作过程;熟悉编码规则的编程人员也可以通过阅读本手册进行二次开发。

读者对象

本手册适用于金蝶BOS_V7.5编码规则的应用用户

●测试人员:

熟悉编码规则模块,了解编码规则常用功能。

●开发工程师:

了解业务组件对编码规则集成方案。

约定

本处对文中通用信息作如下约定

●$EAS_HOME表示EAS服务器安装的根目录,即安装过程中输入的本地路径。

●$BOS_HOME表示BOS工具的安装根目录,即安装过程中输入的本地路径。

1编码规则

1.1概念定义

编码:

对于业务管理中的基础资料和业务单据,我们都要用一个唯一的、有意义的标识符来表示,这个标识符,就是编码。

编码规则:

对于同一类型的基础资料和业务单据,我们必须采用统一的编码生成策略进行管理,这个编码生成策略,就是编码规则。

1.2规则定义

进入方法:

系统平台->编码规则->规则定义

编码规则系统流程图

主要属性类别:

●固定值:

标识编码业务对象的含义,可以由用户按自己的设计要求,定义固定值的具体内容:

通常为英文缩写或中文缩写,

例如:

借款单-20051115-001

LRB-20051115-001

●属性值:

用户可以将当前业务对象的属性参与编码。

●系统日期:

用户可以将当前的时间加入到编码中,而且我们可以提供各种不同的时间格式供用户选择。

●系统属性:

用户可以将当前系统属性加入到编码中,例如创建时间,修改时间。

●顺序号:

初始值:

顺序号起始的数值

步长:

业务对象递增编码的顺序号之差

例如:

对于客户编码,初始值为100,步长为10,对于第一个客户编码为Coding00000100,那么第二个客户编码为Coding00000110。

注意:

一般用于编码规则的尾段,目的是为了对应用规则的对象进行计数和相关排序。

●校验码:

检查编码是否存在分隔符以及编码长度是否符合要求。

分9+1和EAN13两种验证码,主要是用来验证长度,而且检验码必须放在分录的最后一行。

2常用功能

2.1编码规则模板导出

功能描述:

对初始库中建立好的编码规则模板进行导出

●目前不支持对编码规则进行导出。

2.2编码规则应用范围优先策略

功能描述:

应用范围优先策略,可以定义在集团内或多组织中使用同一编码规则。

避免重复定义、易于对编码进行管理。

●集团优先:

集团内任何一个组织设定的编码规则均可以被集团内所有组织应用。

●多组织优先:

指定的组织(可以指派多个)均可以使用当前规则。

●组织优先:

指定的组织均可以使用当前规则。

2.3不允许断号、新增显示、新增显示且不允许断号

功能描述:

编码规则使用‘不允许断号’或‘新增显示且不允许断号’时。

可以在‘维护断号’功能中对已回收编码进行维护。

不允许断号:

许多单据的编码是不能有断号,同时也不让随便更改的,这是对编码的一个很强约束的需求,这个需求直接影响到编码规则的实现方式。

应用场景一:

新增显示:

即单据新增时即产生编码,这样的方式不能用在不允许断号的场景,因为新增一个单据时就取了号,用户很可能不会保存这么一个单据,那这个取到号就会丢失,就会产生断号。

应用场景二:

新增不显示:

即单据新增时不取编码,同时这个单据的编码允许断号。

这时候就要定义新增不显示的规则。

应用场景三:

不允许断号:

不允许断号的应用场景就是要求断号约束的编码规则,要满足这种需求,必须在单据保存的时候才去取编码,这样才能保证的不丢失编码,另外,在单据删除时,发现当前启用的编码规则是不允许断号的时候,必须显式的调用编码规则的回收接口来回收当前的这个编码,以备下一次取编码的时候使用。

(1)业务集成”新增显示且不允许断号”需要设置实体扩展属性CRAddNoBreak为true。

(2)通过ICodingRuleManager接口中getRuleStatus方法取得RuleStatus,判断是否为”新增显示且不允许断号”ruleStatus.isAddNoBreak()。

(3)单据上通过readNumber取得临时编码显示。

详见第5章isUseIntermitNumberisUseIntermitNumberisAddView方法

2.4断号维护

功能描述:

编码规则使用‘不允许断号’或‘新增显示且不允许断号’时。

可以在‘维护断号’功能中对已回收编码进行维护。

2.5属性参与编码

功能描述:

如果客户要求根据某个属性来影响单据的编码,这个时候需要将这个属性添加到编码规则的定义中,并做一些相关的设置来实现各种控制,可以将属性包含的下级属性也参与编码。

2.6对生成编码的控制

功能描述:

●分类排序:

单据可能要根据某个属性进行分类并独立的编码,即每个分类从初始值开始编号。

这是一个与单据属性相关的一个需求,所以在编码规则的接口中需要将单据的值对象传入。

●可视性设置:

编码规则可以将属性或时间等信息定义到编码中(例如当前CU的编码作为单据的编码的一部分),作为编码的一段,当客户需要按某个分段进行排序,同时呢,又不需要在编码中显示这个分段,这个时候就应该将属性值的可视性设为不可视。

2.7多适用条件

功能描述:

编码规则的应用条件支持部分指定应用条件,部分不指定,同时还要支持应用条件组合。

要求对发票类型+发票状态进行组合来定义适用条件,就是普通发票的提交状态适用一个编码规则,普通发票的作废状态又要适用一个编码规则,还有增值税发票提交和增值税发票作废状态,都可以分别定义规则。

●不指定属性:

“不指定属性”的编码规则应用于所有未指定属性的场景,例如只为提交状态的发票定义了规则,同时,启用了一个“不指定属性”的规则,那么发票处于作废、暂存等状态时,就会使用“不指定属性”的规则。

●多适用条件:

来源业务实体自由属性且类型为字符类型或枚举类型的字段。

●需要业务和编码规则共同集成。

修改文件W:

\eas\Server\server\lib\client\eas\bs_codingrule-client.jar

CodingRule.properties

文件结构为:

#BF0C040E元数据BOStype

#当设置为true时则使用多适用条件false或者为空时使用单适用条件

BF0C040E=true

业务组建在getNumber和readNumber时需要传入ParmCodingRule参数对象获取多适用条件编码。

通过ParmCodingRule.setBindingPropertyExtendInfo设置多适用条件。

可参考以下代码

BindingPropertyInfobindingPropertyInfo=newBindingPropertyInfo();

BindingPropertyExtendInfobindingPropertyExtendInfo=newBindingPropertyExtendInfo();

bindingPropertyInfo.setProName("effectedStatus");

bindingPropertyInfo.setProValue("EFFECTED");

Listlist=newArrayList();

list.add(bindingPropertyInfo);

bindingPropertyExtendInfo.setList(list);

pcr.setBindingPropertyExtendInfo(bindingPropertyExtendInfo);

this.kDLabel5.setText(CodingRuleManagerFactory.getRemoteInstance().getNumber(info,org,pcr));

详见第5章checkMoreAdapt方法

2.8多应用字段

功能描述:

支持在编码之外的字段使用编码规则,例如名称字段、批号批次字段、出货号等等字段都可能需要采用一定的规则产生编码。

主要应用于预算表的名称,支持获取组织名称、会计期间还有固定值来产生名称的编码规则。

该预算表的编码和名称同时应用编码规则。

房地产的合同号也有相同需求。

●默认支持应用字段为编码(number)

●需要业务和编码规则共同集成。

关于编码规则多应用字段集成

修改配置文件codingruleadape.prperties

放入实体的实现类全路径

BF0C040E=com.kingdee.eas.base.codingrule.util.Test

接口ICodingRuleAdapt

publicinterfaceICodingRuleAdapt{

      /**

       *获取多应用字段

       *@return

       */

      publicListgetAdaptItemList();

}

接口返回的list中必须为多应用item

publicclassAdaptItem{

      privateStringnumber;

      privateStringname_l1;

      privateStringname_l2;

      privateStringname_l3;

      publicStringgetName_l1(){

             returnname_l1;

      }

      publicvoidsetName_l1(Stringname_l1){

             this.name_l1=name_l1;

      }

      publicStringgetName_l2(){

             returnname_l2;

      }

      publicvoidsetName_l2(Stringname_l2){

             this.name_l2=name_l2;

      }

      publicStringgetName_l3(){

             returnname_l3;

      }

      publicvoidsetName_l3(Stringname_l3){

             this.name_l3=name_l3;

      }

      publicStringgetNumber(){

             returnnumber;

      }

      publicvoidsetNumber(Stringnumber){

             this.number=number;

      }

}

测试类写法

publicclassTestimplementsICodingRuleAdapt{

      publicListgetAdaptItemList(){

             AdaptItemitem=newAdaptItem();

             item.setNumber("name");

             item.setName_l2("简体名称");

             item.setName_l3("繁体名称");

             Listlist=newArrayList();

             list.add(item);

             returnlist;

      }

}

效果图

业务组建在getNumber和readNumber时需要传入ParmCodingRule参数对象,获取自定义字段编码。

可参考以下代码

ParmCodingRulepcr=newParmCodingRule();

pcr.setCustomProperty("name");this.kDLabel5.setText(CodingRuleManagerFactory.getRemoteInstance().getNumber(info,org,pcr));

可参考第五章controlCustomProperty方法。

3案例

新增一条凭证新增显示的编码规则,执行凭证的增删改操作

新增一条凭证不允许断号的编码规则,执行凭证的增删改操作

第一步:

实体定义时定义扩展属性:

codingRuleEnabled,将值设为true,然后再构建输出后就能在规则定义的子系统树中定义规则。

第二步:

如果实体的属性要参与编码,需要设置该属性的扩展属性:

isInCode,将值设为true即可。

第三步:

如果要定义某个属性作为编码规则的过滤属性,需要设置该属性的扩展属性isBindingProperty,将值设为true即可。

第四步:

客户端调用:

见框架的FrameWorkUtils的getCodeRuleClient方法:

服务端调用,见框架的DataBaseControllerBean的setNumberFromCodingRule方法

4提供给用户的接口

方法

备注

StringaddNew(CodingRuleInfocodingRuleInfo)

增加一个新的编码规则对象,参数为待插入的编码规则对象

StringgetNumber(IObjectValuebizObject,Stringorg,ParmCodingRulecustomProperty)

获取编码

Booleanupdate(CodingRuleInfocodingRuleInfo)

更新一个编码规则对象,参数为待插入的编码规则对象

Booleandelete(CodingRuleInfocodingRuleInfo)

删除一个编码规则对象,参数为待插入的编码规则对象

BooleandeleteByNumber(Stringnumber)

删除指定number的编码规则

CodingRuleInfogetCodingRule(IObjectValuebizObject,Stringorg)

获取编码规则对象

CodingRuleInfogetCodingRuleByNumber(Stringnumber)

获取指定number的编码规则对象

CodingRuleInfogetCodingRuleByName(Stringname)

获取指定name的编码规则对象

String[]getBatchNumber(IObjectValuebizObject,CodingRuleInfocodingrule,intcount)

用满足指定条件的编码规则对象生成指定的数量的编码返回

String[]getBatchNumberFromInitialValue(IObjectValuebizObject,Stringorg,Stringbindingproperty,StringcustomString,intcount)

从初始值开始批量取一组编码-

StringgetSimulateNumber(CodingRuleInfocodingruleinfo)

获取满足指定条件的编码规则对象生成的模拟编码

StringsumLength(CodingRuleInfocodingruleinfo)

获取满足指定条件的编码规则对象的编码长度

StringreadNumber(IObjectValuebizObject,Stringorg,Stringbindingproperty,StringcustomString)

读取满足指定条件的编码规则对象的生成编码只读

booleanhasCuscomString(IObjectValuebizObject,Stringorg)

满足指定条件的编码规则对象中是否包含有自定义段

StringgetNonbreakNumber(IObjectValuebizObject,Stringorg)

获取非中断的编码即不允许断号存在的编码

booleanisUserSelect(CodingRuleInfocr)

是否用户选择

booleanisExist(CodingRuleInfocr)

是否存在指定条件的编码规则对象

RuleStatusgetRuleStatus(IObjectValuebizObject,Stringorg,Stringbindingproperty,ParmCodingRulecustomPro)

获取规则的各种状态

booleanisUseIntermitNumber(CodingRuleInfocr)

指定的编码规则是否启用断号支持功能

booleanisUseIntermitNumber(IObjectValuebizObject,Stringorg,Stringbindingproperty)

指定的编码规则是否启用断号支持功能

booleanisAddView(CodingRuleInfocr)

是否是新增显示

booleanrecycleNumber(IObjectValuebizObject,Stringorg,Stringnumber)

回收号码到指定条件的编码规则对象中

IntermilNOCollectiongetIntermitNumbers(IObjectValuebizObject,Stringorg)

获取满足指定条件的编码规则对象的断号集合

CollectiongetPropertyCollection(StringbosType,StringpropertyName)

获取某业务实体的指定属性的值集合

String[]getSortItems(IObjectValuebizObject,Stringorg)

获取指定编码规则的分类排序集合只包括属性值类型

String[]getProperties(IObjectValuebizObject,Stringorg)

获取规则中为属性值类型的编码分录的集合

booleanhasTemplate(CodingRuleInfocodingruleInfo)

是否定义了规则模板

booleanhasMaxValue(CodingRuleInfocodingruleInfo)

是否含有最大值

enabledCodingRule(Stringid)

启用其中指定的编码规则

disabledCodingRule(Stringid)

禁用指定的编码规则

booleanisModifiable(CodingRuleInfocr)

生成的编码是否可修改

StringgetCurrentAppOUID(IObjectValuebizObject)

根据当前业务对象的扩展属性获取当前业务对象的当前应用组织单元

booleancheckModifiedNumber(IObjectValuebizObject,Stringorg,Stringnumber)

检查编码是否可修改

booleanisDHExist(IObjectValuebizObject,Stringorg)

判断是否存在断号

controlCustomProperty(CodingRuleInfoinfo)

控制自定义字段编码规则

CodingRuleCollectioncheckMoreAdapt(CodingRuleInfoinfo)

多适用条件

controlCustomProperty(CodingRuleInfoinfo)

控制自定义字段编码规则

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 其它语言学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1