EAS财务会计二次开发指南 - 图文

更新时间:2023-09-28 02:46:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

财务会计二次开发指南

修改日期 2008.3.20 版本 Beta 修改人 陈剑平 备注 编写

背景说明

由于客户要根据各自公司的业务特点进行二次开发等一系列满足公司业务发展需求。该文档主要从凭证引入webservice接口和自定义核算项目新增,两个方面进行二次开发的问题汇总。

自定义基础资料生成核算项目

1) 建立自己基础资料,并在实体assistanthg加一个关联属性关联该基础资料,并在

T_BD_AssistantHG加相应字段(如物料)

2) 在基础资料上加一个扩展属性isAsstAcctType=true

3) 在基础资料上加一个扩展属性defaultF7Query

4) 如果想按公司过滤就在defaultF7Query中加“company.id”属性

5) 如果是基础资料分组的在分组的连接属性上加扩展属性isLinkedToGroupEntity=true

WebService接口文档说明

1.

EAS发布的 webService 接口

2. 功能规划

1、 如需调用凭证接口,必需先要登录EAS,先期需要调用 EASLogin 登录 EAS

EASLogin 发布

1、 发布 EASLogin 客户端

2、 点击 EASLogin(wsdl),获取其 wsdl 地址

3、 制作 bat 文件,利用第三方包,发布登录客户端代码,调用语句如下:

java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java http://192.168.16.13:6888/ormrpc/services/EASLogin?wsdl

4、 第三方apache包

5、 代码解释:java –Djava.ext.dirs=lib org.apache

lib 是包放置的文件夹名

EASLogin 代码调用

1、 调用的各所需参数

2、 所需参数:

* @param slnName eas * @param language 语言 * @param dcName 数据中心 * @param dbType 数据库类型 * @param userName 用户名 * @param password 密码

* @param authPattern 验证方式 默认 \,其它认证方式KEY可从easAuthPatterns.xml中获取

3、 参数说明

a) 查看EASLogin(wsdl),有两个接口,

i. 传参6个,此方式不提倡使用。为保证原有功能,服务端最后也会调

传参7个的方法,第7参数自动调用\

传参7个,如调用此方法,则需要查询easAuthPatterns.xml 文档

L3 繁体中文

ii.

b) 解决方案:eas

c) 语言:L2 简体中文

d) 服务器地址 + 端口:组合成 URL

e) 数据库类型:0 SQL Server 1 Oracle 2 DB2 f) authPattern 验证方式

i. ii.

默认 \

easAuthPatterns.xml 文档路径

iii.

easAuthPatterns.xml 文档说明

4、 做一个javaBean 类,把此参数 set 到此javaBean 类中

5、 登录代码

a) 登录

b) 登录实现

3. 凭证引入接口

1) importVoucher(凭证引入)

1、 凭证引入接口,两个接口方法都可用,且用法一致

2、 凭证 webService 接口生成客户端,可参考 EASLogin 方法

3、 凭证引入参数:importVoucher(wsvoucher[], int isVerify, int isCashflow)

? 传参数第1个:WSWSVoucher[] 普通对象数组,见构造EAS凭证字段以及含

义说明

? 传参数第2个:isverify

0 不核销,暂存

1 核销,暂存 2 不核销,提交

3 核销,提交

? 传参数第3个:isImpCashflow

是否引入现金流量 0 不引入 1 引入

4、 凭证引入代码调用说明

5、 返回值String[][]

是一个长度为凭证数,宽度是5的字符串数据

宽度的定义:外部系统凭证号,凭证字,会计年度,会计期间,处理信息,异常信息,金蝶凭证号

2) 凭证引入原版文档如下

一. “凭证引入”技术方案

其他业务系统数据,传输到EAS系统服务器,通过凭证引入“webservice接口”,转化为EAS数据。

其他业务系统内的资金流动信息,实时地、非人工干预的传递到EAS系统,以财务凭证的形式,转化为EAS系统内的财务信息。

二. “凭证引入”技术规范

EAS系统提供WebService 服务,以及产生EAS财务凭证的接口,供其他业务系统调用。

WebService 服务:金蝶在EAS系统上发布WebService服务,提供wsdl文件供客户端下载,其他业务系统根据下载的wsdl文件,产生客户端。

EAS财务凭证的接口产生的客户端,分为两部分(java客户端举例) (1) 协议类,包名 localhost.bosws.services.WSWSVoucher

协议类用于获得金蝶在EAS系统上发布WebService服务接口。本用例中为其

他业务系统内的资金流动信息产生EAS财务凭证的接口。

(2) JavaBean类,包名 wsvoucher.client

JavaBean类提供接口需要的参数。本用例中为EAS财务凭证需要的信息。

三. “凭证导入接口”调用说明

? 接口:importVoucher(wsvoucher[], int isVerify, int isCashflow)

?

传参数第1个:WSWSVoucher[] 普通对象数组,见构造EAS凭证字段以及含义说明

? 传参数第2个:isverify

0 1 2 3

不核销,暂存 核销,暂存 不核销,提交 核销,提交

?

传参数第3个:isImpCashflow

是否引入现金流量 0 不是 1 是

四. 构造EAS凭证字段以及含义说明如下: WSWSVoucher 说明:一张凭证占据的行数 = 凭证行*分录行*辅助账行 字体黑色:凭证头字段;深蓝:分录行字段; 橙色:辅助账字段;紫罗兰:现金流量 单元格颜色:灰色 必录项 ;浅青绿:辅助账核算项目(科目多核算项目,最多8个);浅绿:现金流量 字段名 类型 中文说明 是否必录 说明 格式 companyNumber String bookedDate bizDate periodYear periodNumber voucherType attaches description voucherNumber entrySeq voucherAbstract accountNumber String String int int String int String String int String String 公司编码 记账日期 业务日期 会计期间-年 会计期间-编码 凭证字(凭证类型) 附件数量 参考信息 凭证号 分录行号 摘要 科目 币种 汇率 方向 原币金额 数量 计量单位 单价 借方金额 贷方金额 制单人 是 是 是 是 是 是 否 否 是 是 否 是 是 否 是 是 否 否 否 是 是 是 录入公司编码,必须在EAS中有该编码 凭证的登账日期 业务发生日期 必须在EAS中有 必须在EAS中有 凭证类型中文名称,必须在EAS中有 凭证唯一区别 当前凭证的分录唯一区别 分录摘要 分录行科目编码,必须在EAS中有 分录行币别编码,必须在EAS 2005-11-1 2005-11-1 2005 11 记 1 1 1001.01 currencyNumber String localRate entryDC originalAmount qty measurement price debitAmount creditAmount creator double int double double String double double double String 001 中有 本位币汇率:没有时默认为1 1.01 分录行方向:1 借方 -1贷方 分录行原币金额 分录行数量 名称,必须在EAS中有 分录行单价 分录行借方金额:分录方向为借方时必录 分录行贷方金额:分录方向为贷方时必录 当前操作人员名称,必须在EAS中有 吨 徐晓霞 poster auditor asstSeq bizNumber settlementNumber settlementType cussent asstActType1 asstActNumber1 asstActName1 asstActType2 asstActNumber2 asstActName2 asstActType3 asstActNumber3 asstActName3 asstActType4 asstActNumber4 asstActName4 asstActType5 asstActNumber5 asstActName5 asstActType6 asstActNumber6 asstActName6 asstActType7 asstActNumber7 asstActName7 asstActType8 asstActNumber8 asstActName8 itemflag oppAccountSeq primaryItem String String int String String String int String String String String String String String String String String String String String String String String String String String String String String String String int int String 过账人 审核人 辅助账行号 业务编号 结算方式 结算号 核销/挂账 核算项目1 核算对象编码1 核算对象名称1 核算项目2 核算对象编码2 核算对象名称2 核算项目3 核算对象编码3 核算对象名称3 核算项目4 核算对象编码4 核算对象名称4 核算项目5 核算对象编码5 核算对象名称5 核算项目6 核算对象编码6 核算对象名称6 核算项目7 核算对象编码7 核算对象名称7 核算项目8 核算对象编码8 核算对象名称8 现金流量标记 对方科目分录号 主表项目 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 是 是 是 当前操作人员名称,必须在EAS中有 当前操作人员名称,必须在EAS中有 当前凭证的当前分录的辅助 账行唯一区别 默认为0, 名称,必须在EAS中有。比如:客户、 编码,必须在EAS中有。比如:客户A的编码 名称,必须在EAS中有。比如:客户A 以下:取决于科目是否核算多个项目,最多8个 如引入现金流量,必设置为1 EAS中必存在的主表项目 客户 01.01 客户A supplyItem primaryCoef supplyCoef cashflowAmountOriginal cashflowAmountLocal cashflowAmountRpt String int int double double double 附表项目 主表系数 附表系数 现金流量原币金额 现金流量本位币金额 现金流量报告币金额 否 否 否 是 是 是

2. 接口说明:

将正确的符合条件的凭证引入到系统中,作为暂存凭证或者提交状态的凭证,错误的和不符合条件的凭证给与提示,不引入到系统。 3. 如果引入核销记录

那么每一张凭证中,需要有往来科目,自动设置核销分录 4. 如果引入现金流量

那么普通对象数组中,也存放现金流量数组,数组中的对象也是WSWSVoucher, 与凭证行的区分标记是:itemFlag字段描述 0 不是现金流量 1 是现金流量 5. 返回值 String[][]

是一个长度为凭证数,宽度是5的字符串数据

宽度的定义:外部系统凭证号,凭证字,年度,期间,处理信息,异常信息,金蝶凭证号

1. 凭证号: 第3方系统自身产生的凭证号 2. 凭证字: 第3方系统自身产生的凭证字 3. 年度: 第3方系统自身产生的会计年度 4. 期间: 第3方系统自身产生的会计期间 5. 处理信息:

6. 异常信息isVerify:应该是EAS在保存凭证时产生的异常,如校验不通过产生的提

示信息等。 7. 金蝶返回凭证号:EAS产生的凭证号,用于回填FreightNet系统的。 8. 处理信息的定义:0000 成功 其他处理信息见后面

5.处理方法: 将正确的符合条件的凭证、核销记录、现金流量引入,返回的信息包含全部内容; 有问题的凭证,只返回凭证号和错误信息定义

6. 参数信息描述

WSWSVoucher 一行 是一个凭证对象或者 是一个现金流量对象 凭证对象行包括:凭证行、分录行、辅助账行,itemFlag = 0 现金流量行包括:凭证号、分录号、现金流量行,itemFlag = 1

在对象传入时,请顺序传入:

比如共有5行记录,3行是凭证对象行,2行是现金流量行,那么格式如下

凭证号 分录号 … 辅助账 … 现金流量(对方科目分录号) … 流量标记 1 1 1 2 1 3 1 1 3 1 2 3

7. 其他处理信息:

1000 没有凭证数据传入

1001 根据传入的组织编码找不到组织 1002 根据传入的科目编码找不到科目 1003 根据传入的币别编码找不到币别

1004 根据传入的登账日期找不到合适的期间 1005 根据传入的凭证类型名称找不到凭证类型 1006 所引入凭证币别,不属于本科目币别核算值 1007 没有找到核算项目 1008 制单人不能为空

1010 凭证没有找到过账人

1111 其他异常:如保存失败,网络异常等

2001 根据编码没有取得现金流量项目 3001 没有权限新增凭证

3003 登账日期和期间不匹配

3008 组织单元的报告币折算方式没有选取 3100 凭证引入重复 3101 参考消息重复

4001 本位币借贷不相等。 4002 报告币借贷不相等。

4003 凭证类型与分录科目不匹配:{0}({1})

4004 第{0}条分录的第{1}条辅助账必须录入结算方式。

4005 第{0}条分录的第{1}条辅助账非银行科目不允许录入结算方式。 4006 第{0}条分录缺少科目。

4007 同一凭证不允许同时包含表内科目与表外科目。

4008 第{0}条分录的科目带自定义属性或核算项目,但没有辅助账。 4009 第{0}条分录的原币金额不等于辅助账原币金额之和。 4110 第{0}条分录的本位币金额不等于辅助账本位币金额之和。 4111 第{0}条分录的报告币金额不等于辅助账报告币金额之和。 4112 凭证的会计期间不能早于当前会计期间。 4113 分账制,凭证头币种不能为空。

4114 第{0}条分录科目“{1}”的核算币别与分录币别“{2}”不一致。 4115 会计期间不能为空。 4116 凭证类型不能为空。

0 0 0 1 1

4117 公司不能为空。

4118 第{0}条分录缺少币别。

4120 第{0}条分录缺少借贷方向。

4121 第{0}条分录的第{1}条辅助账行缺少核算项目组合。 4122 凭证的借方本币与凭证行不符。 4123 凭证的贷方本币与凭证行不符。 4124 凭证的借方报告币与凭证行不符。 4125 凭证的贷方报告币与凭证行不符。 4126 凭证头的行数量与凭证行不符。

4128 第{0}条分录的第{1}条辅助账行缺少必录的自定义属性。 4129 凭证应该至少存在两条分录。

4130 第{0}条分录的科目“{1}”不是明细科目。 4131 第{0}条分录的科目“{1}”已被禁用。 4132 该凭证必须录入现金流量。

4161 该凭证不存在或已经被删除,不能进行这项操作。 4162 凭证的会计期间不能早于当前会计期间。

4300 第{0}条分录是核销分录但没有设置核销标志。 4301 第{0}条分录不是核销分录但设置了核销标志。

4400 第{0}条分录的第{1}条辅助账是核销记录但没有设置对应的往来账记录。 4401 第{0}条分录的第{1}条辅助账不是核销记录但设置了对应的往来账记录。 4501 凭证有错误:{0} 4800 4302 4109 4666

每张凭证至少应该有一条分录。 第{0}条分录缺少摘要。

第{0}条分录的币别与凭证头的币别不一致。 第{0}条分录的数量、金额不能全都为0。

4667 第{0}条分录第{1}条辅助账的数量、金额不能全都为0。

4898 第{0}条分录为往来科目,但它的第{1}条辅助账缺少到期日。 4900 现金流量项目{0}已经被禁用!

4980 第{0}条分录科目所属公司与凭证所属公司不一致。 4345 记账日期不能为空。 4346 业务日期不能为空。 4347 凭证类型不能为空。 4355 输入的凭证编码重复

4. 凭证查询、校验、删除接口

“凭证查询”接口说明

findVoucher(String comNumber, int year, int periodNumber) ? 输入:公司代码、期间年(2006)、期间月(7 ), ? 输出:凭证字、凭证号、参考消息

? 输出类型: String[], 以“,”组合,需要拆分。

? 默认查询条件:所查凭证来源系统必须为“基础系统”(查询的是先前从webService中引入的凭证,才是基础系统) ? 返回类型:String[]

#0001 未找到公司

#0002 未找到期间

正确结果 转账, 0001, FLY20060701001

“凭证校验”接口说明

checkVoucher( String comNumber, int year, int periodNumber, String messageNumber, double localAmount)

? 输入:公司代码、期间年、期间月、参考消息、本位币金额 ? 输出:金蝶凭证号 ? 输出类型: String

? 默认查询条件:所查公司,必须是财务实体组织 ? 返回类型:String

#0001 未找到公司 #0002 未找到期间

#1001 未找到符合条件的凭证 正确结果 凭证号

“凭证删除”接口说明

deleteVoucher(String companyNumber, String period, String voucherNumber, String fexp ) 参数: String companyNumber \ 公司编码 String period \ 期间 String voucherNumber \凭证号

String fexp \参考消息

返回类型:int

0 成功 10001 10003 10005 10006

10000 公司编码不能为空

未找到公司编码 10002 期间输入格式不正确 凭证号不能为空 10004 参考消息不能为空 未找到此凭证或凭证已被删除 凭证删除失败

本文来源:https://www.bwwdw.com/article/mcmd.html

Top