监理公司管理系统 | 工程企业管理系统 | OA系统 | ERP系统 | 造价咨询管理系统 | 工程设计管理系统 | 甲方项目管理系统 | 签约案例 | 客户案例 | 在线试用
X 关闭
OA系统二次开发

当前位置:工程项目OA系统 > 泛普服务体系 > OA系统二次开发

协同OA软件与金蝶K3集成技术方案

申请免费试用、咨询电话:400-8352-114

项目名称: K3标准凭证接口系统
创建者:
 
文档修改纪录
版本 日期 变化描述 修改人
1.0 2013-01-29 ERD KE标准凭证接口系统  
  2013-02-04 添加企业应用图  
       
 

1概述

1.1产品概述

1号店财务总账系统为金蝶K3系统,本次系统的目标为建立一个通用凭证接口系统,未来所有需要和金蝶K3系统对接的系统都通过该凭证接口中间表,自动生成金蝶K3系统的总账凭证。
当前的直接需求来自于泛普OA系统中的费用报销流程、内采请款流程和一般请款流程对接K3系统自动生成凭证的需求。
本接口系统的主要目标是建立:
  1. 对外提供针对中间表的读写接口,接入金蝶K3的其他系统调用写入接口将凭证生成到中间表;金蝶K3调用读取接口将特定状态的凭证转入K3系统,财务确认后将生成K3系统的正式凭证;
  2. 标准凭证接口的中间表,提供凭证查询和错误凭证修改功能。

1.2泛普OA软件相关文档

        

1.3 和其他项目的依赖

项目 ID 项目名称 依赖描述
     
     
 
 

2泛普协同OA软件设计

2.1对现有设计分析


图1 -系统上下文关系图

图2 –费用报销流程导入凭证过程图
 

图3 –金蝶K3系统生成正式凭证流程图
 

2.21号店凭证接口系统架构


2.3泛普软件平台新需求相关的设计

2.3.1表现层的设计

  1. 查询界面设计

 
  1. 点击凭证状态,弹出详情界面:

2.3.2泛普协同管理系统对外接口设计WebService

OA服务接口
http://<线上URL>/oa?wsdl,下面是接口内容,届时将替换成线上地址(具体内容以实际URL服务接口为准)。
<definitions
    targetNamespace="http://impl.voucher.ws.service.finance.backend.yihaodian.com/"
    name="VoucherServiceOAWSImplService">
    <import namespace="http://voucher.ws.service.finance.backend.yihaodian.com/"
       location="backend-finance-service/oa?wsdl=1" />
    <binding name="VoucherServiceOAWSImplPortBinding" type="ns1:VoucherServiceOAWS">
       <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
           style="rpc" />
       <operation name="createVoucher">
           <soap:operation soapAction="" />
           <input>
              <soap:body use="literal"
                  namespace="http://voucher.ws.service.finance.backend.yihaodian.com/" />
           </input>
           <output>
              <soap:body use="literal"
                  namespace="http://voucher.ws.service.finance.backend.yihaodian.com/" />
           </output>
       </operation>
    </binding>
    <service name="VoucherServiceOAWSImplService">
       <port name="VoucherServiceOAWSImplPort" binding="tns:VoucherServiceOAWSImplPortBinding">
          
       </port>
    </service>
</definitions>
 
K3 服务接口
http://<线上URL>/k3?wsdl,下面是接口内容,届时将替换成线上地址(具体内容以实际URL服务接口为准)。
<definitions
    targetNamespace="http://impl.voucher.ws.service.finance.backend.yihaodian.com/"
    name="VoucherServiceK3WSImplService">
    <import namespace="http://voucher.ws.service.finance.backend.yihaodian.com/"
    
    <binding name="VoucherServiceK3WSImplPortBinding" type="ns1:VoucherServiceK3WS">
       <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
           style="rpc" />
       <operation name="getVoucherList">
           <soap:operation soapAction="" />
           <input>
              <soap:body use="literal"
                  namespace="http://voucher.ws.service.finance.backend.yihaodian.com/" />
           </input>
           <output>
              <soap:body use="literal"
                  namespace="http://voucher.ws.service.finance.backend.yihaodian.com/" />
           </output>
       </operation>
       <operation name="setVoucherInfo">
           <soap:operation soapAction="" />
           <input>
              <soap:body use="literal"
                  namespace="http://voucher.ws.service.finance.backend.yihaodian.com/" />
           </input>
           <output>
              <soap:body use="literal"
                  namespace="http://voucher.ws.service.finance.backend.yihaodian.com/" />
           </output>
       </operation>
    </binding>
    <service name="VoucherServiceK3WSImplService">
       <port name="VoucherServiceK3WSImplPort" binding="tns:VoucherServiceK3WSImplPortBinding">
          
       </port>
    </service>
</definitions>

2.3.3泛普软件公司对外接口设计

服务以webservice方式提供给OA和K3系统调用。
提供给K3的服务接口:
获取待生成凭证清单接口:VoucherService.getVoucherList(String  FAIS);
输入参数:FAIS 字符串类型,为K3帐套标志
返回参数:List<VoucherInfo> voucherList 为待生成凭证的凭证清单
生成凭证反馈信息接口:VoucherService. setVoucherInfo(List<VoucherInfo> voucherList);
输入参数:voucherList单据列表。          
返回参数:ReturnInfo 返回消息,code:状态码;message:返回消息
 
提供给OA的服务接口:
生成凭证服务:VoucherService.createVoucher(VoucherInfo voucherInfo);
输入信息:voucherInf待生成凭证信息
返回参数:ReturnInfo 返回消息,code:状态码;message:返回消息
 

2.3.4泛普协同软件表结构的设计


 
Finanace库新增表:
  1. 通用凭证接口表表头:
common_voucher_head:
字段 类型 是否NULL 说明 其它
ID NUMBER(18) N ID 主键
Source VARCHAR2(5) N 来源 来源:如泛普OA、资产管理系统、后台系统等
Doc_Type VARCHAR2(5) N 单据类型  
Doc_NO VARCHAR2(40) N 源单据号  
Doc_ID NUMBER(18) N 源单据ID  
Create_person VARCHAR2(80) N 创建人  
Create_Time DATE N 创建时间  
Update_person VARCHAR2(80) Y 更新人  
Update_Time DATE   更新时间  
FVoucherID VARCHAR2(80) N 某一张凭证的唯一性标志字段  
FAIS VARCHAR2(80) N K3帐套标志,区分不同的帐套  
FDate DATE   凭证日期 1:开0:关
FTransDate DATE   业务日期  
FGroupName VARCHAR2(10)   凭证字  
FReference VARCHAR2(80)   参考信息  
FAttachMents INT   附件数  
FStatus INT   状态 0:待确认
1:待生成凭证
2:已生成凭证
3:生成凭证报错
FErrDesc VARCHAR2(250)   生成凭证报错的信息  
FSerialNum NUMBER(18)   生成凭证的凭证序号  
 
  1. 通用凭证接口表表体:
common_voucher_body:
字段 类型 是否NULL 说明 其它
ID NUMBER(18) N ID 主键
HEAD_ID NUMBER(18) N 表头id  
FEntryID INT   凭证分录号,从1开始,标示出该条记录是该凭证的第几行  
FAccountNumber VARCHAR2(80)   科目代码  
FAccountName VARCHAR2(80)   科目名称  
FCurrencyNumber VARCHAR2(80)   币别代码  
FCurrencyName VARCHAR2(80)   币别名称  
FDC VARCHAR2(1)   借贷方向,D:借;C:贷  
FAmountFor NUMBER(18,4)   原币金额  
FExchangeRateTypeName VARCHAR2(20)   汇率类型  
FExchangeRate NUMBER(18,4)   汇率  
FAmount NUMBER(18,4)   本位币金额  
FSettleTypeName VARCHAR2(80)   结算方式  
FSettleNo VARCHAR2(80)   结算号  
FExplanation VARCHAR2(80)   摘要  
FTransNo VARCHAR2(80)   往来业务编号  
FQty NUMBER(18,0)   数量  
FPrice NUMBER(18,4)   单价  
FUnitName VARCHAR2(80)   计量单位  
FItemList VARCHAR2(250)   核算项目信息 核算项目信息,格式为:核算项目类别,核算项目编码,核算项目名称; 核算项目类别,核算项目编码,核算项目名称…
例如:部门,001,采购部;职员,023,张三
  1. 通用业务变更日志表:
业务变更日志被记录在通用日志接口中,此接口参考通用日志记录接口的ERD
 
  1. 安全验证的key可以存放在财务公用的参数配置表中。
 安全验证采用参数串+key进行MD5加密的方式进行防篡改和身份验证。

2.3.5SQL语句

drop table COMMON_VOUCHER_HEAD cascade constraints;
/*==============================================================*/
/* Table: COMMON_VOUCHER_HEAD                                   */
/*==============================================================*/
create table COMMON_VOUCHER_HEAD
(
   ID                   NUMBER(18)           not null,
   SOURCE               VARCHAR2(5),
   DOC_TYPE             VARCHAR2(5),
   DOC_NO               VARCHAR2(40),
   DOC_ID               NUMBER(18),
   CREATE_PERSON        VARCHAR2(80),
   CREATE_TEME          DATE,
   UPDATE_PERSON        VARCHAR2(80),
   UPDATE_TIME          DATE,
   FVOUCHER_ID          VARCHAR2(80),
   FAIS                 VARCHAR2(80),
   FDATE                DATE,
   FTRANS_DATE          DATE,
   FGROUP_NAME          VARCHAR2(10),
   FREFERENCE           VARCHAR2(80),
   FATTACH_MENTS        INT,
   FSTATUS              INT,
   FERR_DESC            VARCHAR2(250),
   FSERIAL_NUM          NUMBER(18),
   constraint PK_COMMON_VOUCHER_HEAD primary key (ID)
);
comment on table COMMON_VOUCHER_HEAD is
'通用凭证接口表表头';
comment on column COMMON_VOUCHER_HEAD.ID is
'主键';
comment on column COMMON_VOUCHER_HEAD.SOURCE is
'来源:如泛普OA、资产管理系统、后台系统等';
comment on column COMMON_VOUCHER_HEAD.DOC_TYPE is
'单据类型';
comment on column COMMON_VOUCHER_HEAD.DOC_NO is
'源单据号';
comment on column COMMON_VOUCHER_HEAD.DOC_ID is
'源单据ID';
comment on column COMMON_VOUCHER_HEAD.CREATE_PERSON is
'创建人';
comment on column COMMON_VOUCHER_HEAD.CREATE_TEME is
'创建时间';
comment on column COMMON_VOUCHER_HEAD.UPDATE_PERSON is
'更新人';
comment on column COMMON_VOUCHER_HEAD.UPDATE_TIME is
'更新时间';
comment on column COMMON_VOUCHER_HEAD.FVOUCHER_ID is
'某一张凭证的唯一性标志字段';
comment on column COMMON_VOUCHER_HEAD.FAIS is
'K3帐套标志,区分不同的帐套';
comment on column COMMON_VOUCHER_HEAD.FDATE is
'凭证日期';
comment on column COMMON_VOUCHER_HEAD.FTRANS_DATE is
'业务日期';
comment on column COMMON_VOUCHER_HEAD.FGROUP_NAME is
'凭证字';
comment on column COMMON_VOUCHER_HEAD.FREFERENCE is
'参考信息';
comment on column COMMON_VOUCHER_HEAD.FATTACH_MENTS is
'附件数';
comment on column COMMON_VOUCHER_HEAD.FSTATUS is
'0:待确认,1:待生成凭证,2:已生成凭证,3:生成凭证报错';
comment on column COMMON_VOUCHER_HEAD.FERR_DESC is
'生成凭证报错的信息';
comment on column COMMON_VOUCHER_HEAD.FSERIAL_NUM is
'生成凭证的凭证序号';
drop table COMMON_VOUCHER_BODY cascade constraints;
/*==============================================================*/
/* Table: COMMON_VOUCHER_BODY                                   */
/*==============================================================*/
create table COMMON_VOUCHER_BODY
(
   ID                   NUMBER(18)           not null,
   HEAD_ID              NUMBER(18),
   FENTRY_ID            INT,
   FACCOUNT_NUMBER      VARCHAR2(80),
   FACCOUNT_NAME        VARCHAR2(80),
   FCURRENCY_NUMBER     VARCHAR2(80),
   FCURRENCY_NAME       VARCHAR2(80),
   FDC                  VARCHAR2(1),
   FAMOUNT_FOR          NUMBER(18,4),
   FEXCHANGE_RATE_TYPE_NAME VARCHAR2(20),
   FEXCHANGE_RATE       NUMBER(18,4),
   FAMOUNT              NUMBER(18,4),
   FSETTLE_TYPE_NAME    VARCHAR2(80),
   FSETTLE_NO           VARCHAR2(80),
   FEXPLANATION         VARCHAR2(80),
   FTRANS_NO            VARCHAR2(80),
   FQTY                 NUMBER(18,0),
   FPRICE               NUMBER(18,4),
   FUNIT_NAME           VARCHAR2(80),
   FITEM_LIST           VARCHAR2(250),
   constraint PK_COMMON_VOUCHER_BODY primary key (ID)
);
comment on table COMMON_VOUCHER_BODY is
'通用凭证接口表表体';
comment on column COMMON_VOUCHER_BODY.HEAD_ID is
'表头id';
comment on column COMMON_VOUCHER_BODY.FENTRY_ID is
'凭证分录号,从1开始,标示出该条记录是该凭证的第几行';
comment on column COMMON_VOUCHER_BODY.FACCOUNT_NUMBER is
'科目代码';
comment on column COMMON_VOUCHER_BODY.FACCOUNT_NAME is
'科目名称';
comment on column COMMON_VOUCHER_BODY.FCURRENCY_NUMBER is
'币别代码';
comment on column COMMON_VOUCHER_BODY.FCURRENCY_NAME is
'币别名称';
comment on column COMMON_VOUCHER_BODY.FDC is
'借贷方向,D:借;C:贷';
comment on column COMMON_VOUCHER_BODY.FAMOUNT_FOR is
'原币金额';
comment on column COMMON_VOUCHER_BODY.FEXCHANGE_RATE_TYPE_NAME is
'汇率类型';
comment on column COMMON_VOUCHER_BODY.FEXCHANGE_RATE is
'汇率';
comment on column COMMON_VOUCHER_BODY.FAMOUNT is
'本位币金额';
comment on column COMMON_VOUCHER_BODY.FSETTLE_TYPE_NAME is
'结算方式';
comment on column COMMON_VOUCHER_BODY.FSETTLE_NO is
'结算号';
comment on column COMMON_VOUCHER_BODY.FEXPLANATION is
'摘要';
comment on column COMMON_VOUCHER_BODY.FTRANS_NO is
'往来业务编号';
comment on column COMMON_VOUCHER_BODY.FQTY is
'数量';
comment on column COMMON_VOUCHER_BODY.FPRICE is
'单价';
comment on column COMMON_VOUCHER_BODY.FUNIT_NAME is
'计量单位';
comment on column COMMON_VOUCHER_BODY.FITEM_LIST is
'核算项目信息,格式为:核算项目类别,核算项目编码,核算项目名称; 核算项目类别,核算项目编码,核算项目名称…
例如:部门,001,采购部;职员,023,张三';
drop sequence SEQ_COMMON_VOUCHER_BODY;
create sequence SEQ_COMMON_VOUCHER_BODY
increment by 1
start with 1
 nomaxvalue
 minvalue 1
nocycle
 cache 30;
 
drop sequence SEQ_COMMON_VOUCHER_HEAD;
create sequence SEQ_COMMON_VOUCHER_HEAD
increment by 1
start with 1
 nomaxvalue
 minvalue 1
nocycle
 cache 30;
 

2.3.6页面重量的考虑

2.3.7页面缓存的影响

发布:2006-04-23 14:43    编辑:泛普软件 · admin    [打印此页]    [关闭]
相关文章:

泛普OA系统二次开发其他应用

泛普OA商务合同 泛普OA需求调研 泛普OA实施方案 泛普OA项目启动 泛普网络硬件配置 泛普OA部署安装 泛普流程模板表单 OA系统二次开发 泛普常见问题解决 泛普OA操作手册 泛普软件项目验收 泛普培训推广上线 泛普OA售后服务 泛普新闻 泛普期刊 泛普博客