大型企业财务管理系统数据库设计_第1页
大型企业财务管理系统数据库设计_第2页
大型企业财务管理系统数据库设计_第3页
大型企业财务管理系统数据库设计_第4页
大型企业财务管理系统数据库设计_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、财务管理系统天津丰源汽车连锁服务有限公司成立于1988年,由最初从事汽车及汽车配件进出口贸易,发展成为现在拥有5家30005000 m2汽车用品直营连锁超市、一家3500 m2一类大修资质的汽车修理厂、3家三类快修店、一家二手车交易公司、一个汽车锁业公司、一个爱车俱乐部、一个汽车电子技术培训学校的大型联合企业。2001年引进国外汽车用品连锁超市的经营模式,借鉴正规美式仓储超市的经营理念及国内大型民用超市的管理经验,开办了大型汽车用品连锁超市。2001年2004年,连续开办了5家直营连锁店。公司计划在2010年前再发展2040家连锁店,除了占领天津市场外,还要进军外埠市场。  用户发展

2、战略1. 横向发展战略利用自身的优势,涉足与汽车相关的所有领域,包括汽车销售、汽车进出口贸易、二手车销售、爱车俱乐部、汽车装饰用品加工生产及开办汽车电子学校等。2. 纵向发展战略l          依托领先的专业品质和16年的行业经验,构筑天津乃至华北地区汽车用品连锁超市网络。l          沿袭欧美风尚,创造丰源车居文化,引导有车族的消费观向着更高品味发展。l    

3、      拓展丰源汽车用品经营范围,向“高、精、尖、全”发展;不断开发汽车服务领域,以高质量的服务,力争作汽车行业的“龙头”。3. 公司发展目标l          5年之内再开设2040家连锁超市,占领天津市场。l          以天津为基地,进军外埠市场,力争10年内在华北地区赢得一定的市场占有率。  项目整体目标对企业的各个层面进行全面、细致、规

4、范的管理。为实现管理手段的科学化、现代化和规范化建立一套先进的信息管理系统。通过本系统的使用,能够达到以下目标:l          精确、实时地反映和准确处理公司各项业务活动,实现企业商品“进、销、调、耗、存、结”以及汽车维修、美容、加工的一体化管理。l          对汽车维修、美容、加工等环节进行精细化管理。l        &

5、#160; 对商品进行条码管理,从商品入库、出库到盘点,统一通过条码进行管理,从而杜绝人为错误的操作和由此导致的盘点数据不正确的问题。l          有效控制商品的采购,避免商品短缺或重复进货,提高资金利用率。l          优化商品结构,减少资金占用。l          合理控制库存,提高库存周转率。l 

6、;         彻底解决信息孤岛问题,将各分店、各部门的信息完全共享,为公司将来的快速扩张提供强有力的支持。l          利用视窗卡对会员进行智能化、人性化的管理,提高公司的形象。l          及时、准确地将企业各类信息加工处理后反馈给公司的最高管理层,提供可靠、完整、科学的决策依据。l  

7、0;       加强对员工管理考核的科学性,提高劳动效率,充分调动员工的积极性和创造性。l          对于公司组织机构的调整、人员职务的变化、业务流程的重新设计及业务操作细节的调整,系统能够有足够的应变机制和可扩展性,从而快速地适应公司的编号。财务管理作为企业管理的组成部分,与经济价值或财富的保值增值有关,是关于创造财富的决策,企业生存、发展、获利的总目标离不开财务的筹资、投资以及对资金的运用管理。另一方面,财务管理目标是制定生产目标、

8、销售目标等一系列目标的基础和前提,这使得财务管理在企业管理中处于一个核心地位,财务管理目标将从根本上反映企业的总目标。所以确立一个合理的财务管理目标对企业的长远发展有着极为重要的意义。  财务管理的任务近来,美国接二连三发生的著名企业财务作假事件,不仅沉重地打击了美国经济和投资者的信心,同时也在全球经济一体化的今天,警示着中国企业的决策者们,要让更多的职业经理人具有一双能够识别伪装的慧眼,使企业能够防患于未然,将风险降至最小。当前中国许多企业面临着许许多多的问题,然而比较具有普遍性的是企业的经营决策仅凭经验感性判断,缺乏必要的理论指导和定量分析,财务会计信息资源未能得到充分利用。财务

9、管理是为实现企业的目标服务的,并受财务管理的内容制约。基本任务是依法合理筹资并有效地利用企业各项资产,最终提高效益。具体来说,企业的财务管理任务包括以下几方面内容:(1) 依法合理筹集资金,满足企业资金需要量。企业进行生产经营活动需要必备的资金额,企业财务管理的首要任务是合理地从各种渠道,采用种种方式合理地筹集到生产经营活动所需要的资金。这项任务有两个面向,一是要正确确定企业的资金需求量,二是要选择好获得资金的渠道和方式。因为企业筹资有多种渠道和方式可供选择,在进行比较选择时主要考虑资金成本,偿还期限,担保条件可能性和资金供应者的其他具体要求,并考虑其对企业投资收益和风险影响,据此选择确定企业

10、筹资的最佳组合方式。(2) 有效地分配和使用企业资金,提高资金利用效果。财务管理部门应规划性地,合理地安排各类资产,使其形成合理的资产结构。要使货币资产保持在最佳的水平上,要避免存货资产占用过多,要及时解决资金使用过程中出现的问题,加速资金周转,提高资金的利用效果。(3) 分配企业的收益,协调各方面的经济关系。税后利润按照规定的顺序进行分配,在分配中处理好各方面的经济关系,以调动企业、员工、投资者各方面的积极性。(4) 实行财务监督,维护财经法规。财务监督是利用货币形式对企业的经济活动进行监督,它是通过对财务收支的审核控制和对财务指标的检查分析,及时发现生产经营活动存在的问题,及时进行处理。实

11、行财务监督,能够促使企业在严格地规范化的范围内生产经营,维护法律制度上的企业完整性。  会计学的理论基础会计学是一门专门的学科,涉及众多内容,这里不可能一一深入介绍,下面仅介绍一些原理性的知识,通过这些介绍读者基本可以了解会计学的基本理论,从而对财务管理有一个基本的认识。(1) 会计的对象会计的一个显著特点是以货币形式对经济活动进行反映,而会计的对象就是会计核算和监督的内容,因此概括地说,会计对象是扩大再生产过程中的资金运动,企业的会计对象是企业经营活动中的资金运动。企业的资金运动在经营活动中表现为各种经济业务,因此企业会计对象又具体表现为反映资金运动的企业经营活动中的经济业务。会计

12、对象具体表象的经济业务,按其性质的分类,就形成会计对象的要素。会计对象要素主要包括资产、负债、所有者权益、收入、费用、利润等。(2) 会计的职能会计职能是会计应发挥的作用或应有的功能。会计的基本职能有两项,即会计核算职能和会计监督职能。会计核算是以货币为主要计量单位,对企业、事业等单位一定时期的经济活动进行真实、准确、完整和及时的记录、计算和报告。会计核算的内容是会计对象要素,具体表现为经济活动中的各种经济业务,包括:l           款项和有价证券的收付l  

13、0;        财物的收发、增减和使用l           债权债务的发生和结算l           资本、基金的增减和经费的收支l           收入、费用、成本的计算l   

14、0;       财务成果的计算和处理l           其他需要办理会计手续、进行会计核算的事项会计核算要求做到真实、准确、完整和及时。会计核算是一个过程,在企业中,经济业务发生后,要填写原始凭证,编制记帐凭证,根据记帐凭证登记会计帐簿,根据会计帐簿和有关资料编制会计报表。会计监督是指依据监督标准,对企业、事业等单位的资金运动进行的指导、控制和检查。会计监督的对象是资金运动,而资金运动在企业中主要负责筹集资金、使用资金和收回资金。

15、会计对资金运动的监督主要表现在:l           监督经济业务的真实性l           监督财务收支的合法性l           监督公共财产的完整性(3) 会计核算方法在会计核算方法体系中,主要的方法有: 设置会计科目和帐户会计科目就是对会计对象的具体内容进行分类核算的项目,而设置会

16、计科目就是在设计会计制度时事先规定这些项目,然后根据它在帐目中开立帐户,分类、连续地记录各项经济业务,反映由于各经济业务的发生而引起的各会计要素的增减变动情况和结果,为经营管理提供各种类型的会计指标。 复式记帐复式记帐是与单式记帐相对应的一种记帐方法,这种记帐方法的特点是对每一项经济业务都要以相等的金额同时记入两个或两个以上的有关帐户,例如我们用银行存款购买材料。按照复式记帐法就应该一方面记材料的增加,另一方面记银行存款的减少。它的优点就是通过帐户的对应关系,可以了解有关经济业务内容的来龙去脉,通过帐户的平衡关系,可以检查有关业务的记录是否正确。 填制和审核会计凭证会计凭证是记录经济业务,明确

17、经济责任的书面证明,也是登记帐簿的依据。业务发生以后,首先要取得凭证,凭证必须经过会计部门或有关部门审核,只有经过审核并认为正确无误的会计凭证才能作为记帐的依据,而作为会计核算的方法,填制和审核凭证不仅为经济管理提供真实可靠的数据资料,也是实行会计监督的一个重要方面。 登记会计帐簿帐簿是用来全面、连续、系统地记录各项业务的簿籍,是保存会计数据资料的重要工具。而登记帐簿就是将会计凭证记录的经济业务,序时分类的记入有关簿籍中设置的各个帐户。登记帐簿必须以凭证为根据并定期进行结帐、对帐以便为编制会计报表提供完整而系统的会计数据。 成本计算成本计算就是指在生产经营过程中按照一定的对象归集和分配发生的各

18、种费用支出,以确定该对象的总成本和单位成本的一种专门方法。通过成本计算可以确定材料的采购成本、产品的生产成本和销售成本,也就是说,在这个生产经营过程当中,既要计算材料的采购成本,也要计算产品的生产成本和销售成本。通过成本计算,可以反映和监督生产经营过程当中发生的各项费用是否节约或超支,并据此确定企业的经营盈亏。 财产清查财产清查是指通过盘点实物、核对帐目,保持帐实相符的一种方法。在清查当中如果发现财产物资和货币资金的实有数与帐面结存数额不一致,应该及时查明原因,通过一定的审批手续进行处理,并调整帐簿记录,使帐面数额与结存数额保持一致从而保证会计核算资料的正确性和真实性。 编制会计报表会计报表是

19、根据帐簿记录定期编制的。它是一种总括并反映了企业或行政事业单位在特定时点(月末、季末、年末)和一定时期(月、季、年)的财务状况、经营成果以及成本费用等的书面文件。会计报表提供的资料不仅是分析考核财务成本计划和预算执行情况,以及编制下期财务成本计划和预算的重要依据,也是进行经营决策和国民经济综合平衡工作必要的参考资料。这些方法反映了会计核算过程。在会计核算过程中,填制和审核会计凭证是开始环节。登记会计账簿是中间环节,编制会计报表是终结环节。在一个会计期间所发生的所有经济业务都要经这三个环节进行处理,将大量的经济业务转换为系统的会计信息,这个转换过程也就是从填制和审核凭证到登记账簿,直到编制出会计

20、报表,周而复始的变化过程就是一般所讲的会计循环。经济业务发生后,经办人员要添置或取得原始凭证,经会计人员审核整理后,按照设置的会计科目,运用复式记账法编制记账凭证并据以登记账簿,要依据凭证和账簿记录对生产经营过程中发生的各项费用进行成本计算,并依据财产清查对帐簿记录加以核实,在保证帐实相符的基础上定期编制会计报表。(4) 会计科目我国企业会计准则将企业会计要素划分为资产、负债、所有者权益、收入、费用和利润六个要素,这些要素对应不同的会计科目。会计科目是对会计对象具体内容及会计要素进一步分类核算的项目。为了全面系统地反映和监督各项会计要素的增减变动情况,分门别类地为经济管理提供会计核算资料,就需

21、要设置会计科目。设置会计科目就是通过会计制度预先规定这些项目的名称,并限定其核算的内容范围,它是设置账户、处理帐务所必须遵守的规则和依据,是正确组织会计核算的一个重要条件。例如,为反映和监督各项资产的增减变动,设置了现金、材料、长期投资、固定资产等科目;为反映和监督负债和所有者权益的增减变动,设置了短期借款、应付账款、长期借款和资本公积、盈余公积等科目。为反映和监督收入费用和利润的增减变动设置了产品销售收入、生产成本,本年利润和利润分配等科目。(5) 账户设置会计科目只是规定了对会计对象具体内容进行分类核算的项目,而为了及时、连续、系统地记录由于经营业务的发生而引起的会计要素的增减变动,提供各

22、种会计信息,还必须根据规定的会计科目在帐簿中开设帐户。帐户是对会计要素进行分类核算的工具,它应该以会计科目作为它的名称并具有一定的格式。帐户的设置也与帐户的级次有关,也就是根据总分类科目开设总分类帐户,根据明细科目开设明细帐户。由于总分类帐户提供的是总括核算指标,因而一般的只用货币计量。而明细帐户提供的是明细分类核算指标,因而除了用货币量度外,有的还用实物量度,进行辅助计量。既然帐户是用来分类记录经营业务的,就必须具有一定的结构。由于经济业务发生所引起的各项会计要素的变动,从数量上来看,不外乎是增加和减少两种情况。因此帐户结构也相应地分为两个基本部分,划分为左右两方,以一方登记增加额,另一方登

23、记减少额。如图4.1所示,图4.2是银行存款和应付帐款的帐户实例。帐户要依附于帐簿开设,每一个帐户只表现为帐簿中的某章或某些帐页,它们一般应该包括帐户的名称、日期和摘要、增加和减少的金额及余额、凭证号数等。图4.1  帐户结构图4.2  帐户实例(6) 会计科目与帐户的关系会计帐户和会计科目是两个既有区别又相互联系的概念,它们的联系是:帐户是根据会计科目设置的。会计科目就是帐户的名称,设置会计科目和开设帐户的目的都是为了分类提供会计信息,两者所反映的经济内容是一致的。它们的区别是:会计科目仅是分类核算的项目,而帐户既有名称又有具体结构;会计科目是进行分类核算的依据,而帐户则

24、是记录经济业务的载体。在实际工作中,会计科目和帐户往往作为同义词来理解,互相通用,不加区别。(7) 复式记帐原理记帐方法是在帐户中登记经济业务的方法。经济业务的发生会引起各有关会计要素的增减变动。为将这些经济业务记录在有关的帐户中,曾采用过单式记帐和复式记帐两种方法。单式记帐是指对发生的经济业务只在一个帐户中进行记录的记帐方法,例如用银行存款购买材料的业务,发生后,采用单式记帐法只在帐户中记录银行存款的付出业务,而对材料的收入业务却不在帐户中记录。与单式记帐不同,复式记帐是指对发生的每一项经济业务都以相等的金额,在相互关联的两个或两个以上帐户中进行记录的记帐方法。例如上述用银行存款购买材料的业

25、务,按照复式记帐则应以相等的金额,一方面在银行的存款帐户中记录银行存款的付出业务;另一方面在材料帐户中记录材料的收入业务。(8) 借贷记帐法借贷记帐法是以借贷作为记帐符号,反映各项会计要素增减变动情况的一种记帐方法,是各种复式记帐方法中应用得最广泛的一种方法。从上面的定义可以看出,借贷记帐法是一种复式记帐法,它的特点是以借贷作为记帐符号,反映各项会计要素增减变动情况。借贷记帐法的记帐规则是“有借必有贷,借贷必相等”。也就是说,由于资金运动的数量变化不外乎增加或减少,一个要素项目的金额增加引起的是同类性质的另一个(或几个)项目的金额减少,或另一类性质的某一个(或几个)项目的金额增加或减少,而不同

26、性质要素项目(帐户)的金额增减恰恰是用不同的记帐符号“借”或“贷”来表示的。因此借贷记帐法下对于每一笔经济业务的帐务处理都必然是既要用“借”方反映增加项目的金额,又要用“贷”方反映减少项目的金额,这就叫做“有借必有贷,借贷必相等”,如图4.3所示。(9) 会计分录会计分录就是标明某项经济业务的应借应贷帐户及其金额的记录,所有的财务管理软件都要有“会计分录”的功能,就是以借贷记帐法输入所有的企业经济业务。注意会计分录的书写格式一般是借方在上贷方在下,而且贷方应该向右错开一格。若有多个借方或多个贷方,则借贷方各自应该对齐。会计分录的实例如图4.3所示。图4.3  借贷记帐法(会计分录)(

27、10) 试算表与试算平衡把整个期间(一个月或一年)的会计分录,从会计凭证全部过入分类帐后,各分类帐就已经记录和反映了当期的经济业务。为了验证各分类帐登记和过帐的会计处理的正确性,根据“有借必有贷,借贷必相等”的平衡原理,编制“试算表”进行试算平衡,同时也为编制财务报表作好了准备,如图4.4所示。图4.4  试算表(11) 结帐与会计报表为了总结一定会计期间财务状况和经营成果的大小,企业一般在会计期末进行结帐。结帐是一项将帐簿记录定期结算清楚的帐务工作。结帐后会形成该会计期间的会计报表,常用的会计报表有损溢表和资产负债表,分别如图4.5和4.6所示。图4.5  损溢表图4.6

28、  资产负债表根据以上对财务管理内容的分析和会计基础知识的介绍,一个标准的财务管理系统应该包括如图4.7所示的几大功能。除此之外系统还应包括信息系统必须具备的通用功能,例如系统管理、权限设置、数据备份与恢复等,这些功能的实现可以参考第1章。其中每个功能都由若干相关联的子功能模块组成。图4.7  财务管理系统应包括的基本功能财务管理系统的基本流程如图4.8所示。图4.8  财务管理系统基本流程  基础资料维护“基础资料维护”用于对会计科目、核算项目以及凭证、帐簿、固定资产等项目进行初始化设置,这些设置一般不轻易改动,包含的功能模块如图4.9所示。图4.9&

29、#160; “基础资料维护”功能模块其中“会计科目”是基础资料的重点,财务软件的使用离不开科目的正确设置,其内容包括科目代码、科目名称、助记码、科目类别、是否存货科目、余额方向、数量单位等。  凭证管理“凭证管理”用于完成凭证制定、审核、记帐、查询等功能,自动生成各种会计帐,包含的功能模块如图4.10所示。图4.10  “凭证管理”功能模块其中“凭证输入”是凭证管理的重点,在凭证输入模块中将实际业务的分录输入到计算机,内容包括凭证状态、会计期间、凭证字号、凭证编号、顺序号、日期、附单据、审核、过帐、制单、借方合计、贷方合计、过帐状态、顺序号码等。一张凭证对应多个分录,分录内

30、容包括分录编号、会计期间、凭证字号、凭证编号、摘要、科目代码、借方、贷方、数量、单价、结算方式、结算号、结算日期等。  帐簿管理“帐簿管理”用于提供各种帐务处理查询筛选的功能,包含的功能模块如图4.11所示。总帐可按科目级别、币别、科目范围等查询;明细帐可按期间范围、币别、科目范围查询;还提供多栏帐、数量金额明细帐、核算项目分类总帐等帐簿报表。图4.11  “帐簿管理”功能模块  报表管理“报表管理”用于报表的定义、编制和输出。企业会计核算的结果最后需要用报表的形式反映出来,一般包括帐务报表处理、汇总报表处理、合并报表处理等。一般财务系统会预设资产负债表、损益表、

31、利润分配表等各类报表模板,如图4.12所示,简化报表操作过程。图4.12  “报表管理”功能模块  期末处理“期末处理”是系统总结某一会计期间的经营活动情况,转至下一期的必做事项。同时该模块在结帐前,按企业财务管理和成本计算的要求,必须进行制造费用、产成品成本的结转、期末调汇及损益结转等工作,包含的功能模块如图4.13所示。图4.13  “期末处理”功能模块  往来管理“往来管理” 用于对企业的往来帐款进行全面核算、管理、分析、预测、决策。一般包括往来单位管理、经济业务的管理、往来帐龄分析等模块、往来帐款的核销、坏帐处理等功能,如图4.14所示。图4.1

32、4  “往来管理”功能模块  出纳管理出纳是会计中十分重要的一个岗位,它担负着现金、银行存款的收付职能。“出纳管理”既可同总帐系统联合起来使用,也可单独提供给出纳人员使用。一般包括现金帐管理、银行存款帐管理、票据管理等,如图4.15所示。图4.15  “出纳管理”功能模块出纳系统与帐务系统功能分离但数据却可紧密连结共享,合理的数据共享模式可使得会计与出纳人员更能高效的独立工作。  工资管理“工资管理”用于进行企业工资的发放和核算,工资动态变动管理,工资费用计提与分配、银行代发等;一般包括基础设置、工资结构设置、工资变动管理、工资数据处理、工资报表管理等功

33、能,如图4.16所示。 图4.16  “工资管理”功能模块   固定资产管理“固定资产管理”用于管理、核算固定资产增减变化、变动、以及折旧的计提、转帐等,一般包括如图4.17所示的功能模块。允许不同固定资产采用不同的折旧方法,提供标准的折旧方法,提供固定资产卡片自定义设置功能和灵活的报表查询系统。图4.17  “固定资产管理”功能模块  财务分析“财务分析” 是财务管理的重要组成部分,在核算的基础上以财务报表和其他资料为依据和起点,采用专门方法,系统分析和评价企业的过去和现在的经营成果、财务状况及其变动,对帐务数据作进一步的加工、整理

34、、分析和研究,将大量的报表数据转换成对决策有用的信息,是管理层进行日常及重大决策的好帮手,包含的功能模块如图4.18所示。图4.18  “财务分析”功能模块“财务状况分析”对截止报告期的资产、负债及所有者权益的结构、比例及变化趋势等情况进行分析,可分为结构分析、比较分析、趋势分析三种分析方法。结构分析对资产、负债及所有者权益中每一具体项目占该类项目以及与总体项目的结构、比重进行分析,从而揭示该类财务指标的结构是否合理;比较分析能对同口径(指标名称相同、计算方法相同)指标在任意两个会计期间(或一个会计期间与它的预算值之间)进行比较,借以反映其增减变动情况;趋势分析反映某一财务指标,如资

35、产总计、流动资产合计、银行存款等在年度内月份之间、季度之间和年度之间变化的趋势。“损溢分析”对本期、本年累计及任一会计期间的盈利状况和盈利能力进行分析。对损益分析也可分为结构分析、比较分析、趋势分析三种分析方法。根据以上需求分析,一个基本的财务管理系统数据库中大致包括100多张数据表,分别存放相应子功能的数据信息,其中“科目表”是关键的表,用于存放科目的信息。其他涉及科目信息的数据表,都只记录科目的代码,根据作为外键的“科目代码”字段相对应。因此“科目表”和其他数据表间的关系是1N的关系。  财务管理系统E-R图图4.19所示为财务管理系统E-R图。图4.19  财务管理系

36、统E-R图  财务管理系统数据表清单配书光盘中“Chap4建库脚本财务管理系统.sql”文件提供了创建数据库所有表的脚本,下面我们仅列出一些重要表的名称及其用途供读者参考(表4.1)。其中每张表所包含的字段读者可以自己查看建库脚本和前面的需求分析。表4.1  财务管理系统数据表清单数据表名称数据表用途科目表保存企业财务的科目设置信息科目余额表保存财务(帐户)科目的余额信息分录表用于凭证管理中的分录输入凭证表用于凭证输入管理分录历史表分录输入确认后数据放入历史凭证历史表凭证输入确认后数据放入历史明细帐簿用于企业财务明细帐簿的输入分类帐簿用于企业财务分类帐簿的输入本年明细帐簿年

37、度明细帐簿的汇总本年分类帐簿年度明分类簿的汇总历史明细帐簿保存明细帐簿历史历史分类帐簿保存分类帐簿历史财务状况变动表保存企业财务的财务状况变动表信息年终损益表保存企业财务的年终损溢表信息年终资产负债表保存企业财务的年终资产负债表信息固定资产清单保存企业的固定资产基础资料信息变动资料表保存企业的固定资产的变动信息变动资料历史表保存企业的固定资产变动历史折旧分配表保存固定资产折旧分配的方法固定资产变动情况表保存(计算)固定资产变动情况固定资产折旧表存储用来生成转帐凭证的本期折旧数据,在计提折旧时生成数据固定资产折旧登记表存储固折旧方式、使用期间、预计工作总量、月折旧率等折旧工作量登记表按工作量折旧

38、的固定资产的工作量输入折旧工作量历史表保存固定资产工作量历史固定资产折旧汇总表统计用表固定资产处理情况表统计用表固定资产构成分析表统计用表员工清单保存企业员工信息工资清单保存员工工资的明细项目工资表保存当月员工工资信息,由员工清单和工资清单计算生成工资费用分配表按各部门职务为类别对员工工资费用分配银行代发工资文件过帐时生成,保存银行代发工资的历史信息工资汇总表统计用表工资发放表保存转帐后工资发放历史工资统计表统计用表基于以上需求分析和数据库分析,读者对一个标准的财务管理系统应该有了一个全面的认识。下面我们将实例说明如何利用Delphi完成系统的开发。  实例功能由于篇幅有限,本实例详

39、细介绍如图4.20所示的功能的开发过程,并简化其中各功能图4.20  详细介绍的功能模块所包含的属性,其他功能读者完全可以参照这些功能的开发方法完成开发。需要强调的是,由于用户登录和权限管理的功能各个系统实现的方法是一致的,这里就不在详细介绍,具体实现方法参看第1章。  系统流程图系统流程图如图4.21所示。根据实例介绍,“科目表”是系统的关键表,其他各表均与“科目表”通过“科目代码”字段进行多对一的关联。系统共需要11张表,用途分别如表4.2所示。表4.2  系统数据表及其用途数据表名称数据表用途科目表保存企业财务的科目设置信息帐簿初始化表正式使用系统前初始化科

40、目的期初余额凭证表输入会计凭证,分录表的主表分录表输入会计分录,分录表的从表科目余额表保存各个会计期间的科目借、贷、余额情况凭证表历史保存过帐后的凭证历史分录表历史保存过帐后的分录历史本期明细帐簿保存当前会计期间的明细帐簿数据本期汇总帐簿保存当前会计期间的明细帐簿数据,期末结帐后期末变成新会计期间的期初资产负债表统计用表,用于计算资产负债表系统参数表系统运行所需的参数信息  创建数据库打开SQL Server企业管理器,新建一个数据库,名称为caiwubook。利用配书光盘中的脚本代码“Chap4建库脚本 财务管理系统实例程序.sql”文件创建数据库对象,完成数据库的设计。也可以利用

41、“Chap4建库脚本caiwubook.bak”文件直接恢复数据库,这样数据库中存在初始的科目信息和系统参数数据数据。后面几小节我们将列出几个重点的数据表的建库脚本,其他数据表的脚本请参考脚本文件。  创建“科目表”数据表创建“科目表”数据表的SQL脚本如下:CREATE TABLE dbo.科目表 (    科目代码 char (20) NOT NULL ,    科目名称 char (20) NULL ,    助记码 char (20) NULL ,    科

42、目类别 char (20) NULL ,    是否存货科目 char (10) NULL ,    余额方向 char (4) NULL ,    数量单位 char (10) NULL ) ON PRIMARYGO  创建“凭证表”和“分录表”数据表创建“凭证表”数据表的SQL脚本如下:CREATE TABLE dbo.凭证表 (    凭证编号 char (10) NOT NULL ,    会计期间 int NULL ,

43、0;   凭证字号 char (2) NULL ,    日期 datetime NULL ,    附单据 int NULL ,    制单 char (20) NULL ,    借方合计 money NULL ,    贷方合计 money NULL ,    过帐状态 char (4) NULL ,    凭证状态 char (10) NULL ) ON PR

44、IMARYGO 创建“分录表”数据表的SQL脚本如下:CREATE TABLE dbo.分录表 (    编号 int IDENTITY (1, 1) NOT NULL ,    凭证编号 char (10) NOT NULL ,    摘要 char (40) NULL ,    科目代码 char (20) NULL ,    借方 money NULL ,    贷方 money NULL ,

45、0;   数量 int NULL ,    单价 money NULL ,    结算方式 char (10) NULL ,    结算号 int NULL ,    结算日期 datetime NULL ) ON PRIMARYGO  创建其他关键数据表以下是其他关键数据表的创建脚本,其他数据表可以参看配书光盘中的相关内容。CREATE TABLE dbo.科目余额表 (    科目代码 char (20) NUL

46、L ,    期初借方余额 money NULL ,    期初贷方余额 money NULL ,    本期借方发生额 money NULL ,    本期贷方发生额 money NULL ,    本年借方累计发生额 money NULL ,    本年贷方累计发生额 money NULL ,    本期借方余额 money NULL ,    本期贷方

47、余额 money NULL ,    最后结算分录 int NULL ,    会计期间 int NULL ,    余额方向 char (4) NULL ,    内部编号 int IDENTITY (1, 1) NOT NULL ) ON PRIMARYGO CREATE TABLE dbo.资产负债表 (    会计期间 int NOT NULL ,    现金及现金等价物 money NULL ,&

48、#160;   应收帐款 money NULL ,    坏帐准备 money NULL ,    应收帐款净值 money NULL ,    流动资产总计 money NULL ,    固定资产原值 money NULL ,    累计折旧 money NULL ,    固定资产总计 money NULL ,    其他资产 money NULL , 

49、;   资产总计 money NULL ,    应付帐款 money NULL ,    预收帐款 money NULL ,    应付工资 money NULL ,    其他负债 money NULL ,    负债总计 money NULL ,    实收资本 money NULL ,    资本公积 money NULL ,   

50、; 赢余公积 money NULL ,    未分配利润 money NULL ,    所有者权益总计 money NULL ,    负债及所有者权益总计 money NULL ) ON PRIMARYGO  创建主键及外键等表约束在查询分析器中通过如下代码创建数据表的主键及外键等表约束。- 主键、外键关联字段ALTER TABLE dbo.科目表 WITH NOCHECK ADD      PRIMARY KEY  CLUSTERED &#

51、160;   (        科目代码    )  ON PRIMARY GO ALTER TABLE dbo.凭证表 WITH NOCHECK ADD     CONSTRAINT PK_凭证表 PRIMARY KEY  CLUSTERED     (        凭证编号    )

52、  ON PRIMARY GO ALTER TABLE dbo.分录表 WITH NOCHECK ADD     CONSTRAINT PK_分录表 PRIMARY KEY  CLUSTERED     (        编号    )  ON PRIMARY GO ALTER TABLE dbo.帐簿初始化表 WITH NOCHECK ADD     &#

53、160;PRIMARY KEY  CLUSTERED     (        科目代码    )  ON PRIMARY GO ALTER TABLE dbo.本期汇总帐簿 WITH NOCHECK ADD     CONSTRAINT PK_本期汇总帐簿 PRIMARY KEY  CLUSTERED     (    

54、60;   科目代码    )  ON PRIMARY GO ALTER TABLE dbo.分录表 ADD     CONSTRAINT FK_分录表_凭证表 FOREIGN KEY     (        凭证编号    ) REFERENCES dbo.凭证表 (        凭证编号&#

55、160;   ),    CONSTRAINT 分录表_科目代码_fk FOREIGN KEY     (        科目代码    ) REFERENCES dbo.科目表 (        科目代码    )GO-4.6.6  创建存储过程系统使用了“sf_初始化帐户”、“sf_启用帐户”、“sf_凭

56、证过帐”、“sf_期末结帐”和“sf_计算资产负债表”5个存储过程,实现的功能分别为新建帐套、启用帐套、凭证过帐确认、期末结帐和运算指定会计期间的资产负债表等功能。具体计算方法在下面的脚本中有详细的注释,读者可以参考这些注释。create proc sf_初始化帐户as begin tran    - 清除原来数据,从新建立帐户    delete from 帐簿初始化表    - 设置帐户初始基本数据    insert into 帐簿初始化表  

57、60;     (科目代码,科目名称,累计借方,累计贷方,期初余额,余额方向)        select 科目代码,科目名称,0,0,0,余额方向 from 科目表    - 设置初始信息    update 系统参数表 set 取值 = datepart(mm,getdate()        where 参数名称 = '会计期间开始月份'

58、;    update 系统参数表 set 取值 = datepart(mm,getdate()         where 参数名称 = '当前会计期间'commitGO create proc sf_启用帐户as begin tran    - 清除原来数据,从新建立帐户    delete from 科目余额表    delete from 本期汇总帐簿  

59、;  delete from 本期明细帐簿    delete from 分录表    delete from 分录表历史    delete from 凭证表    delete from 凭证表历史    - 设置本期汇总帐簿及科目余额表    insert into 本期汇总帐簿 select 科目代码,0,期初余额,       

60、 0,0,0,0,期初余额,余额方向 from 帐簿初始化表    update 本期汇总帐簿 set 会计期间=b.取值 from         系统参数表 as b where 参数名称='当前会计期间'    insert into 科目余额表(科目代码, 期初借方余额, 期初贷方余额,            本期借方发生额, 本期贷

61、方发生额, 本年借方累计发生额,             本年贷方累计发生额, 本期借方余额, 本期贷方余额,              余额方向)         select 科目代码,累计借方,累计贷方,0,0,0,0,      &

62、#160; case when 余额方向='借方' then 期初余额 else 0 end,        case when 余额方向='贷方' then 期初余额 else 0 end,        余额方向 from 帐簿初始化表    update 科目余额表 set 会计期间=b.取值 from         系统参数表

63、 as b where 参数名称='当前会计期间'commitGO create proc sf_凭证过帐as begin tran    - 设置本期汇总帐簿信息    update 本期汇总帐簿 set 本期借方合计 = 本期借方合计 + b.借方,        本期贷方合计 = 本期贷方合计 + b.贷方,        本年借方累计 = 本年借方累计 + b.借

64、方,        本年贷方累计 = 本年贷方累计 + b.贷方,        余额 = 余额 + case when 余额方向='借方' then (借方 - 贷方)            else (贷方 - 借方) end         from 本期汇

65、总帐簿 as a,        (select 科目代码, sum(借方) as 借方, sum(贷方) as 贷方             from 分录表 as f, 凭证表 as p where f.凭证编号 = p.凭证编号             group by f.科目代码) as b

66、0;       where a.科目代码 = b.科目代码    - 设置本期明细帐簿信息    insert into 本期明细帐簿(分录编号,会计期间,凭证字号, 凭证编号, 摘要,         科目代码, 借方, 贷方, 数量, 单价, 结算方式, 结算号, 结算日期)         select 编号,会计期间,凭证字号, p.凭证

67、编号, 摘要, 科目代码, 借方, 贷方, 数量, 单价,             结算方式, 结算号, 结算日期 from 凭证表 as p, 分录表 as f where f.凭证编号 = p.            凭证编号     -计算余额    update 本期明细帐簿   

68、     set 余额方向=a.余额方向 from 科目表 as a        where 本期明细帐簿.科目代码=a.科目代码    - 通过游标循环计算余额    declare bh int, dm char(20), jf money, df money    declare fx char(4), bj char(4), ye money, kjqj int  &

69、#160; declare mycursor cursor for select 内部编号,科目代码,        借方,贷方,余额方向,余额标记,会计期间 from 本期明细帐簿        where 余额标记 is null  order by 内部编号    open mycursor    fetch next from mycursor into bh,dm,jf,df,

70、fx,bj,kjqj    while (fetch_status=0)    begin        select ye = 余额 from 本期明细帐簿 where 内部编号 in (select max(内部编号) from             本期明细帐簿 where 内部编号 < bh and 科目代码=dm and 余额标记 = &#

71、39;是')        - 没有,本期第一条明细,从科目余额表取余额        if(ye is null)               select ye = case when 余额方向='借方' then       &#

72、160;        本期借方余额 - 本期贷方余额 else                本期贷方余额 - 本期借方余额 end                from 科目余额表 where 会计期间 = kjqj

73、0;               and 科目代码 = dm        select ye = isnull(ye,0)        update 本期明细帐簿            set 余额=cas

74、e when fx='借方' then                  ye + jf - df else                ye + df - jf end,         &

75、#160;  余额标记='是'            where 内部编号=bh        fetch next from mycursor into bh,dm,jf,df,fx,bj,kjqj    end    close mycursor    deallocate mycursor

76、0;   - 更改状态    update 凭证表 set 过帐状态 = '已过'    - 放入历史    insert into 凭证表历史 select * from 凭证表    insert into 分录表历史 select * from 分录表    - 清除已过帐数据,注意,应放到程序中清除,因为要统计凭证张数/分录张数和金额    - 统计后删除 

77、60;  - delete from 分录表    - delete from 凭证表commitGO create proc sf_期末结帐as begin tran    - 先将没有过帐的凭证过帐    exec sf_凭证过帐    declare kjqj int    - 当前会计期间    select kjqj = 会计期间 from 本期汇总帐簿     - 计算科目余额表,可以统计资产负债表/损溢表等 &

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论