登陆注册
4865700000030

第30章 价值链会计信息交换系统开发案例(1)

这时,我终于知道我应该去做什么。——史蒂夫·乔布斯

本章将给出一个开发案例,以解决在价值链相关企业的异构系统之间如何通过数据接口进行会计信息交换的问题。这一接口系统遵循前述《接口标准》(以下简称《标准》)和现行会计制度与会计准则,面向跨企业的计算机会计信息系统之间的数据交换应用。本章的读者范围主要是开发人员特别是会计软件用户单位的二次开发人员,但是一般会计人员也可从中得到关于跨企业交换会计信息的有益的启示。

第一节 系统调查、分析与总体设计

一系统调查——案例单位会计信息系统基本情况

东都集团是一家服装企业,其价值链关联企业有东都时装设计公司、东都模特经纪公司、东都服装职业技术学院、多家制衣厂以及众多自有品牌加盟店。由于历史原因,制衣厂采用综合企业管理软件Master ERP(一种早期ERP软件),而其他企业使用用友U8 ver8.6管理软件。该公司利用用友U8 ver8.6作为价值链虚拟企业会计信息整合平台,这样就需要从Master ERP系统中转出数据到U8 ver8.6。U8 ver8.6支持《信息技术——会计核算软件数据接口》,即可转入符合该《标准》的会计数据文件,但是Master ERP的输出文档并不符合《标准》的要求。这就需要在这两者之间开发一个中间接口程序,使Master ERP输出的数据文件转化为符合《标准》的数据文件。

Master ERP与U8 ver8.6的数据结构存在较大差异,以记账凭证为例,通过下列数据字典清除反映两者的数据结构

二 数据接口系统的数据流程图

该中间接口的工作流程,自读取Master ERP数据文件开始,经检验和转换,生成标准数据文件,以供U8 ver8.6接收并转入。

三 数据库设计

该接口系统没有自身专门的会计数据,但是由于需要对两个外部系统的数据进行转换,因此系统数据库主要是解决两个外部系统数据接口差异信息的对照存取,如下表中的“对应系统代码”和“对应系统名称”。具体转换时,系统将根据这些差异信息决定如何转换。此外,系统必须访问接口两端的两个系统,因此还要设计系统对两个外部数据库的访问方法和规则的设计。数据库系统平台仍然采用与Master ERP相同的数据库系统即MS SQL server。

(一) 基本信息对照数据表结构

(二) 基本信息数据表的SQL脚本

1.创建机构部门表(fibranch)

CREATE TABLE [dbo].[fibranch] (

[number] [varchar] (10) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[name] [char] (30) COLLATE

Chinese_PRC_CI_AS NULL,

[chief] [char] (8) COLLATE Chinese_PRC_CI_AS NULL,

[address][char] (40) COLLATE Chinese_PRC_CI_AS NULL,

[tel][char] (15) COLLATE Chinese_PRC_CI_AS NULL,

[fax][char] (15) COLLATE Chinese_PRC_CI_AS NULL,

[employee] [int] NULL,

[ufcode] [char] (20) COLLATE Chinese_PRC_CI_AS NULL,

[ufname] [char] (20) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

2.创建往来单位表(ficompany)

CREATE TABLE [dbo].[ficompany] (

[number] [char] (10) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[name] [varchar] (60) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[address] [varchar] (60) COLLATE

Chinese_PRC_CI_AS NULL,

[zp] [varchar] (6) COLLATE Chinese_PRC_CI_AS NULL,

[tel] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL,

[fax] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL,

[lxr] [varchar] (8) COLLATE Chinese_PRC_CI_AS NULL,

[account] [varchar] (30) COLLATE

Chinese_PRC_CI_AS NULL,

[bank] [varchar] (24) COLLATE

Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

3.创建费用预算类别表(fiexpense )

CREATE TABLE [dbo].[fiexpense] (

[number] [varchar] (10) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[name] [char] (20) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[layer] [tinyint] NOT NULL,

[ufcode] [char] (20) COLLATE Chinese_PRC_CI_AS NULL,

[ufname] [char] (20) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

4.创建会计科目表(fiitem)

CREATE TABLE [dbo].[fiitem] (

[number] [varchar] (10) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[name] [char] (40) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[type] [char] (1) COLLATE Chinese_PRC_CI_AS NULL,

[jord] [char] (2) COLLATE Chinese_PRC_CI_AS NULL,

[person] [tinyint] NULL,

[company] [tinyint] NULL,

[currency] [tinyint] NULL,

[quantity] [tinyint] NULL,

[expense] [tinyint] NULL,

[unit] [char] (10) COLLATE Chinese_PRC_CI_AS NULL,

[ufcode] [char] (20) COLLATE Chinese_PRC_CI_AS NULL,

[ufname] [char] (20) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

5.创建往来个人表(fiperson )

CREATE TABLE [dbo].[fiperson] (

[number] [char] (10) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[name] [varchar] (10) COLLATE

Chinese_PRC_CI_AS NOT NULL,

[branch] [varchar] (10) COLLATE

Chinese_PRC_CI_AS NULL,

[department] [varchar] (10) COLLATE

Chinese_PRC_CI_AS NULL,

[ufcode] [char] (20) COLLATE

Chinese_PRC_CI_AS NULL,

[ufname] [char] (20) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

6.设置机构部门表主键

ALTER TABLE [dbo].[fibranch] ADD

CONSTRAINT [PK_fibranch] PRIMARY

KEYCLUSTERED ([number]) ON [PRIMARY]

7.设置往来单位表主键

ALTER TABLE [dbo].[ficompany] ADD

CONSTRAINT [PK_ficompany] PRIMARY

KEYCLUSTERED([number]) ON [PRIMARY]

8.设置费用预算类别表主键

ALTER TABLE [dbo].[fiexpense] ADD

CONSTRAINT [PK_fiexpense] PRIMARY

KEYCLUSTERED([number]) ON [PRIMARY]

9.设置会计科目表主键

ALTER TABLE [dbo].[fiitem] ADD

CONSTRAINT [PK_fiitem] PRIMARY

KEYCLUSTERED([number]) ON [PRIMARY]

10.设置往来个人表主键

ALTER TABLE [dbo].[fiperson] ADD

CONSTRAINT [PK_fiperson] PRIMARY

KEYCLUSTERED([number]) ON [PRIMARY]

四 系统功能及其菜单设计

该接口程序的主要功能有:(1)读取Master ERP系统转出的数据文档;(2)校验与转换Master ERP系统转出的数据文档,使之成为U8 ver8.6能直接读取的标准文档。检验主要是检查数据读取的正确性和一致性。只有经检验无误的数据才能进行转换,以确保数据交换的正确。

本接口程序采用PowerBuilder v9.0作开发平台。主界面设计结果,主功能菜单包括:基本信息、读取凭证、数据检验、数据转换和系统服务等。

第二节 系统主要功能的技术实现

一 凭证转换数据库管理程序的设计

程序功能及其界面,可在此窗口建立Master ERP系统与用友U8之间的数据库联系,并控制两者基础数据的一致性。

1.“试连接”按钮的执行代码

if trim(sle_2.text)=″″ then

messagebox(″错误!″,&

"服务器名称错误,请重新输入数据库服务器名称!")

return

end if

//试连接

transaction sqlyear

sqlyear=create transaction

sqlyear.DBMS=″MSS Microsoft SQL Server″

sqlyear.Database=″ufdata_″+trim(sle_1.text)+″_″+currentyear

sqlyear.ServerName=trim(sle_2.text)

sqlyear.LogId=″sa″

sqlyear.LogPass=trim(sle_3.text)

sqlyear.AutoCommit=true

sqlyear.DBParm=″″

connect using sqlyear;

if sqlyear.sqlcode 〈〉 0 then

messagebox(″用友系统数据库连接错误!″,"连接数据库服务器失败!请再试试!~r可能参数错误,或者已断开与服务器的连接!")

else

messagebox(″用友!″,"连接用友数据库服务器成功!")

end if

disconnect using sqlyear;

destroy sqlyear

2.“更新凭证转换相关的数据表”按钮的执行代码

if uf_connectsqlca()=-1 then

messagebox(″错误!″,″数据库连接错误!″)

return

end if

boolean ok[4]

string alter[4]

alter[1]=″ALTER TABLE [fiitem] ADD″+&

″ [ufcode] [char] (20) COLLATE″+&

″Chinese_PRC_CI_AS NULL,[ufname] [char] (20) ″+&

″COLLATE Chinese_PRC_CI_AS NULL ″

alter[2]=″ALTER TABLE [fibranch] ADD ″+&

″ [ufcode] [char] (20) COLLATE″+&

″Chinese_PRC_CI_AS NULL,[ufname] [char] (20) ″+&

″COLLATE Chinese_PRC_CI_AS NULL ″

alter[3]=″ALTER TABLE [fiexpense] ADD ″+&

″ [ufcode] [char] (20) COLLATE″+&

″Chinese_PRC_CI_AS NULL,[ufname] [char] (20) ″+&

″COLLATE Chinese_PRC_CI_AS NULL ″

alter[4]=″ALTER TABLE [fiperson] ADD ″+&

″ [ufcode] [char] (20) COLLATE″+&

″Chinese_PRC_CI_AS NULL,[ufname] [char] (20) ″+&

″COLLATE Chinese_PRC_CI_AS NULL ″

execute immediate :alter[1] using sqlca;

if sqlca.sqlcode=0 then ok[1]=true

execute immediate :alter[2] using sqlca;

if sqlca.sqlcode=0 then ok[2]=true

execute immediate :alter[3] using sqlca;

if sqlca.sqlcode=0 then ok[3]=true

execute immediate :alter[4] using sqlca;

if sqlca.sqlcode=0 then ok[4]=true

if not ok[1] or ok[2] or ok[3] or ok[4] then

messagebox(″提示!″,″数据库更新成功!″)

else

messagebox(″错误!″,″数据库更新失败!″)

end if

disconnect using sqlca;

3.“保存用友数据库连接参数”按钮的执行代码

if trim(sle_2.text)=″″ then

messagebox(″错误!″,&

"服务器名称错误,请重新输入数据库服务器名称!")

return

end if

//试连接

long filepointer

string readstring

string ufservername,ufsapassword,ufdatabasename

transaction sqlyear

sqlyear=create transaction

sqlyear.DBMS=″MSS Microsoft SQL Server″

sqlyear.Database=″ufdata_″+trim(sle_1.text)+&

″_″+currentyear

sqlyear.ServerName=trim(sle_2.text)

sqlyear.LogId=″sa″

sqlyear.LogPass=trim(sle_3.text)

sqlyear.AutoCommit=true

sqlyear.DBParm=″″

connect using sqlyear;

if sqlyear.sqlcode 〈〉 0 then

messagebox(″用友系统数据库连接错误!″,&

"连接数据库服务器失败!请再试试!~r可能+&

参数错误,或者已断开与服务器的连接!")

else

//保存

同类推荐
  • 决策的逻辑

    决策的逻辑

    本书在解剖这些关键、疑难问题时,深入剖析了决策者的洞察力、视野、心智在决策过程中发挥的重要作用,以及对具体决策结的产生的或积极或消极的深远影响。进一步,作者在讨论这些具体的影响的基础上,高度提炼、分析了经营管理者在个人心智和相应的决策判断上容易出现的错误,以及具体应该形成怎样的状态方能避免错误的发生。
  • 管理就像一本故事书

    管理就像一本故事书

    本书从古今中外的众多经典故事和精彩案例中精心选编了300多篇,它们或说理生动,或寓意深刻,或思想犀利,或耐人寻味。通过这些故事来阐述现代公司的先进管理理论,并把管理寓意化,有效解决了管理学理论艰深枯燥、难以为大众接受的问题。本书涵盖了管理学中的许多重要领域,这些理论相辅相成,诠释了现代公司里经常出现的各种不同的问题。
  • 总裁的智慧1

    总裁的智慧1

    《总裁的智慧》系列图书是上至企业高层管理者和政府官员,下至职业经理人、部门主管、员工、创业者、生意商人和普通老百姓都能看得懂的经营管理智慧解读。希望我们都能在这所“没有围墙的商学院”申汲取强大的企业家精神力量与睿智的商道智慧,有所启发,学有所成,学以致用。中国的强大与富裕需要一代又一代的优秀企业家的不懈努力,希望我们的读者中能产生出新一代的企业家,参与全球经济舞台的角逐与竞争。
  • 领导三篇

    领导三篇

    本书主要包括:正人先正己、放权任人、奖赏要有度、胆小不得将军做、敢于集权,敢于分权等。
  • 缺陷管理

    缺陷管理

    不怕企业有缺陷,就怕企业无视缺陷。让本书给你的企业做一个全面的体检,清倒企业垃圾,重塑完美企业管理。
热门推荐
  • 仙道凌云

    仙道凌云

    天地之外,星辰尽头,悬有三千大道、十万神通、百万修行法门…。李神宵最初只是一个算命先生,最终却站在仙道尽头,指天画地言道:“大道似河,共有三千,归我一人独占,天下众生只取其中一瓢足矣……”
  • 尸家客栈

    尸家客栈

    身怀僵尸王将臣血脉,脚踏华夏三山五岳。完成渡劫的旱魃尸王、阴山枯骨洞下的器具、茫茫东海之下的秦始皇衣冠冢,西王母的玉片、九华山的血路、长白山的青铜门,潜伏在尘世中的永生者,到底还有多少?
  • 邪王幻妃王妃十五岁

    邪王幻妃王妃十五岁

    海蓝黑手党教父的养女,溟后堂追风与金牌杀手紫锁的遗孤。异世深山,她遇上他。(精彩片段)一、“女人,我要你”“信不信,我现在就杀了你”二、“以后,不准委屈自己,谁伤了你,就给我还回去”夜辰霸道的宣誓。“我留了痕迹,除非我不要,否则不准碰别人”“敢不要”男人危险的眯了眯眼,咬牙道三、女儿是他心中最是柔软的地方,可是当一切的伤过后,他知不知道,他一心维护的女儿是女儿,而那个被伤得体无完肤的海蓝,某种意义上也是他的女儿,更者,海蓝是他爱女的源泉。可是,他不知,所以总是伤害。四、“对不起,她比你柔弱”师兄愧疚的对海蓝说道。再多的伤也不哭,因为,这个世界,只有夜辰,才有资格让她软弱。
  • 境域狂修

    境域狂修

    庞大世界,实力为尊,少年自平凡闯出,走向那精彩世界。
  • 都市之永恒神话

    都市之永恒神话

    不一样的异能用途,不一样的发展方向,一样的都市爽文元素!喜欢都市异能爽文的请进!这里有喜闻乐见的装逼打脸!这里有铁血忠诚的军人!这里有能交出后背的生死兄弟!这里……
  • 焚仙路

    焚仙路

    顾朗本是地球上的一名特战队员。因身负火系异能,受命前往秦始皇陵中探寻一神秘地穴。却意外的发现了一座黄金宫殿,碰到了传说中的,可融合的化金神焰。在融合时被传送到了一个上古修真界……
  • 雪之奇

    雪之奇

    虚构的幻想开始一段奇幻的风景,时隔一代演绎一段刻骨铭心的往事。
  • TFBOYS之杀手女主太棘手

    TFBOYS之杀手女主太棘手

    【同人小说】三位身份显赫,同时也是道上冷血强大的女主,因为任务来到S国,家长知道了让她们上学,就因为这样的一件事情,就让原本生活轨道正常的三位男女主,有了不一样的恋爱。男女主强大可是还都是恋爱基础为零,这让我个当妈的肿么破~【本文虚构,不现实,勿信】
  • 仙梦惊醒记

    仙梦惊醒记

    谁求谁春秋都只听天地号令天命谁能扭转运程谁无谁乱局亦一样入定谁在篡改剧情别高兴别以为叫始祖万岁千岁都会依你意愿来营造下一世别理谁叫高祖别要赌天命最高谁言谁不需一兵半卒便命定他年轮回今世剧情谁亡谁亦在历史下效命残酷过一夜
  • 征途之帝王路

    征途之帝王路

    从小无父无母,生活在孤儿院,懦弱的性格备受欺负,煎熬地度过了高中三年,来到心目当中的大学,在这里,遇到了一群好兄弟,改变了我的人生。