




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程大作 业仓库管理子系统目录一、课题介绍、系统分析和设计 思想1 数据库设计52.程序结构总体设计9三、脚本代码 10四、小结 38课题介绍商品进销存管理 系统一一仓库管理子系统,主要用来执行公司 内商品的出库入 库,进行库房盘点,并向公司领导汇报,接受公司 领导的库房查询。库房的管理在整个公司是非常重要的,公司的所 有产品都在库房 里,如果库房管理不当,将给公司造成很大损失。 所以本软件可帮 助库房管理员很好的管理库房,可使库房管理信息 化,有效提高库 房的管理水平。库房管理子系统业务流程:入库管理:采购 员采购商品后到仓库管理员处办理如库手续, 仓库管理员根据 采购单对商品进行检验,确认
2、后会生成入库单,再 允许商品入库。出库管理:销售 业务员到仓库管理员处办理出库手续,仓库管 理员根据订购单 对仓库中的商品库存量等信息进行校对,确认后, 生成出库单,再允许商品出库。分工组成结构树见下图:业务协作流程见下图:吓注A阵1:更道匪有厲1:更道匪有厲:丈出腐该系统可供各公 司使用,它主要是用来对公司的库房进行管理 的系统,它主要有2部分组成,记录模块和查询模块。各部分的功 能如下:1. 管理模块 具体包括以下几个功能模块:入库管理:入库 管理是仓库管理员根据采购单对商品进行检 验,确认后会生成入库单,再允许商品入库。出库管理:出库 管理是仓库管理员根据订购单对仓库中的商 品库存量等信
3、息进行校对,确认后,生成出库单, 再允许商品出库。库房盘点:库房盘点是库房管理员将仓库中的所有商品分类, 再对商品的数量等进行盘点,如有亏损记录下信 息,并修改原库房盘点表。2. 查询模块 具体包括以下几个功能模块:查询库存:当库 房管理员要了解仓库中商品的数量等有关信 息时,可以通过 查询库存检索出相关信息。查询入库单:通 过时间及类型的分类,可以把近期入库的商 品的信息检索出来。查询出库单:通 过时间段及类型的分类,可以把近期出库的商品的信息检索出来。查询盘点记录:通过商品类别的分类,将各种商品的盘点 情况显示出来。系统分析和设计思想库房管理子系统 是由两个模块组成:管理模块和查询模块。管
4、理模块主要用来 管理商品出库入库和库房盘点的工作。查询模块主 要用来对库存、入库单、出库单、盘点记录进行查询。1.数据库设计:主要由7个表和2个视图组成。? 3円杏fcn-is-ntAM 1;尸号 5iTlliiaftmt4«2>4*c4miN J")flgirt曲响蚯feucAjd 马lint,4y jMl:imf<ik2>>. ri_ni :i iTFU_m niiFU: rpnni lpt XjFk_IHT£ilfFfJ_IUITS M5_P_PH5DMCTF卜 IMT OITEM IHTOlT&MS PUtSfCMA小AAp
5、ntJDMEIb-hL tlolnAiiuE it? txKffl: 四如pflLi t1U It>mIdhllDSklbJxiE t X ©iFT hC4 cSkwi pilfek%vili44 liplfULA il t?- KkEL lI铝M3llklit賞啊TEtii(lCf)刊|丛巧40 u英柑丄'弓rdiid<ZQl>,treHfMlCOj< Jfe?也套单乜nrdtiKIZ)1i« jtihJt臥岀!祕t忙总2砂诃百西圮呛H审畑芦止日律dUTAtim*郭hrtltidjlctirTbcMi 吕(fl)ft +vildlltZD)
6、i*41000)ifndjiPKSvjn-ai glrm j:llmtFk CbUTiTEMfr OUTiTEM-S CUTSTORahiiizaS UMd jf«Gi ma笊熔外幷事blfrhtWS恋隨聊«*Ach>r(B)GhdrtpiFIKJ HVEH T©RI MVEMT OR i- PR O&UCT表名称代码入库单内容intoitems岀库单内容Outitems入库单putStorage商品product岀库单OutStorage盘点记录inventory入库单(inwarehouse)说明:记录当前库存地点上商品的数量与金额,由系统根据库
7、存 活动自动计算并产生列命名列名称列描述类型与长度可否为空主键外键索引有效值inNum入库单编号不能重复, 自动生成, 不同类型 的入库单 规则如下: 采购入库;CGRK 年 月日-3位 流水号CHAR(9)否是9inDate入库时间自动等于 系统当前 时间DATETIME是inObject入库外部对象外部对象,供货商VARCHAR(8 )是inTotal入库单总金额自动计算 产品内容 的金额的 合计MONEYinChecker验收人仓库管理 员作为验 收人CHAR(6)inWareman入库单录入人当前系统用户是入库单明细(initem )说明:记录针对一个具体库存地点的每一次入库的物资内容
8、,必 须依赖于入库单 发生。名 命 列称 名 列述 描 列型度主键外键索引有效值m U N rn继号 自的AH c否是-入号目 3A/ 1是一号 S- 品 商号 S- 品 商AH c是是价 单量量 数口相号AH cn是出库单(outwarehouse)说明:记录针对一个具体库存地点的每一次出库,必须拥有物资内容(库存出库)名 命 列-述 描 列型度空主键外键索引有效值出号¥ K 号 水 自咼和XS流W 位 重不规旱£ 能,单出日 不成库售月否是对间 自时是-部外库象出对v金总库 出额容内品计产跆录动户 自用 员花 mi 一理 乂冃 管当 库于值 仓等键 A H cn出库单明
9、细(outitem )说明:记录针对一个具体库存地点的每一次出库的物资内容,必 须依赖于出库单发生。列命名列名称列描述类型与长度可否为空主键外键索引有效值outNum岀库单编 号自动继承岀库单的编号CHAR(9)否是outmNum岀库项目序号岀库项目序号,1 , 2, 3SMALLINT是commNum商品编号商品编号CHAR(8)是是outmQuantity岀库数量岀库数量,不能等于0FLOAToutPrice岀库单价成本单价,自 动继承所属物 资的成本单价MONEYSONum相关销售单号采购单号CHAR(9)是盘点表(inventory)说明对库内商品进行盘查核对列命名列名称列描述类型与长
10、度可否为主外键索有空键引效值invDate盘点日期盘点日期DATETIME否commNum盘点商品盘点商品编号CHAR(8)invAccountQuantity帐面库存数量帐面库存数量FLOATinvRealQuantity实际库存数量实际库存数量FLOATinvCause盈亏原因盈亏原因VARCHAR(100 )invChecker盘点人盘点人CHAR(6)2.程序结构总体设计库房子系统的HIPO图,如下所示:三、脚本代码1应用程序对象、主窗口与主菜单的设计 应用程序对象的脚本代码如下:(1)应用程序全局变量: u_comused g_com / 定义 u_comusec类 型的对象(2)应
11、用程序open事件脚本:en vir onmentlenv_env/ holds en vir onmentin formatio nstri ngls_startupfile, sn ame,scode,corp, sdir, slog / holdsn ameof start-up fileIntli_app / Get the environment informationif ( GetEnvironment(lenv_env) <> 1 ) then MessageBox("Application: Open", &"Unable t
12、o get environment information.nHalting .") halten difif lenv_en v.Scree nHeight<>600or lenv_en v.Scree nWidth<>800the n messagebox(提示信息","请将分辨率设置为 800*600")en dif/创建用户对象实例g_com = CREATE u_comused/厂得到路径和单位名称sn ame= ".bus in ess.i ni"sdir = ProfileString(sname
13、,"application”,"exedir","") g_com.uf_setDir(sdir)corp = ProfileString (sname,"application","单位名称',"") g_com.uf_setCorp(corp)Open( w_logi n)(3) 主窗口 W main界面(4)主菜单 m_customer本子系统有一名为m warehouse的主菜单。0 Tg| -n_aiehousc扎阵ir理 周品入库 j出库営理*a裔晶出屋t.摩腭盘障対点晖爾F
14、娠计査询®直询库存 10查诲AICM 73査谗出库单 直诲盘点记录E退出棗簸陳遲出水系顿L帮助下面介绍其中的各个子菜单及它们的clicked。事件入库管理中商品 入库:open(w_putStorage)调商品入库窗口出库管理中商品出库:open(w_outStorage)调商品出库窗口 库房盘点中盘点 库房:open(w_inventory)/调库存盘点窗口统计查询中查询 库存:open(w_seekstocl)调查询库存窗口统计查询中查询入库单:open(w_seekputstorage/调查询入库单窗 口 统计查询中查询 出库单:open(w_seekoutstorage/调查
15、询出库单窗 口统计查询中查询 盘点记录:open(w_seekinventory)/ 调查询盘点 记 录窗口2.各子窗口设计(1)库存盘点窗口 w_inventory 功能:此时库房管理员可以在分类检索栏的下拉列表框里 选择所要盘点的一类商品,例如选择“主板”,所有关于主板的商品 信息将在最上方的数据窗口对象里显示出。然后再对一种商品进行 盘点,经过盘点 后如果发现有质量或丢失等问题,可以输入盘点信 息,录入盈亏原因及被淘汰后所剩下的实际库存量。再按登记按钮, 此时所盘点后的商品将在左下方的数据窗口对象里显示并记录!然 后依依如上检索 商品! 窗口事件:open()事件库存盘点初始化DataW
16、i ndowChilddwc_classify/说明一个DataWindowChild类型的变量/初始化控件和数据窗口控件dw_1.insertrow(O)/在数据窗口控件插 入一空行dw_1.GetChild('classifyid', dwc_classify) / 得到名称为 classifyid(列)的 子数据窗口对象的引用,并存放在 dw_classify中 dwc_classify.SetTra nsObject(SQLCA) / dw_classify 使用系统缺省 的事务对象SQLCA-dwc_classify.Retrieve()/从数据库中检索数据dw_1.
17、SetFocus()/设置库存数据窗口dw_product.SetTra nsObject(SQLCA)dw_product.SetRowFocusl ndicator(Ha nd!,0, 0)/设置盘点数据窗口dw_i nven tory.SetTra nsObject(SQLCA) 各控件的介绍:本窗口有3个数据窗口控件 dw_product(对应是dnventoryproduct 数据窗口对象)、dw_inventory (对应是dnventory数据窗口对象) 和 dw_1,2 个单行编辑框 sle_acc和 sle_real, 2 个按钮 cb_register 和 cb_quit数
18、据窗口控件dw_product的事件rowfocuscha nged(事件检索当前记录对应的盘点信息long rsm, pidrsm= this.rowcount()if currentrow>0 and currentrow<=rsm then/ 检索以前的盘点记录pid = this.object.pdIDcurrentrowdw_inventory.retrieve(pid)/ 更新提示sle_acc.text= string(this.object.pdtotalcurrentrow)endif数据窗口控件 dw_inventory 事件rowfocuscha nged(事
19、件/ 改变当前行光带 this.SelectRow(0,FALSE) this.SelectRow(currentrow,TRUE)数据窗口控件 dw_1 事件itemcha nged(事件按类检索商品记录dw_product.Retrieve(data)登记按钮 cb_register 的事件clicked。事件登记盘点盈亏long row, rsm,rrwdouble dif, rl/ 检查输入是否合理rsm= dw_product.rowcount()row = dw_product.getrow()if row<=0 or row>rsm thenMessageBox(&q
20、uot;错误信息","没有选中库存商 品,请检索库存商品!")returnendifif isnull(sle_real.text) or len(trim(sle_real.text)=0thenMessageBox("错误信息","没有输入实际库存数,请重新输入!")returnendifrl = double(sle_real.text)if dw_product.object.pdtotalrow=rl thenMessageBox("错误信息","实际库存数与帐面库存数相符,没有必要
21、记录盈亏信息 !")returnendif/ 插入盘点记录rrw = dw_inventory.InsertRow(1)/ 在第一行插入dw_inventory.ScrollToRow(rrw) dw_inventory.SetRow(rrw)dw_inventory.object.pdidrrw = dw_product.object.pdidrow /商品编 号dw_inventory.object.invaccountquantityrrw=dw_product.object.pdtotalrow / 帐面库存数量dw_inventory.object.invrealquant
22、ityrrw = rl / 实际库存数 量dw_inventory.object.invdaterrw = datetime(today(), now() / 盘点日 期dw_inventory.object.invcheckerrrw = g_com.uf_getlogID() / 盘点 人dw_inventory.object.invcauserrw = mle_cause.text/ 盈亏原因/ 修改库存信息dif = dw_inventory.object.invrealquantityrrw - dw_inventory.object.invaccountquantityrrwdw_
23、product.object.pdtotalrow = dw_inventory.object.invrealquantityrrw dw_product.object.pdquantityrow = dw_product.object.pdquantityrow +dif/ 更新表信息if dw_inventory.Update(TRUE,FALSE) = 1 thenif dw_product.Update(TRUE,FALSE) = 1 then dw_inventory.ResetUpdate() dw_product.ResetUpdate() COMMIT USING SQLCA
24、; sle_real.text = "" mle_cause.text= ""endifendif退出按钮 cd_quit 的事件 clicked。事件 关闭窗口 close(parent)(2)商品出库窗口 w_outstorage功能:客户所 订购的商品内容将在客户订购单里显示,其 中包括订购单号 及时间,订单客户及类型,还有销售人员,处理 状态等,选择你 所要准备出库的商品,订购单明细将会把你所选 商品的生产厂家 及商品的详细内容显示出来。然后拖拉放置到出 库单内,此时处 理状态由 3 变成 4,表示状态由分配完毕变成出 库完成将,便生 成出库单,
25、在出库单明细里也将详细内容显示出 来。如按存盘键 可再录入数据。窗口事件ope n()事件产生出库单初始化/设置出库单数据窗口dw_outList.SetTra nsObject(SQLCA)dw_outList.SetRowFocus In dicator(Ha nd!, 0, 0)/设置出库单明细数据窗口dw_outltems.SetTra nsObject(SQLCA)/设置订单明细数据窗口dw_items.SetTra nsObject(SQLCA)/设置客户订单数据窗口dw_list.SetTra nsObject(SQLCA)dw_list.SetRowFocuslndicator(Hand!,0, 0)dw_list.retrieve()dw_list.setFilter("soStatus=4")定义函数:wf_filteritems(long a_row) returns(none) 过滤当前单据 a_row 行对应的出库明细一一longoidoid = dw_outList.object.ou
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 定向委托加工合同:度项目
- 烟花爆竹定制加工合同协议
- 城市规划设计服务合同
- 14《普罗米修斯》(教学设计)-2024-2025学年统编版语文四年级上册
- 购房者商品房分期付款合同
- 家庭和睦共建合同
- Module 3 Unit 1 What are you doing?(教学设计)-2024-2025学年外研版(三起)英语四年级上册
- 10 我们当地的风俗2023-2024学年四年级下册道德与法治同步教学设计(统编版)
- 婚内借款合同范本
- 2 江南 教学设计-2024-2025学年语文一年级上册统编版
- 钢筋平法识图与钢筋算量经典课件
- 三年级下册数学应用题100题及答案
- 继电保护课后习题答案第二版张保会尹项根
- 统编版高中历史必修中外历史纲要下册第4课中古时期的亚洲课件(共18张PPT)
- 成人住院患者跌倒风险评估及预防,中华护理学会团体标准
- 阴式子宫全切术-手术室护理查房
- 职业健康检查流程图
- 提高电费回收率(QC)
- EIM Book 1 Unit 7 Learning languages单元知识要点
- 呼吸系统疾病与麻醉(薛张刚)
- WOMAC骨性关节炎指数评分表
评论
0/150
提交评论