资源描述
超市管理数据库—数据库原理与设计课程设计
《数据库原理与设计》课程设计
(含完整设计资料)
一、超市管理数据库
超市需建立一个管理数据库存储以下信息:
*超市信息包括超市代号,超市名,经理名及超市运营开销。
*一个超市内有多个部门,每个部门有部门号、部门主管姓名、地址,电话及每个月的部门运营开销。
*每个部门有多个员工,每个员工有员工号、姓名、年龄、性别,职位及月工资。
*每个部门销售多种商品,商品有商品号、商品名、规格,采购成本和零售价格、批发价格。
*商品采购自供货商,供货商有供货商号,供货商名,联系电话,联系地址。
*所有的商品存在商场或仓库中。
*商场有多个仓库,仓库有仓库号,仓库管理姓名、电话及仓库的运营成本。
应完成的主要功能:(1)基础信息管理功能,如超市信息的管理功能,包括录入、修改、查询、输出超市的信息;部门信息的管理功能,包括录入、修改、查询、输出部门的信息;还有员工,商品,采购商,仓库等的信息管理功能。(2)超市的进销存功能模块,包括进货,销售,库存以及超市盘点等常见功能。 (3)超市的利润统计功能,包括月利润和年利润统计。并能输出各种报表,如员工工资月报表,年报表;每个部门销售的商品数量的月报表;仓库存储商品数量的月报表;超市运营开销和部门运营开销的月报表等。
二、开发环境
数据库选用微软的SQL SERVER。开发环境可以选择:(1)Delphi; (2)Visual Basic; (3) C++ builder; (4) Visual C++;(5)Visual C#;(6)自选。只选择其中的一种软件开发工具实现即可。
三、基本要求
(1)完成上面所提及的所有需求
(2)要求撰写不少于2500字符的Word文档。
(3)文档中至少要包括:ER模型图、系统功能图、数据字典、表关系的详细说明。
(4)用户界面设计:采用图形界面菜单驱动,界面要友好,操作要简单,C/S和B/S架构自由选择。
(5)用户手册,描述软件系统所具有的功能及基本的使用方法。使用户能了解该软件的用途,并能确定在什么情况下、如何使用它。
四、文档格式
1、概述
包括项目背景、编写目的、软件定义、开发环境等内容。
2、需求分析
问题陈述、需完成的功能。
画出ER模型图
3、数据库逻辑设计
把ER模型图转换为关系表。
描述每一个基本表关系。要求所有关系达到BCNF范式。
定义视图、定义索引、主关键字、定义权限。
4、软件功能设计
画出软件功能图。
描述每一个功能所完成的任务情况。
5、界面设计
界面设计要合理。
6、结束语
写出完成本课程设计的心得,领会数据库理论与软件开发实践的关系。有哪些收获。软件还需要哪些改进。
7、参考文献。
评分标准:
1. 优――完成上述题目的所有内容,并能适当扩展需求功能,功能完善,文档详细,数据库设计合理,人机接口界面好。
2. 良――完成上述题目的大部分内容,功能完善,文档详细,数据库设计合较理,人机接口界面较好。
3. 中――完成上述题目的大部分内容,功能基本完善,文档较详细,数据库设计基本合理,有基本的人机接口界面。
4. 及格――基本完成上述内容,只有基本功能文档。
不及格――未按时完成上述内容,或者抄袭(雷同者全部为不及格)。
第1节 课程设计背景及意义
1.1课程设计背景
随着我国改革开放的不断深入、经济飞速的发展,企业要想生存发展,要想在激烈的市场竞争中立于不败之地,没有现代化的管理是万万不行的。作为现代社会的一部分,超市必须适应社会的发展,因此实现超市的信息化管理是很有必要的。
在传统的手工管理中,往往是用人工清点的方式来掌握超市中现有的商品,使用手工记账的方式来掌握商品的进货和销售情况。这种方式在商品数量较少、商品库存变换少的情况下,不失为一种较好的方法。但是,在目前的大中型超市中,往往需要处理的商品种类数以千计,而且每天所发生的进货和销售情况纷繁复杂。如果要借助人工来实现这一系列数据的记录和管理,工作量将非常巨大,而且容易出现错误,造成管理上的混乱,更何况还需要对商品的数据进行统计和分析。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已被人们所认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对超市信息进行管理有着手工管理所无法比拟的优点,例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高超市管理的效率,也能使超市步入科学化、正规化的管理。基于这些问题,为了使超市管理工作规范化、系统化、程序化,避免超市管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效地查询和修改商品情况,建立一个超市管理系统是非常必要的。
1.2课程设计意义
超市管理系统用计算机管理超市库存进出管理和销售的一种计算机应用技术的创新,在计算机还未普及之前库存管理和销售都是由工作人员手工书写的方式来操作的。现在一般的超市都采用计算机智能化管理,采用计算机作为工具的实用的计算机社区超市管理程序来帮助管理员进行更有效的超市管理工作。社区超市管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的信息化进程是必可少的。
超市管理系统依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效。
第2节 需求分析
2.1业务需求
通过与超市人员的交流,发现超市管理系统需要满足来自多个不同用户的要求。在超市中,按照超市人员的职能分为六大类,分别是销售员、采购员、经理、系统管理员、仓库管理员、顾客(注册和非注册)。系统管理员的要求是掌握超市内部的所有业务,包括销售信息、进货信息、商品信息,具有超级用户的所有权限,对超市实行全面管理。销售员的要求是查看所有销售信息,查看符合条件的销售信息以及增加销售单。采购员的要求是查看所有采购信息,查看符合条件的采购信息,增加采购订单以及更改进退货状态。超市经理的要求是能够查看进货信息、销售信息以及库存信息。而顾客是超市的上帝,超市一切都是为顾客服务。本系统中顾客要求是可以现场买商品,采购信息有采购编号、采购日期、商品厂商、采购员、商品的价格、商品规格、进货商品的数量等属性。同时超市还可以进退货并有相应的付款表。通过与超市管理人员进行反复的讨论,确定系统应该实现以下功能:
(1)对商品信息的变动进行处理 在商品的进销过程巾,商品信息总是在不断变化的。比如商品价格的调整、商品信息的修改、新商品信息的增加以及商品信息的删除,因此设计系统时必须考虑到这些情况。
(2)用户信息的变动进行处理。需考虑到新会员的注册和已注册,设置会员折扣用户的信息的修改及删除。
(3)对顾客采购信息的变动进行处理。采购信息的过程中采购信息也在不断发生改变,因此也要充分考虑。
(4)查询及统计功能。要求可以根据指定的条件对商品信息、用户信息和采购信息、销售信息进行查询和统计。
(5)对库存商品信息的变动进行处理。要求可以根据库存的状态进行相应的进退货。
2.2功能需求
2.1.1零售前台(POS)管理系统
商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊的商品扫描录入。该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入。
收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总消费金额中。 会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。
安全性:OS登陆、退出、换班与操作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法操作。
独立作业:有的断网收银即在网络服务器断开或网络不通的情况下,收银机仍能正常作业
2.1.2后台管理系统
进货管理: 根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。 按计划单有选择性地进行自动入库登记。 综合查询打印计划进货与入库记录及金额。
销售管理: 商品正常销售、促销与限量、限期及禁止销售控制。 综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。 按多种方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。
库存管理: 综合查询库存明细记录。 库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。 库存自动盘点计算。
人员管理:员工,会员,供应商,厂商等基本信息登记管理。
2.3数据需求
2.3.1顶层数据流程
超市人员
超市管理系统
系统时间
顾客
2.3.2第0层数据流程
处理查询
处理要求
检查有效性
2.3.3第1层数据流程
要求处理类型
采购信息
销售信息
商品信息
用户信息
库存信息
第3节概要设计
3.1概念结构设计
3.1.1员工信息E-R图设计
密码
薪资
卡号
性别
姓名
职务
员工表
3.1.2商品信息E-R图设计
数量
商品信息表
厂商
供应商
编号
条形码
单价
种类
名称
3.1.3供应商信息E-R图设计
供应商信息
名称
编号
电话
地址
3.1.4商品销售信息E-R图设计
供应商
商品销售表
名称
价格
数量
编号
时间
3.1.5出库/入库信息E-R图设计
进货价
出/入库表
制单人
经手人
仓库号
编号
时间
数量
3.2逻辑结构设计
3.2.1系统关系模型
a) 商品信息表(商品编号,商品名称,价格,条形码,数量,厂商编号,供货商编号)
b) 员工表(用户编号,用户名称,用户密码,用户类型)
c) 商品销售表(销售编号,商品编号,销售数量,销售金额,销售日期)
d) 入库/出库表(入库编号,入库商品编号,入库数量,入库日期)
e) 供货商表(供货商编号,供货商名称,供货商地址,供货商电话)
f) 厂商表(厂商编号,厂商名称,厂商地址,厂商电话)
3.3数据库模式定义
商品信息表(MerchInfo)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
MerchID
int
4
Not null
商品编号
MerchName
Varchar
50
Not null
商品名称
MerchPrice
Money
4
Not null
价格
MerchNum
Int
4
Not null
库存数量
BarCode
Varchar
50
Not null
条形码
FactoryID
Varchar
10
Not null
厂商编号
ProvideID
Varchar
10
Not null
供货商编号
员工表(Menber)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
UserID
varchar
10
Not null
员工编号
UserName
Varchar
25
Not null
员工名称
UserPW
Varchar
50
Not null
员工薪资
UserStyle
Int
4
Not null
员工职务
UserSex
Varchar
10
Not null
员工性别
销售表(Sale)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
SaleID
Varchar
10
Not null
销售编号
MerChID
Varchar
10
Not null
商品编号
SaleDate
Datetime
8
Not null
销售日期
SaleNum
Int
4
Not null
销售数量
SalePrice
Money
4
Not null
销售单额
入库/出库纪录表(Stock)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
StockID
Varchar
10
Not null
入库编号
MerchID
Varchar
10
Not null
入库商品编号
MerchNum
Int
4
Not null
入库数量
MerchPrice
Money
4
Not null
单额
StockDate
Datetime
8
Datetime
入库日期
PlanDate
Datetime
8
Datetime
计划进货日期
供货商表(Provide)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
ProvideID
varchar
10
Not null
供货商编号
ProvideName
Varchar
50
Not null
供货商名称
ProvideAddress
Varchar
250
供货商地址
ProvidePhone
Varchar
25
供货商电话
厂商表(Provide)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
FactoryID
varchar
10
Not null
厂商编号
FactoryName
Varchar
50
Not null
厂商名称
FactoryAddress
Varchar
250
厂商地址
FactoryPhone
Varchar
25
厂商电话
第4节 数据库实施阶段
4.1安全性设计
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。
信息系统尽管功能强大,技术先进,但由于受到自身体系结构,设计思路以及运行机制 等限制,也隐含许多不安全因素。常见因素有:数据的输入,输出,存取与备份,源程序以及应用软件,数据库,操作系统等漏洞或缺陷,硬件,通信部分的漏洞,企业内部人员的因素,病毒,“黑客”等因素。因此,为使本系统能够真正安全,可靠,稳定地工作,必须考虑如下问题:为保证安全,不致使系统遭到意外事故的损害,系统因该能防止火,盗或其他形式的人为破坏。
1) 系统要能重建
2) 系统应该是可审查的
3) 系统应能进行有效控制,抗干扰能力强
4) 系统使用者的使用权限是可识别的
SQL Server提供多层安全。在最外层,SQL Server的登录安全性直接集成到Widows NT/2000的安全上,它允许Windows NT服务器验证用户。使用这种"Windows 验证"SQL Server就可以利用Windows NT/2000的安全特性,例如安全验证和密码加密、审核、密码过期、最短密码长度,以及在多次登录请求无效后锁定帐号。
4.2完整性设计
数据库完整性是指数据库中数据的正确性和相容性。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以通过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。通过DBMS实现的数据库完整性按照数据库设计步骤进行设计,而由应用软件实现的数据库完整性则纳入应用软件设计
数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:
1.数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。
2.利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS的完整性控制机制是集中管理的,因此比应用程序更容易实现数据库的完整性。
3.合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。比如装载大量数据时,只要在装载之前临时使基于DBMS的数据库完整性约束失效,此后再使其生效,就能保证既不影响数据装载的效率又能保证数据库的完整性。
4.在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。
在实施数据库完整性设计的时候,有一些基本的原则需要把握:
1.根据数据库完整性约束的类型确定其实现的系统层次和方式,并提前考虑对系统性能的影响。一般情况下,静态约束应尽量包含在数据库模式中,而动态约束由应用程序实现。
2.实体完整性约束、参照完整性约束是关系数据库最重要的完整性约束,在不影响系统关键性能的前提下需尽量应用。用一定的时间和空间来换取系统的易用性是值得的。
第5节 详细设计
5.1模块简述
系统总体结构
小型超市零售管理系统
前台POS销售系统
后台管理系统
商品录入
收银业务
入库管理
销售查询
库存管理
人员管理
5.2模块设计与实现(部分界面)
5.2.0登陆界面
5.2.1员工登陆界面
5.2.2商品信息界面
5.2.3员工信息界面
5.2.4供应商信息界面
第6节 总结
通过此次的课程设计,我学到了很多知识,跨越了传统方式下的教与学的体制束缚,在设计报告的写作过程中,通过查资料和搜集有关的文献,培养了自学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习方法上的一个很大的突破。在以往的传统的学习模式下,我们可能会记住很多的书本知识,但是通过课程设计,我们学会了如何将学到的知识转化为自己的东西,学会了怎么更好的处理知识和实践相结合的问题。
通过这次超市管理系统课程设计,让我充分运用自己所学的知识,让我明白只有单纯的理论知识是远远不够的,只有通过实际的锻炼才能更好的运用所掌握的基础知识,才能在原有的基础上提升自己的能力,提高自己解决问题的能力。在这短短的几天里,查阅有关的C++学习资料,设计规则,代码的编写及到最后的调试。在设计过程中,通过对控件事件的处理,界面的布局,代码的调试,充分锻炼了自己的思维,获得了充分的实际经验,提高了处理问题的能力,同时也提高了对问题思考的应急能力和抗压力的能力。
经过几天的努力,虽然设计已经完成,但仍然有很多模块和功能要完善,存在很多美中不足之处。但是基本上还能满足小型超市的管理。在设计报告的写作过程中也学到了做任何事情所要有的态度和心态,首先我明白了做学问要一丝不苟,对于出现的任何问题和偏差都不要轻视,要通过正确的途径去解决,在做事情的过程中要有耐心和毅力,不要一遇到困难就打退堂鼓,只要坚持下去就可以找到思路去解决问题的,在遇到问题时,有必要向老师和同学请教,合作沟通的意义是巨大的。
[参考文献]
【1】. Microsoft SQL Server 2000 联机丛书
【2】. 金林樵主编 SQL Server 2000程序设计实训教程 科学出版社 2006年
【3】. 李言编著 Visual C++项目开发全程实录 清华出版社 2008年
【4】. 姚领田编著 精通MFC程序设计 人民邮电出版社 2006年
【5】. 苗雪兰编著 数据库原理及应用教程(2版)机械工业出版社 2005年
附件:
///////////登陆程序////////////////////////////////////////////////////////////////////
void yuangongdenglu::Ondenglu()
{
UpdateData(1);
if(m_bianhao=="")
{
MessageBox("请输入账号!");
return;
}
if(m_mima=="")
{
MessageBox("请输入密码!");
return;
}
CAdocon adoconn;
adoconn.OnInitAdocon();
_bstr_t sql;
sql="select * from 员工信息表 where 员工编号='"+m_bianhao+"' and 员工密码='"+m_mima+"'";
_RecordsetPtr m_precordset;
m_precordset=adoconn.GetRecordSet(sql);
if(m_precordset->adoEOF==0)
{
GetDlgItem(ID_rukuxitong)->EnableWindow(FALSE);
}
UpdateData(0);
}
///////////添加程序//////////////////////////////////////////////////////////////////////
void Cgongyingshanxinxi::OnButadd()
{
// TODO: Add your control notification handler code here
UpdateData(1);
CAdocon adoconn;
adoconn.OnInitAdocon();//调试
_bstr_t sqltemp;
sqltemp="insert into 供应商信息表 (供应商编号, 供应商名称, 供应商地址, 供应商电话) values ('"+m_gysbh+"','"+m_gysmc+"','"+m_gysdz+"','"+m_gysdh+"')";
adoconn.ExecuteSQL(sqltemp);
adoconn.exitcon();
UpdateData(0);
MessageBox("添加成功");
OnOK();
}
////////////////删除程序//////////////////////////////////////////////////////////////////
void CYuangongxinxi::OnButdel()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
CAdocon adoconn;
adoconn.OnInitAdocon();//调试
_bstr_t sqltemp;
sqltemp="delete from 员工信息表 where 员工姓名='"+m_XM+"' ";
if(m_XM=="")
MessageBox("员工姓名不为空");
if(adoconn.ExecuteSQL(sqltemp)==TRUE)
{
MessageBox("删除成功");
}
else MessageBox("删除失败");
adoconn.exitcon();
OnOK();
UpdateData(FALSE);
}
///////////////////查询程序///////////////////////////////////////////////////////////////
void Cshangpingxinxi::OnButquery()
{
UpdateData(1);
// TODO: Add your control notification handler code here
CAdocon adoconn;
adoconn.OnInitAdocon();
_bstr_t sql;
sql="select * from 商品信息表 where 商品编号='"+m_bianhao+"' ";
_RecordsetPtr m_precordset;
m_precordset=adoconn.GetRecordSet(sql);
//GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE);
if(m_precordset->adoEOF==0)
{
m_mingcheng= (LPCTSTR)(_bstr_t)m_precordset->GetCollect("商品名称");
m_gysbianhao= (LPCTSTR)(_bstr_t)m_precordset->GetCollect("供货商编号");
m_jiage= (LPCTSTR)(_bstr_t)m_precordset->GetCollect("价格");
m_csbianhao= (LPCTSTR)(_bstr_t)m_precordset->GetCollect("厂商编号");
m_tiaoxingma= (LPCTSTR)(_bstr_t)m_precordset->GetCollect("条形码");
UpdateData(0);
adoconn.exitcon();
}
}
///////Adocon.cpp: implementation of the CAdocon class.//////////////////////////////////
void CAdocon::OnInitAdocon()
{
::CoInitialize(NULL);
try
{
m_pConnection.CreateInstance("ADODB.Connection");
bstr_t strConnect = "driver={SQL Server}; Server=127.0.0.1; DATABASE=SuperMaket; UID=admin;PWD=123;";
m_pConnection->Open(strConnect,"","",adModeUnknown);
//们经常使用的只是前面用#import语句引用类型库时,生成的包装类.tlh中声明的智能指针中的三个,它们分别是_ConnectionPtr、_RecordsetPtr和_CommandPtr。下面分别对它们的使用方法进行介绍:
//_ConnectionPtr接口返回一个记录集或一个空指针。通常使用它来创建一个数据连接或执行一条不返回任何结果的SQL语句,如一个存储过程。使用 _ConnectionPtr接口返回一个记录集不是一个好的使用方法。对于要返回记录的操作通常用_RecordserPtr来实现。而用 _ConnectionPtr操作时要想得到记录条数得遍历所有记录,而用_RecordserPtr时不需要。
// _CommandPtr接口返回一个记录集。它提供了一种简单的方法来执行返回记录集的存储过程和SQL语句。在使用_CommandPtr接口时,你可以利用全局 _ConnectionPtr接口,也可以在_CommandPtr接口里直接使用连接串。如果你只执行一次或几次数据访问操作,后者是比较好的选择。但如果你要频繁访问数据库,并要返回很多记录集,那么,你应该使用全局_ConnectionPtr接口创建一个数据连接,然后使用_CommandPtr 接口执行存储过程和SQL语句。
//_RecordsetPtr是一个记录集对象。与以上两种对象相比,它对记录集提供了更多的控制功能,如记录锁定,游标控制等。同_CommandPtr接口一样,它不一定要使用一个已经创建的数据连接,可以用一个连接串代替连接指针赋给 _RecordsetPtr的connection成员变量,让它自己创建数据连接。如果你要使用多个记录集,最好的方法是同Command对象一样使用已经创建了数据连接的全局_ConnectionPtr接口,然后使用_RecordsetPtr执行存储过程和SQL语句。
}
catch(_com_error e)
{
TRACE(e.Description());
//throw new CADOException("连接数据库失败");
//AfxMessageBox("连接数据库失败");
}
}
BOOL CAdocon::ExecuteSQL(_bstr_t bstrSQL)//执行sql语句
{
try
{
if(m_pConnection == NULL)
OnInitAdocon();
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{//AfxMessageBox("失败");
AfxMessageBox(e.Description());
return false;
}
}
//执行查询
_RecordsetPtr& CAdocon::GetRecordSet(_bstr_t bstrSQL)
{
try
{
// 连接数据库,如果Connection对象为空,则重新连接数据库
if(m_pConnection==NULL)
OnInitAdocon();
// 创建记录集对象
//m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset.CreateInstance("ADODB.Recordset");
// 取得表中的记录
m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
}
// 捕捉异常
catch(_com_error e)
{
// 显示错误信息
AfxMessageBox(e.Description());
}
// 返回记录集
return m_pRecordset;
}
void CAdocon::exitcon()
{
if(m_pRecordset!=NULL)
m_pRecordset->Close();
m_pConnection->Close();
::CoUninitialize();
} 3、通过活动,使学生养成博览群书的好习惯。
B比率分析法和比较分析法不能测算出各因素的影响程度。√
C采用约当产量比例法,分配原材料费用与分配加工费用所用的完工率都是一致的。X
C采用直接分配法分配辅助生产费用时,应考虑各辅助生产车间之间相互提供产品或劳务的情况。错
C产品的实际生产成本包括废品损失和停工损失。√
C成本报表是对外报告的会计报表。×
C成本分析的首要程序是发现问题、分析原因。×
C成本会计的对象是指成本核算。×
C成本计算的辅助方法一般应与基本方法结合使用而不单独使用。√
C成本计算方法中的最基本的方法是分步法。X
D当车间生产多种产品时,“废品损失”、“停工损失”的借方余额,月末均直接记入该产品的产品成本
中。×
D定额法是为了简化成本计算而采用的一种成本计算方法。×
F“废品损失”账户月末没有余额。√
F废品损失是指在生产过程中发现和入库后发现的不可修复废品的生产成本和可修复废品的修复费用。X
F分步法的一个重要特点是各步骤之间要进行成本结转。(√)
G各月末在产品数量变化不大的产品,可不计算月末在产品成本。错
G工资费用就是成本项目。(×)
G归集在基本生产车间的制造费用最后均应分配计入产品成本中。对
J计算计时工资费用,应以考勤记录中的工作时间记录为依据。(√)
J简化的分批法就是不计算在产品成本的分批法。(×)
J简化分批法是不分批计算在产品成本的方法。对
J加班加点工资既可能是直接计人费用,又可能是间接计人费用。√
J接生产工艺过程的特点,工业企业的生产可分为大量生产、成批生产和单件生产三种,X
K可修复废品是指技术上可以修复使用的废品。错
K可修复废品是指经过修理可以使用,而不管修复费用在经济上是否合算的废品。X
P品种法只适用于大量大批的单步骤生产的企业。×
Q企业的制造费用一定要通过“制造费用”科目核算。X
Q企业职工的医药费、医务部门、职工浴室等部门职工的工资,均应通过“应付工资”科目核算。X
S生产车间耗用的材料,全部计入“直接材料”成本项目。X
S适应生产特点和管理要求,采用适当的成本计算方法,是成本核算的基础工作。(×)
W完工产品费用等于月初在产品费用加本月生产费用减月末在产品费用。对
Y“预提费用”可能出现借方余额,其性质属于资产,实际上是待摊费用。对
Y引起资产和负债同时减少的支出是费用性支出。X
Y以应付票据去偿付购买材料的费用,是成本性支出。X
Y原材料分工序一次投入与原材料在每道工序陆续投入,其完工率的计算方法是完全一致的。X
Y运用连环替代法进行分析,即使随意改变各构成因素的替换顺序,各因素的影响结果加总后仍等于指标的总差异,因此更换各因索替换顺序,不会影响分析的结果。(×)
Z在产品品种规格繁多的情况下,应该采用分类法计算产品成本。对
Z直接生产费用就是直接计人费用。X
Z逐步结转分步法也称为计列半成品分步法。√
A按年度计划分配率分配制造费用,“制造费用”账户月末(可能有月末余额/可能有借方余额/可能有贷方余额/可能无月末余额)。
A按年度计划分配率分配制造费用的方法适用于(季节性生产企业)
19 / 19
展开阅读全文