物流管理系统财务子系统的设计与实现_第1页
物流管理系统财务子系统的设计与实现_第2页
物流管理系统财务子系统的设计与实现_第3页
物流管理系统财务子系统的设计与实现_第4页
物流管理系统财务子系统的设计与实现_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、南 开 大 学本 科 生 毕 业 论 文(设 计)题学 号:姓 名:年 级:学 院:系 别:专 业: 软件工程完成日期:指导教师:摘要津菱物流管理系统财务子系统的设计与实现软件学院软件工程系 软件工程专业 沈泼 学号:0010792指导教师:张波 副教授摘要:津菱物流管理系统是在良凌物流管理系统的基础上进行的二次开发,本项目组承担了扩充原系统未有的财务业务部分的开发任务,笔者主要负责了对财务业务中的进货及盘点部分的财务功能模块的设计与开发工作,目标在保持已开发完成的物流系统功能不受影响、流程及原系统数据库结构尽量不受改动的情况下,实现津菱物流公司所提出的有关财务业务的功能。本文首先对津菱物流管

2、理系统的功能和设计进行了简单的描述,然后给出了津菱物流公司就财务部分所提出的功能需求,最后详细阐述了对财务业务中入库及盘点部分的功能的分析及模块的设计与实现。关键字:物流管理系统,财务子系统,会计ABSTRACTAbstractThe JinLing Logistics Management system is a revision on the basis of the Lianglin Logistics Management System . We undertakes the task of expending undeveloped financial business in ori

3、ginal system ,and mainly responsibility for redesigning and implementing the financial function module of merchandise sale delivery, which is part of financial business. And our goal is to keep the original database function and structure of the Jinling logistic management system and to realize the

4、requirement of the Jinling Logistic Corporation that the database has the new financial function, such as merchandise sales delivery, merchandise stocking and checking storage.At the beginning of the article, we described the function and design of JinLing Logistics Management system in general, the

5、n offered the functional requirement of JinLing Logistics Corp. on the financial part. And finally we discussed the function analysis as well as module design and realization of merchandise sale delivery. Key Words:Logistics Management System , Financial subsystem , Account目 录第一章 绪论 . 11.1 项目背景 . 11

6、.2 本文内容 . 4第二章 津菱物流管理系统概述 . 52.1 系统开发背景 . 52.2 系统功能模块的划分 . 62.3开发环境及应用到的主要技术 . 8第三章 财务模块的需求分析 . 113.1 扩充财务功能的现实经济性的分析 . 113.2 有关津菱公司财务功能的需求 . 11第四章 财务功能模块的设计与实现 . 174.1 入库部分财务模块的设计与实现 . 174.2 盘点部分财务模块的设计与实现 . 33第五章 项目总结及展望 . 365.1 开发经验总结 . 365.2项目展望 . 36致 谢 . . 38参考文献 . 39第一章 绪论1.1 项目背景物流是指为了满足消费者需要

7、而进行的从起点到终点间原材料中间过程库存、最后产品和相关信息有效流动和储存的计划、实施和提高控制管理的过程。物流这一概念,随着它对商品生产、流通和消费的影响,日益明显并越来越引起人们的注意。目前,物流一词在我国也越来越多地被使用,如在运输行业中,物流公司、物流中心等不断出现。物流对企业在市场上能否取胜的决定作用变得越来越明显。从本质上说企业在市场上的表现主要是由产品的质量、价格以及产品的供给三个在素决定,其中任何一个因素对企业的竞争能力都起着重要的影响作用,而这三个因素都分别直接受到物流的影响。尤其是在顺应经济全球化、信息化和企业竞争战略的要求而产生的第三方物流(Third Party Log

8、istics)“第三方物流”一词于80年代中后期开始盛行,当时它是对物流环节的要素进行外包的一个主要考虑方面。在1988年美国物流管理委员会的一项顾客服务调查中,首次提到“第三方服务提供者”,这种新思维被纳入到顾客服务职能中。它也被用来描述“与服务提供者的战略联盟”,尤其指“物流服务提供者”这种物流形态是由物品供方和需方以外的物流企业提供物流服务的业务模式,是在物流渠道中,由专业物流企业以合同的形式在一定期限内提供用户所需的全部或部分物流服务。第三方物流的概念也可以说源自于管理学中的Out-sourcing (Out-sourcing 意指企业动态地配置自身和其他企业的功能和服务,利用外部的资

9、源为企业内部的生产经营服务)。将Out-sourcing 引人物流管理领域,就产生了第三方物流的概念,即生产经营企业为集中精力搞好主业,把原来属于自己处理的物流活动,以合同方式委托给专业物流服务企业,同时通过信息系统与物流服务企业保持密切联系,以达到对物流全程的管理和控制的一种物流运作与管理方式。因此第三方物流又可以称为合同制物流(Contract logistics)。第三方物流的基本运作模式可由图1-1表示: 图1-1 第三方物流的基本运作模式 在物流业蓬勃发展的今天,相应的物流管理系统也应运而生。关于物流管理的概念,美国物流管理委员会(CLM )给出了如下的定义:1998年以前的定义Lo

10、gistics is the process of planning, implementing and controlling the efficient, effective flow and storage of raw material, in-process inventory, finished goods, service, and related information from point of origin to point of consumption(including inbound, outbound, internal, and external movement

11、s for the purpose of conforming to customer requirements.物流学就是研究对原材料、中间产品、产成品、服务及相关信息从供应始点到消费终点的流动与存储进行有效地计划、实施与控制以满足客户需要的科学。11998年以后的定义Logistics is that part of the supply chain process that plans, implements, and controls the efficient, effective forward and reverse flow and storage of goods, serv

12、ices, and related information between the point of origin and the point of consumption in order to meet customers' requirements.物流管理是供应链流程的一部分,它对从起始点到消费地的前向与逆向的货物、服务及相关信息的流动与存储进行富有效率和效果的计划、实施与控制,以满足顾客的需要。1由此可知,物流管理系统就是应物流企业对订货、进货、盘点、出货、库存结账、客户服务等活动进行有效管理的要求下而产生的。借助于物流管理系统,物流企业就可以有效地完成库存管理,减少商品的积

13、压,避免重复进货,从而实现“零损失”,并可由此获得更充裕的流动资金,对于企业的扩大再发展有着重要作用。同时,物流管理系统还可以提供单据的打印与相关业务的查询功能,节约了大量人力,提高了员工的工作效率。此外,物流管理系统还可为企业的发展提供很好的决策支持,决策者不必亲自下仓库检查,就可以清楚的了解库存情况和销售情况,从而可以对市场及客户进行合理细分,作出发展和投资决策。津菱物流公司是最近在天津开设的一家专门从事物流业务的公司,其主要运作模式为第三方物流运作,规模比较大。在对业务往来和仓库管理上如果没有一个好的管理系统进行辅助,势必公司的效率将大大降低,而且业务上差错的风险会很大。本项目即是开发一

14、套适合津菱物流公司的管理系统软件,此软件是在原良菱系统基础上进行的二次开发,由于津菱物流公司和良菱物流公司在业务上差别比较大,因而所谓的“二次开发”实际上是以原系统作为参考,有些地方还是做了较大的改动,同时,应津菱公司的就财务业务方面的要求,扩充了原系统未有的财务功能模块。考虑到项目组成员对物流行业的业务逻辑都不太了解,熟悉业务流程及运作方式需要较长的时间,加之原系统的设计已经基本实现了一般物流企业运作所需的功能模块,所以在满足津菱公司特定需求的基础上,本项目的开发遵循以下三个原则:对于津菱公司和良菱公司在相同的业务逻辑上实现的核心代码,尽量不做修改。原因不仅在于原系统核心逻辑代码已经由上海罗

15、森物流配送公司进行运行并且证明其正确,还在于这样可以减少程开发维护成本,缩短开发周期。对于两个公司在业务逻辑上有差别的业务逻辑,要么重新定义此模块,要么只对原模块进行较小改动,尽量对两个系统业务相似的逻辑不做太多的改动。因为原系统功能交错性比较强,模块间的耦合度比较高,修改一个模块一般会影响到其它的模块功能的实现。对于原系统未提供的财务业务的功能,在首先符合财务操作规则的前提下,依据原系统的业务流程,在保持已开发完成的物流系统功能不受影响、原系统数据库结构尽量不受改动的情况下,实现津菱物流公司所提出的有关财务业务的功能。关于财务功能模块,在通过与津菱物流公司的财务及仓管人员,就业务流程及操作注

16、意事项进行多次详尽的咨询后,有了较为清楚的认识,同时也对所要实现的功能有了较为明确地了解,并在此基础上完成了一份较为完备的需求分析,已得到双方相关人员的认可。1.2 本文内容对津菱物流系统的基本业务流程经过一段时间的熟悉,以及就津菱公司财务方面的需求进行详细咨询和分析后,在保持与原物流系统兼容的前提下,对于津菱公司所提出的财务功能进行了仔细地设计。在本文中,将系统介绍津菱物流系统新增的财务功能的进货及盘点部分的模块的设计与实现,本文组织结构如下:第一章:绪论。本章主要介绍本项目的背景及第三方物流的概念及运作模式。第二章:津菱物流管理系统的概述。在本章中,对于系统二次开发背景作了简要地介绍,并对

17、津菱物流管理系统的实现模块进行了划分。同时还对本系统开发所用的开发环境、配置环境及应用到的主要技术作概括地阐述。第三章:财务模块的需求分析。在本章中,首先就津菱公司财务模块开发的现实经济性进行了分析,然后给出了一些财务术语的详细解释以及津菱公司第二阶段的财务功能需求。第四章:财务功能模块的设计与实现。在本章中,首先对津菱公司给出的财务功能的需求进行分析,并在此基础上,就新增的入库及盘点部分的财务模块提出了设计上存在的问题,最后对所提出问题进行了一一解决。第五章:项目总结及展望。总结本次项目的开发的体会,并对本项目进一步步地开发提出了自己的看法。第二章 津菱物流管理系统概述2.1 系统开发背景津

18、菱物流公司所作的业务可以说是一种第三方物流的运作模式,有关第三方物流的有关概念已在项目背景中作了较为详细的阐述,简而言之,即由第三方来承担企业物流活动的一种物流形态。津菱公司采取的是混合的经营模式,因此津菱物流管理系统要能够处理以下三种类型的物流业务:零售配送模式,即一些连锁店集团,例如华润、物美等,向多个供应商购买商品,委托津菱对这些商品进行接受、存储、分拣、配送到该连锁店集团的各个门店;自营批发模式,即津菱公司在分析、预测客户的需求的基础上,主动向供应商发出订货请求,购置多个商品,向自己联络的客户进行配送;厂家配送模式,即某些客户提前向某个供应商购置了某些商品,供应商主动向津菱提出配送要求

19、,并将客户所购置的商品配送出去。就这三种模式来讲,无论哪种模式,其物流的次序都是相同的:供应商 津菱 客户,其中,供应商是物资的提供者。津菱是物资的仓储、分拣、运输者。客户或者是物资的销售者,例如华润、津工等,或者是物资的直接消费者,例如将这些物资当作原材料来生产其他产品的厂家。三种模式的区别在于是谁拥有物资。这样,如图2-1所示,存放在津菱的每一件商品都具有一个库存名义:到底是谁购置并在财务上拥有该商品。津菱公司要求一个存储仓位只能够存放一个名义下的商品。同时,在做分拣操作的时候,对于每一种名义,都有一个独立的分拣线。以上这些约定也有一定的缺点,就是对仓库空间、设备的要求比较大,有些浪费。

20、图2-1 津菱公司的业务类型津菱公司的一般业务工作流程可由下图2-2表示 图2-2 津菱公司工作流程 2.2 系统功能模块的划分 由于原系统的开发商TES 公司在设计该系统时,试图完成一个通用系统,该系统能够满足尽可能多个用户的各自不相同的需求。然后,针对某个用户的特殊需求,将系统中的某些功能 Disable 掉,再做一些必要的修改。这个做法虽然具有一定通用价值,但不可避免地也存在着缺陷:系统的源代码以及数据库中的表都含有大量与津菱公司业务不相关的部分。 通过与津菱物流公司就其所需要的业务功能的进行多次需求咨询后,依据津菱业务逻辑,对原系统作了大量的简化和重新设计、编码后。津菱物流管理系统实现

21、了包括从商品订购入库、仓库内部管理以及配送出库的整个过程的管理,其基本运作流程可由图2-3表示。 图2-3 津菱物流管理系统基本运作流程总体上来说,津菱物流管理系统可划分为八大功能模块,他们共同配合完成了整个物流运作的管理,其中每个功能模块下面又包含了各自的子功能模块。其主要功能模块可由图2-4表示。系统基本信息设置,其中包含对打印的设置和用户密码的更改功能的实现仓库基本信息设置,其实现了对分拣仓位的设置、空仓位的生成以及导入导出数据等功能。商品的进货管理,其中包括了向供应商订货与登记入库、进货红冲、与供应商退货以及涉及进货入库环节各种单据的打印等功能。门店要货管理,其包含了要货单录入、门店退

22、货、要货信息以及欠品历史信息的查询等功能。商品配送出库管理部分包括了配送启动、配送出库以及相关单据打印的功能。仓库内部管理,其主要实现了库存维护、商品封仓、移库、盘点、手工损益、仓位优化以及库存查询等功能。库存商品信息查询,该部分实现了基本商品信息、库存商品信息、进货入库金额 统计入库查询库存查询 出库查询 盘点查询 进销存 统计 出库金额统计信息和配送出库信息等的查询功能。财务管理,该部分实现了进货实价入库、盘点损益、销售部分的财务以及导出财务数据等功能。 图2-4 津菱物流管理系统功能模块图 2.3开发环境及应用到的主要技术硬件环境:稳定服务器软件环境:Redhat Linux 7.3,

23、Sybase 12.5硬件环境:普通PC 机软件环境:Microsoft 公司Windows 2000 server操作系统硬件环境:奔腾2.4G Hz CPU,512M DDR内存,17寸纯平显示器、显存64M ,80G 硬盘。软件环境:Windows2003 Server,Powbuilder7,Sybase Central3.1,PowerBuilder 中的DataWindow 技术PowerBuilder 技术中,数据窗口(DataWindow )可是说是其核心的核心,它使得数据库的开发和应用变得更加简单、快捷。DataWindow 可以说是一种为正在被观察的数据保留数据信息的特有对

24、象,DataWindow 可以多种不同的风格来显示数据源的数据。因此,它是一个高质量的数据库事务应用程序开发的强大的处理工具。数据窗口对象的主要功能是显示数据并允许用户修改,因为在数据窗口对象中包含两个主要组件:数据信息和显示格式。数据窗口需要数据库和其他非数据库的数据资源来组装自己,它按照定义时制定的表现风格显示,并且DataWindow 提供了动态的数据装载功能。用户定义了表现风格后,可以对其进行进一步的修改,以增强数据窗口的功能。数据窗口不但自身显示数据还可以作为生成所有报表的数据源。在一个实际的应用程序处理过程中,数据窗口一般位于应用程序和数据库中间,按应用程序的要求来检索,操纵并显示

25、数据。Datawindow 控件除具有Windows 的窗口的属性与事件还有自己独特的函数与事件,如Retrievestart 、Retrieveend 、SqlPreview 、Printpage 等事件与Update ,Reset 等函数。这些事件有些是系统自动触发的如Dberror,SqlPreview 等,这些事件一般都有参数或有相关函数可以获得事件信息,因此我们可以在这些事件中获得、 修改数据处理信息。Datawindow 函数需要手工调用,包括有关于后台数据处理的Datawindow 控件函数,与SQL 语言类似,是SQL 语言在Datawindow中的表示;有前台数据处理的Dat

26、awindow 控件函数如Getitem,Setitem等;还有前后台协调的函数Retrieve 等。Datawindow 定义了数据的显示界面属性及与该Datawindow 相关的数据库对象的数据操作属性。在津菱物流管理系统中,DataWindow 占据了非常重要的地位,是操作服务器端数据库的强有力的面板。Sybase 数据库中的存储过程存储过程是由用户创建的、驻留在服务器的一组Transact SQL查询语句。存储过程能够改善应用程序的性能。存储过程是在创建时编译的,当存储过程第一次执行时,SQL Server产生查询执行计划并将其存储进来,以利于将来使用。使用存储过程可使系统性能得到提高

27、,因为此时发送到服务器的语句只是一条存储过程的EXECUTE 语句,而不是庞大的、复杂的查询。这种特性能降低网络的流量。除了性能方面的改善外,存储过程还提供了方便地集中维护应用程序的功能。如果将查询嵌入到应用程序中。而又需要对查询进行改变,则应用程序需要重新编译,并重新发布到所有的客户端。而在存储过程中,修改对用户而言是透明的,它只需要在服务器上重新编译存储过程。同时,存储过程还能提供安全机制,尽管用户可能无权执行存储过程中的命令,但它却可能有权执行存储过程本身。有时候,系统管理员不会给用户以数据修改(UPDATE 、INSERT 和DELETE )的权力。创建的存储过程却能进行这些操作。当然

28、用户需要拥有执行该存储过程的权力。在津菱物流系统中,存储过程的大量使用,也一方面提高了系统的运行速度,另一方面,也保证了系统的稳定性。Sybase 数据库中的游标使用游标(CURSOR )在需要一行一行处理时,游标十分有用。游标可以打开一个结果集合(按照指定的标准选择的行),并提供在结果集中一行一行处理的功能。基于游标的类型,可以对其进行回滚或者前进。 在津菱物流系统中,游标技术也被大量的使用于数据查找、数据库更新等方面。这一技术的应用,既有利于提高操作人员的工作效率,也有利于操作人员迅速判断被操作对象的状况。第三章 财务模块的需求分析3.1 扩充财务功能的现实经济性的分析津菱物流系统基本实现

29、了物流部分的进货、销售以及库存管理等的功能。由于津菱公司财务业务上的需要,要在原系统的基础上增加财务业务的功能。这样做有两大优势:I. 在已基本完成的物流系统上增加财务功能,将比较容易从物流系统的数据库表中导出财务业务所需的数据。从实现上以及开发费用和周期上来说,在已有系统上进行扩充将比重新开发新的系统,开发难度都会大大的减少。并且从津菱的业务流程可知,新的财务系统在数据库的数据上会与物流系统存在相当大一部分重复,这可以产生两种情况:两系统使用同一数据库,这将不可避免的产生同时访问数据库的情况,并且为物流系统建立的数据库的表中很多字段对于物流系统是非常重要的,而对于财务系统却是没有价值的。由于

30、存在两个不同的系统,并且两系统的业务逻辑及流程存在着很大的差异性,因此不能在财务系统很好的控制对于这些字段的访问。如果财务人员不慎修改了这些字段,对于财务没有影响,但却有着仓库管理不能很好运行的重大隐患。两系统使用两个不同的数据库,这一方面,浪费了数据库空间。另一方面,也是最重要的,这将带来了保持两数据库数据一致的问题II. 为财务人员提供了很好的查询及批处理功能,这将大大减少财务人员的复杂程度和工作压力,也更进一步减少了出错的概率。基于以上两点原因,增加津菱物流系统的财务模块具有一定的现实经济性和必要性。3.2 有关津菱公司财务功能的需求在通过与津菱公司的财务人员就业务逻辑、流程以及所需实现

31、的功能进行多次面谈咨询后,得到如下功能需求:一、首先需要就财务功能模块涉及的术语加以明确:会计科目:就是对会计核算单位的资产、负债、权益按其不同的特点和经济业务过程核算的需要进行分类核算的项目,按照有关规定一级会计科目必须以中文命名,并有一个标准的科目代码,不同行业的会计科目会有所不同。(例如:资产类项目,可以分别设置“现金”、“银行存款”、“应收账款”、“库存商品”、“固定资产”等会计科目;应当为各种资金来源项目,分别设置“固定基金”、“流动基金”、“银行借款”、“应付账款”等会计科目。设置会计科目对于正确运用填制凭证、登记账簿和编制报表等核算方法,都具有重要的意义)会计分录:就是在记账凭证

32、中指明某项经济业务应借、应贷的账户名称以及应记入账户的金额,即一笔业务的记录。编制会计分录,要以反映经济业务发生的原始凭证作根据,以保证会计核算的客观性,也便于事后检查。会计分录有简单会计分录和复合会计分录,简单会计分录只涉及两个账户,复合会计分录涉及两个以上的账户。K/3软件系统: K/3财务管理系统突出了面向中、大型企业和集团型企业用户的应用功能。一方面在技术上保证了大规模并发用户使用的稳定性;另一方面,除普通财务管理的应用功能之外,还提供了集团控制、结算中心等功能模块,结合管理会计的功能模块,极大地加强了各种类型企业用户的财务管理和控制功能,提高了企业的财务运筹能力。K/3软件系统分成了

33、数据库、中间件、具体应用三层。二、财务功能模块涉及的软件系统及所要实现的目标:物流软件系统(即本系统)的功能概述物流软件系统具有物流方面进、销、存的功能。财务软件(即金蝶K/3)系统的功能概述津菱公司所购买的K3软件系统中具有总账,应收应付两个功能的模块。金蝶K/3 系统中,在会计科目体系是树形结构的,可以进行分级管理。 财务模块所要实现的目标是将物流软件与财务软件相结合 物流软件与财务软件相结合的目的物流软件主要处理商品的进货、库存管理、销售出库,而不具备财务上的功能,不关心商品的价值。财务软件只关心商品在财务上的处理,不关心商品的进、出。但是每当有实物进、出,并开出发票时,都要通告K/3生

34、成会计凭证信息,此时由于K/3不支持数据导入,需要把物流软件已经录入过的商品信息再次手工录入一遍,造成了重复劳动,也容易产生错误。 出于安全的考虑,财务部门的计算机不能够通过网络与物流部门的计算机相连。因此,财务模块将针对物流业务中自营批发过程的财务处理实现生成会计凭证信息,与津菱公司所使用的金蝶K/3财务软件的凭证接口标准配套, 使得用物流软件生成的会计凭证信息, 可以按约定格式导出,通过存储介质传递到K/3软件系统,由K/3软件系统负责转换成相应的会计凭证。生成会计凭证信息的环节需要生成会计凭证信息的环节有:估价进货、估价进货冲红、实价入库,退换商品,盘点损溢处理,商品销售出库,商品成本计

35、算。如实现从进货到销售环节的全程的会计凭证信息处理,应当增加和扩展销售出库模块的功能。本文将在下面章节就本文所涉及到的财务模块中的估价进货、进货红冲、实价入库、盘点损益做详细的阐述。K/3需要的凭证信息格式凭证信息是由多条记录构成的,每一条记录描述了物流部门所进货的某一种商品的详细信息。而且每一条记录对应着财务部门会计凭证中的一条会计分录。每一条记录包含以下基本信息:* 凭证信息生成日期* 该商品的供应商编码* 该商品的编码* 该商品的进货数量* 该商品的单价* 该商品的金额* 该商品的税额据该凭证信息包,K/3软件系统将生成一张会计凭证。凭证信息包可单个传输或多个一起传输。本模块应该能够防止

36、某个凭证信息包被漏传,或者由于误操作被多次传输。但是本系统应该能够允许用户由于某些原因(比如上次传输失败)对某个信息包有意多次传输。在系统运行过程中,如果有新的供应商或新的商品品种出现,需要津菱物流系统的使用者,首先将这些更新信息加入到津菱物流系统中,然后通知K/3软件系统的使用者将这些更新信息加入到K/3软件系统中,再进行凭证信息传递工作。三、本文所涉及到的财务模块的方面的需求I. 采购进货阶段基本业务流程当物流部门接收到供应商送来的商品并做了进货操作后,打印进货四联单,其中一联送财务部门进行会计核算,同时需要向财务部门传递这些进货单的会计凭证信息,以供财务部门生成进货会计凭证。一般情况下津

37、菱公司首先向供应商下定单,由于一张定单上可定品种数量有限制,最多30(6)种商品,所以如果所订商品比较多时,应该下几张定单,每张定单上有一个不同的定单号码。供应商按照定单送货, 一次送货只开具一张送货单,即可以多个定单对应一张送货单 ,一张送货单对应一张销售发票。商品入库时开具进货单,一张进货单上可进品种数量有限制,也是最多30种商品,那么进货时一张送货单可以对应一张或一张以上进货单, 进货单的号码与定货单的号码是一致的, 没到的货数量用零来记录, 一张送货单对应生成一次会计凭证信息, 到货数为零的商品不生成会计分录。估价入库、估价红冲、实价入库在进货时,如供应商的销售发票和货物同时到达,则凭

38、证信息中的商品单价就是供应商销售发票中的商品单价,也就是该商品的实际单价。否则凭证信息中的商品单价为津菱公司根据以往业务历史记录,对该商品估计的一个单价,即估价。1 估价时应考虑以下两种因素:一是处在不同时期会有不同的价格浮动,二是按所要数量不同供应商会给出不同的折扣。2 估价是可以改变的。3 估价出现在以下三种情况:商品基本信息导入时、下定单时和商品进货时。当生成会计凭证时, 价格是不能改变的, 应等于商品进货时的价格。当有估价情况发生的时候,我们称对该商品的进货为估价进货,估价进货不需要计算进项税额。当经过一段时间后(最长可达3个月),厂家销售发票到达津菱公司的时候,需要将该商品的估价更新

39、为厂家销售发票中的实际价格。此时需要做以下会计业务处理:将该商品的估价进货的记录红冲掉(红冲就是根据以前估价进货进货单的数量、单价、合计金额,生成一个负数表示的相同的进货单如:进货时数量为-5单价为-10金额为-50,则做红冲的进货单时数量为-5单价为-10金额为-50)。估价与销售发票上的实际价格有出入,但在财务上规定不能有改动,所以需要将上次的记录取负值以红色的形式再生成一次会计凭证, 然后按照销售发票上的实际价格又生成一次会计凭证。会计凭证的生成是由津菱物流系统生成一个凭证信息包并将其传递给K3系统,再由K3系统将生成一张会计凭证。II. 盘点损益库存盘点能够及时了解库存账面与实际的差距

40、,调整、结清保证了库存账面与实际相符。津菱公司根据公司的规定进行定期或不定期的商品盘点工作,按照需要也可以分成全盘和部分盘。盘点的流程是:初盘数据导出,盘点启动,复盘数据导入,盘点复核。津菱物流系统会根据需要生成盘点表,由津菱公司组织盘点工作形成盘点数据表,导入津菱物流系统,由津菱物流系统计算出商品盘点盈亏情况表,经复核后打印出商品盘点盈亏情况表,每种商品具此产生调增或调减商品数量和金额的一条记录,并生成相应商品损溢处理的会计凭证信息,津菱物流系统将生成一个凭证信息包并将其传递给K/3系统。根据该凭证信息包,K/3系统将生成一张会计凭证。当盘点没有生成损益时就不需要生成会计凭证信息。第四章 财

41、务功能模块的设计与实现4.1 入库部分财务模块的设计与实现在对津菱公司就采购进货部分的需求和财务业务流程进行详细分析后,入库部分财务模块设计与实现可由下面章节加以阐述。根据津菱公司有关进货的实际的财务业务流程,并依据基本已开发完成的物流系统的操作流程,对于津菱公司采购进货部分财务业务进行分析后,其基本业务流程可由图4-1表示,并在此基础上对其财务业务的运作进行了简化性地规定:津菱公司在购货前首先应先向供应商下订单,由于物流系统产生的订单为六联单,即一次订货可能会对应多个订单,也即一次订货可能对应多个订单号。供应商为津菱公司送货时,必须出据一张送货单,发票可以随同到达也可以迟于到达。由于在津菱的

42、财务业务中,存在着送货单与厂商销售发票一一对应的关系,并考虑为了以后查询的方便,需要为系统设定一个唯一标识的字段,在经过对物流系统仔细分析后,选定系统暂时未用的送货单号作为该唯一标志字段。即送货单号与销售发票单号是一一对应的,这就要为物流系统的进货的子模块中增加判定送货单号唯一性的功能。对于实价入库的需求分析,为了保证物流系统的仍能正常运作,解决方法是,可以对数据库的相应表的原始记录进行修改,使之成为估价入库记录,随后在该表中添加一条红冲记录和一条实价入库记录,并使得实价入库记录的各字段除价格外,均与原始记录一样。只要保证物流系统对数据库表的操作只能访问的是最新添加的实价入库的记录行,不能访问

43、到估价入库记录和红冲记录,而财务功能模块可以取到上述三条记录,那么问题就可以加以解决了。 图4-1 津菱公司进货阶段的基本业务流程做出上述分析和决定后,将面临了两个必须解决的问题。问题一: 已实现的津菱物流系统入库部分的对送货单号的操作为,在登记入库阶段,由操作人员手工录入。由于手工录入送货单号,难免会产生操作失误,那么对送货单号的修改,原系统没有提供相应的功能。并考虑到由于只是送货单号出现误差,而入库商品,在数量和价格上,没有任何变化。从财务逻辑上考虑,对于送货单号修改地处理,不能通过财务上的红冲实现。问题二: 送货单号唯一性的判定。由于津菱物流系统对送货单号的处理,只是作为一个普通字符串,

44、并未对其唯一性作严格的约束。除了上述两个问题外,还有一个最重要的,即实价入库功能的实现的问题。要实现该功能,需要对数据库的相应表作如下处理:首先将数据库中相应表的原始记录的状态标志作更改,并在相应表中插入一条红冲记录,即将原始估价的数量和价格都红冲掉,最后还要在表中插入一项实价记录。在入库部分财务模块的设计中,已经详细讨论了实现该功能,需要解决的问题。下面部分将对上述问题,做出相应地解决。I. 问题一的解决:登记入库阶段,涉及到的数据库的表为Tbh_Order、Tbd_StkReg,送货单号对应于Tbd_StkReg中的ProvSupplyNo 的这一列。因此,对于送货单号的修改需要更新Tbd

45、_StkReg中的相应的ProvSupplyNo 的一列。为实现该功能,在物流系统的登记入库相应界面W_imp_all上,添加一个名为“修改”的按钮,当操作人员点击该按钮时,送货单号一列为可编辑状态,输入新的送货单号后,再点击“入库”,即完成了对送货单号的修改。实现该功能时,为物流系统新添加了一个转变状态,即状态Modifing_ProvSupplyNo。系统的状态图如图4-2: 图4-2 状态图页面初始调出来时,处于Initial 状态,然后由状态决定变量ll_AllStautus0、 ll_AllStautus5、ll_AllStautus10分别决定此时系统将进入状态Editing_Ar

46、tiInfo、Editing_CellInfo、Import_ConFirmed。当操作人员点击“修改”按钮后,即进入状态Modifing_ProvSupplyNo;完成修改后,点击“入库”按钮,即进入入库提交阶段。实现的代码如下:当操作人员点击“修改”按钮后,系统状态转变为Modifing_ProvSupplyNo。此时即可进行对送货单号的修改。choose case is_state/*物流系统其他的几个状态*/case "Modifing_ProvSupplyNo"/*物流系统的状态为可修改送货单号时 */set ProvSupplyNo = :ls_ProvSupp

47、lyNowhere Tbd_StkReg.OrdId in(select Tbh_Order.OrdIdfrom Tbh_Orderwhere Tbh_Order.OrdNo = :ll_OrdNo ;/*更新数据库中Tbd_StkReg表的ProvSupplyNo 的值*/ for ll_aiRow = 2 to dw_artiinfo.rowcount(nextof_SwitchState("Import_Confirmed" /*转化状态到确认状态*/ return 1end choose其中,dw_artiinfo为一个datawindow ,在其中显示了登记入库的

48、商品信息,包括了送货单号;of_SwitchState为自定义的一个处理状态转变的函数;在更新语句中的OrdNo 为订货单号。II. 问题二的解决:对于送货单号唯一性的判断,是在一个自定义函数of_checkprovsupplyno( returns integer中实现的。实现的代码如下:/*return : 2-送货单号在同一张订单中不唯一;0-送货单号在数据库中已经存在;1-送货单号合法*/long ll_aiRow /*用于datawindow dw_artiinfo中行数的计数*/string ls_ProvSupplyNo /*送货单号*/for ll_aiRow=2 to dw_

49、artiinfo.rowcount(goto ProvSupplyNo_not_exclusive end ifnext/*用于判断dw_artiinfo中ProvSupplyNo 的一列是否是一致的,因为在物流系统实现时同一订单必定对应单一的送货单号。如果不一致即跳转到ProvSupplyNo_not_exclusive ,然后退出*/DECLARE cur_ProvSupplyNo CURSOR FORSELECT distinct ProvSupplyNoFROM Tbd_StkReg;OPEN cur_ProvSupplyNo;dostring ls_psnfetch cur_Prov

50、SupplyNo into :ls_psn; if (sqlca.sqlcode <>0 then exitif ls_psn<>ls_ProvSupplyNo thencontinueelsegoto ProvSupplyNo_have_existed;loop while truereturn 1/*由游标cur_ProvSupplyNo在表Tbd_StkReg中搜索dw_artiinfo的ProvSupplyNo 的值是否已经在数据库中存在了,如果存在将跳转到ProvSupplyNo_have_existed */ProvSupplyNo_not_exclusiv

51、e:messagebox("提示"," 送货单号应该唯一!"return 2ProvSupplyNo_have_existed:close cur_ProvSupplyNo; /关闭游标cur_ProvSupplyNostring ls_impDateList=" "int nDeclare cur_ImpDate Cursor ForSelect ImpDatefrom Tbd_StkRegwhere ProvSupplyNo = :ls_ProvSupplyNo;open cur_ImpDate;dodatetime ld_imp

52、Date;fetch cur_ImpDate into :ld_impDate;if(sqlca.sqlcode<>0 then exit ls_impDateList=ls_impDateList+string(date(ld_impDate+" "loop while trueclose cur_ImpDate;/*提示操作人员,此时输入的送货单号,已经于某年某日登记于数据库中*/n=messagebox("提示"," 送货单号已经于"+ls_impDateList+"输入!请确认送货单号是否同一?(Y/N&

53、quot;,Exclamation!, OKCancel!, 2if n = 1 thenreturn 1elsereturn 0end if/*对于数据库中已存在的送货单号,由于物流系统实现时,送货单号和订货单号是一对多的关系,因此,有可能存在虽然dw_artiinfo中ProvSupplyNo 在数据库中已经存在,但并不违法的情况。具体的情况将由操作人员自主判断*/III. 实价入库功能的实现经过对物流系统反复运行及查阅与无税价有关的各表的记录变化情况,明确了实价入库功能实现涉及到的数据库表为:Tbd_StkReg和Tbd_StkLoc。为了新增功能不影响原物流系统正常的运作,为Tbd_StkReg的BussEventId 添加了两个新的状态值:14原始价格,15实价入库红冲;分别表示原始价格入库的记录和红冲记录,这也是以后查询原始记录和红冲记录的标志,并且原物流系统由于取不到BussEventId=14或15的记录,因此不会对原系统的运行产生影响。为实现该功能,首先为物流系统添加了一个“入库财务”的界面,主要的界面元素为:window w_imp_realin,datawindowdw_

温馨提示

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

评论

0/150

提交评论