计算机毕业设计-仓库管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
仓库管理系统
1系统设计 1 1系统设计目标
系统开发的总统任务 是实现企业物资设备管理的系统化、规范 到仓库管理效率的目的。
• • 仓库管理各种信息的 输入,包括入库、出库、还库、 需求信息
的输入等。
• • 仓库管理各种信息的 查询、修改和维护。
• •
设备采购报表的生成
。
•
• 在库存管理中加入最
高储备和最低储备字段,对仓库中的物资
设备实现监
控和报警。
• • 企业各部门的物资需 求的管理。
• • 操作日志的管理。
•
•
仓库管理系统的使用
帮助。
1、4系统功能模块设计
在系统功能分析的基础上,结合 Visual C++程序编制的特点, 得到如图 1-1所示的系
统功能模块图。
图1-1 系统功能模块图
2、数据库设计
仓库管理是整个物资 库设计和程序实现过程。
供应管理系统的核心。本实例着重讲解仓 库管理模块,给出数据
的需要,米取了卜面的一些原则:
• • 统一各种原始单据的 格式,统一帐目和报表的格式。 • • 删除不必要的管理冗 余,实现管理规范化、科学化。
• • 程序代码标准化,软 件统一化,确保软件的可维护性和实用性 。
• • 界面尽量简单化,做 到实用、方便,尽量满足企业不同层次员 工的需要。
•
•
建立操作日志,系统
自动记录所进行的各种操作。
1、2开发设计思想
在本系统的设计过程 中,为了克服仓库管理信息处理量大的困
难,满足计算机管理
1、3系统功能分析
本例中的仓库管理系 统需要完成的功能主要有以下几点:
化和自动化,从而达
2、1数据库需求分析
在仔细调查企业仓库物资设备管理过程的基础上,得到本系统所处理的数据流程如图1-2所示:
••现有库存信息,包括小库存。的数据项有设备、现有数目、总数目、最大库存和最
••设备使用信息,包括
和出库时状态等。
的数据项有使用的设备、使用部门、数目、使用时间
••设备采购信息,包括
和采购时间等。
的数据项有采购的设备、采购员、供应商、采购数目
••设备归还信息,包括间
和经手人等。
•设备需求信息,包括时
间等。
的数据项有归还设备、归还部门、归还数目、归还时
数目和需求•的数据项有需求的部门、需求设备、需求
2、2数据库概念结构设计
本实例根据上面的设计规划出的实体有库存实体、入库实体、出库实体、采购实体、
还库实体和需求实体,各实体的E-R图及其关系描述如下:
图1-9实体和实体之间的关系E-R图
2、3数据库逻辑结构设计
在上面的实体以及实体之间的关系的基础上,形成数据库中的表格和各个表格之间的关系。仓库管理系统数据库中各个表格的设计结果如下面的几个表格所示。每个表格表示
在数据库中的一个表。
3、数据库结构的实现
4、创建应用程序
(1)( 1)选择“ FileNew ”中的“新建项目”选项卡中“ MFC
AppWizard (exe)”,设置合适的目录和项目名,比如“E:\Project”目录下的
“DMS ”项目。
(2)( 2)创建一个对话框应用程序(“ Dialog Based”),单击“ Next”按
钮。
(3)( 3)由于在这个项目中将要使用ADO,所以在MFC AppWizard的第
二步,需要选中“ Automation ”选项,使应用程序能够支持自动化对象。如
图1-10所示
(4)( 4)单击“ Finish ”按钮结束项目的创建。主对话框名为CDMSDlg。
(5)( 5)项目创建完毕后,在头文件stdafx.h中加入下面4行:
#import “ cprogramfiles'commonfiles\system\ado\msado15.dll ” no_namespace( EOF , ” adoE O F #include ” icrsint.h ”
inline void TESTHR(HRESULT x){if FAILED(x)_com_issue_error(x);}; #define DATEFMT Cstring( %s”')
5、操作日志模块的设计
(1)写日志模块
MFC AppWkard 4
Wh at teatu res would you like Io inchide?
I* About box
厂Cnn(e>d-sensiilvc Help
V JD cantrols
Wtiat oihfir 列ppcifTMHiid you llkt la in dude?
F? ^AutamallfiFi W ActiveX Controls
阪*/1 Would ytru like ta indudc WtJ&A support? fttiidiA ID«ll«*
厂Endows
Plta^c:ctitcr « tide fot your dialoy:
C gad Next >finish Concc 1
图1-10 使应用程序支持自动化
先定义一个名为 ClogMngr的类
//LogM ngr.h
〃定义一个Log管理器
class CLogM ngr
{ public:
CLogM ngr(); virtual ~CLogMngr();
public:
bool AddLog(LPCSTR op);
void Setup(_ConnectionPtr ennt, CString& user) {
m_DBC nt = ennt; m_user = user;
}-
protected:
_ConnectionPtr m_DBCnt; CString m_user;
}; -
下面是ClogMngr : : AddLog内部实现详细过程。
//LogM ngr.cpp
//向数据库中添加 Log记录的代码。
bool CLogM ngr::AddLog(LPCSTR op) {
CTime tm = CTime::GetCurre ntTime();
CString sql_;
sql_.Format("INSERT INTO HOWDO (do_user,do_what,do_date) VALUES('%s','%s','%d-
%d-%d %d:%d:%d')",
m_user, op,
tm.GetYear(), tm.GetMonth(), tm.GetDay(),
tm.GetHour(), tm.GetMinute(), tm.GetSecond());
_bstr_t sql = sql_;
try
{
m_DBC nt->Execute(sql,NULL,adCmdText);