管理信息系统课程设计之仓库管理(DOC30页).docx

上传人:小飞机 文档编号:1959105 上传时间:2022-12-28 格式:DOCX 页数:31 大小:2.35MB
返回 下载 相关 举报
管理信息系统课程设计之仓库管理(DOC30页).docx_第1页
第1页 / 共31页
管理信息系统课程设计之仓库管理(DOC30页).docx_第2页
第2页 / 共31页
管理信息系统课程设计之仓库管理(DOC30页).docx_第3页
第3页 / 共31页
管理信息系统课程设计之仓库管理(DOC30页).docx_第4页
第4页 / 共31页
管理信息系统课程设计之仓库管理(DOC30页).docx_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《管理信息系统课程设计之仓库管理(DOC30页).docx》由会员分享,可在线阅读,更多相关《管理信息系统课程设计之仓库管理(DOC30页).docx(31页珍藏版)》请在三一办公上搜索。

1、五、系统的编译和发行(一)设置主文件 用主图标(以黑体的文件表示)标记的文件是用户在启动.app 或者是.exe时被调用文件,可以是一个表单、菜单和程序,建议使用程序作为主文件。(二)构建主文件 如果主文件是一个程序,它将调用应用程序框架中的各个功能组件,然后由这些组件调用应用程序的其余部分。如果要建立一个简单的主程序,可以按下列步骤进行。1. 现设置应用环境界面。2.确定初始用户界面。3.建立事件循环。4.恢复环境,退出应用程序。本系统可以建立下面的程序作为主程序:Set directory to d:李林芳Do form 超市管理On shutdown quitRead events本系统

2、的主程序为主程序.prg。(三)在.app和.exe文件中包含和排除文件 如果在发布的应用程序中不想再更改这些文件,可把它们放在项目中并设置为“包含”。那么这些文件变成只读的,不能修改。如果想修改这些文件,把它们放在项目中设置为“排除”,然后作为独立文件随着应用程序一起发布。在默认的情况下,vfp在嵌放的过程中排除了数据库、表单、称为.ff的c库文件和.app文件。数据库和表格需要变化和添加,而如果编译后包含自.exe或者.app文件中,由于这两个文件被创建后都是静止的,由此被包含的文件也是静态的和只读的。把数据库和表格白含在这些文件中很明显会带来问题。因为这些文件不能被包含在文件.app和.

3、exe中,所以要发布一个应用程序之前为这些文件做好准备。六、运行结果仓库管理系统各模块运行结果如下所示。七、参考文献1.管理信息系统,苏选良编著,电子工业出版社;.2.数据库与管理信息系统实验教程 苏选良编 电子工业出版社;3.Visual Foxpro数据库系统开发实例导航,邵洋,人民邮电出版社。八、实习小结4.2系统总体设计利用层次图来表示系统中各模块之间的关系。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素。随着结构的精细化,层次方

4、框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。从对顶层信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。本系统有多个子系统,每个子系统之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,各个子系统访问的是同一个数据库,只是所访问的表不同而已。每个子系统的功能都是按照在调研中搜集的资料进行编排制作的。依据上述功能的分析,系统在几个子系统的基础上每一大子系统又分为几个模块: (1)招聘管理子系统包括:应聘人员登记、应聘人员信息查询、应聘人员录用、招聘计划。(2)员工信息管理子系统包括:员工信息维护、员工信息查询、员工职位调动、员工离

5、职登记。(3)合同管理子系统包括:合同维护、合同查询、合同解除。(4).薪资管理子系统包括:奖励管理、惩罚管理、奖金管理、医疗补贴管理、工龄工资管理、基本工资管理、工资管理、当月工资管理查询、历史工资查询。(5)考核管理子系统包括:请假登记、请假查询、考勤汇总、考勤查询、年终考核、年终考核查询。(6)系统管理子系统包括:修改密码、用户管理、数据维护。(7)报表管理在系统包括:员工基本信息统计、员工工资统计。(8)工具子系统包括:计算器、记事本。课 程 设 计 任 务 书课程名称 管理信息系统 课 题 仓库管理系统 专业班级 经济学0701 小组成员 魏超、李林芳、黄春秀 简玉洁、韩晓龙、曾维剑

6、 指导老师 时遇辉、陈韵、梅益军、 刘湘宁、李欣、潘立军 审 批 仓库管理系统一、系统设计(一)系统目标设计 通过一个仓库管理系统,使仓库的管理工作系统化、规范化、自动化、使得资金使用合理,物资设备的储备最佳。(二)开发设计思想 仓库管理的物资主要是企业生产所需要的各种色河北。进货时经检查合同确认为有效托收以后,进行验收入库,需要填写入库单,并进行入库登记。企业各个部门根据所需要的物资设备总额的部门生产活动的需要提出物资需求申请。计划员根据整个企业需求开出物资设备出库单,仓库管理员根据出库单核对发放设备。设备使用完毕需要及时归还入库,填写入库单。根据需要按月、季、年进行统计分析,产生相应报表。

7、 仓库管理的特点是信息处理量比较大。所管理的物资设备各类繁多,而且由于入库单,出库单、需求单等单据发生量特别大,关联信息多,查询和统计的方式各不相同等原因,因此在管理上实现起来有一定困难。在管理的过程中经常会出现信息的重复传递、单据报表种类繁多、各种部门管理规格不统一等问题。 该系统的设计过程中,为了克服这些困难,满足计算机管理的需要,我们采取了下面的一些原则。1. 统一各种原始单据的格式,统一账目和报表的格式。2. 删除不必要的管理冗余,实现管理规范化,科学化。3. 程序代码标准化,软件统一化,确保软件的可维护性和实用性。4. 界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要

8、。5. 建立操作日志,系统自动记录所进行的各种操作。(三)开发和运行环境选择 开发工具:Visual FoxPro 6.0。 运行环境:WindowsXP(四)系统功能分析1. 仓库管理各种信息的输入,包括入库、出库、还库、需求信息的输入等。2. 仓库管理各种信息的查询、修改和维护。3. 设备采购报表的生成。4. 在仓库管理中加入 最高储备和最低储备字段,对仓库中的物资设备实现监控和报警。5. 企业各个部门的物资需求的管理。6. 操作日志管理(五)系统模板设计 在系统功能分析的基础上,考虑Visual FoxPro 6.0程序编制的特点,得到如下图所示的系统功能模块图。仓库管理系统设备入库设备

9、出库设备还库设备需求设备采购修改库存保存日志二、数据库设计数据库的结构设计师一个非常重要的问题,数据库结构设计的好坏将直接对应用系统的效率以及现实的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度。 在数据库系统开发设计的时候应该尽量考虑全面,尤其应该仔细考虑用户的各种需要,避免在设计中浪费不必要的人力和物力。(一)数据库需求分析 数据库需求分析是数据库结构设计的第一阶段,是非常重要的的阶段。在这个阶段主要是收集基本数据;数据结构以及确定数据处理的流程,为以后进一步设计打下基础。在仔细调查企业仓库物资设备管理过程的基础上,得到了本系统所处

10、理的数据流,如图所示:仓库现有库存各部门需求设备还库设备出库设备采购企业总体生产计划设备入库汇总处理针对本实例,通过对企业仓库管理的内容和流程分析,设计的数据项和数据结构如下。1.设备代码信息包括的数据项有设备号,设备名称。2.现有库存信息包括的数据项有现有设备、现有数目、总数目、最大库存、最小库存等。3.设备入库信息包括的数据项有设备号、入库时间、供应商、供应商电话、入库数量、价格、采购员等。4.设备出库信息包括的数据项有设备号、使用部门、出库时间、出库状况、经手人、出库数量、领取人、用途等。5.设备采购信息包括的数据项有采购的设备、采购员、供应商、采购数目、采购时间。6.设备归还信息包括的

11、数据项有归还设备、归还部门、归还数目、归还时间、经手人等。7.设备需求信息包括的数据项有需求的部门、需求设备、需求数目、需求时间。8.日志信息包括操作员、操作人员。操作内容。(二)数据库概念结构设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及他们之间的关系,为后面的逻辑结构设计打下基础。 本实例根据上面的设计规划出的实体有库存实体,入库实体,出库实体,采购实体,还库实体,需求实体,实体和实体之间的关系E-R图如图所示:现有库存设备号现有库存警戒库存总数库存实体E-R图入库设备号供应商价格数量采购员入库实体E-R图出库设备号使用部门数量时间按经手人部门需求实体E-R图

12、计划采购设备号库存信息供应信息按时间还库实体E-R图实体和实体之间的关系如图所示:入 库现有库存出库还 库 部门需求设备采购实体关系图(三)数据库逻辑结构设计 需要将上面的数据库概念结构转化为visual FoxPro 6.0 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。 在上面的实体以及实体之间关系的基础上,形成数据库中的标以及各个表之间的关系,仓库管理系统数据库中各个表的设计结果如下面的几个表格所示,每个表格表示在数据库中的一个表。下表为设备代码表。设备代码表列名数据类型可否为空设备号(主键)数值型(20)不能为空设备名称字符型(50)可为空下表为设备入库表。设备入库表列名数据

13、类型可否为空设备号数值型(20)不能为空入库时间(主键)日期型(8)可为空供应商字符型(50)可为空供应商电话字符型(15)可为空入库数量数值型(20)可为空价格字符型(10)可为空采购员字符型(20)可为空下表为设备出库表。设备出库表列名数据类型可否为空设备号数值型(20)不能为空出库时间(主键)日期型(8)可为空使用部门字符型(50)可为空出库状况数值型(20)可为空经手人字符型(20)可为空出库数量数值型(10)不能为空领取人字符型(20)可为空用途字符型(50)可为空下表为现有库存表。现有库存表列名数据类型可否为空设备号(主键)数值型(20)不能为空现有库存数值型(20)可为空最大库存

14、数值型(20)可为空最小库存数值型(20)可为空总数数值型(20)可为空下表为部门需求表。部门需求表列名数据类型可否为空设备号数值型(20)不能为空部门名称字符型(20)不能为空需要数量数值型(20)可为空需求开始时间日期型(8)可为空需求结束时间日期型(8)可为空下表为设备还库表。设备还库表列名数据类型可否为空设备号数值型(20)不能为空还库时间日期型(8)不能为空仓库管理员字符型(10)可为空归还数量数值型(20)可为空归还人字符型(10)可为空下表为操作日志表。操作日志表列名数据类型可否为空操作员字符型(50)不能为空操作内容字符型(50)不能为空操作时间日期型(8)不能为空下表为设备采

15、购计划表。 设备采购计划表列名数据类型可否为空设备号数值型(20)不能为空现有库存数值型(20)可为空总库存数值型(20)可为空最大库存数值型(20)可为空购买数量数值型(20)可为空供应商字符型(20)可为空价格字符型(10)可为空计划采购时间(主键)日期型(8)可为空三、数据库结构的实现 在需求分析、概念结构设计的基础上得到数据库的逻辑结构之后,我们就可以再visual FoxPro 6.0数据库系统中实现该逻辑结构。 打开如图所示的仓库管理项目后,在项目管理器中展开数据文件夹。用鼠标选中数据库库,单击右侧的新建按钮,在弹出的对话框中将该数据库文件存储为d:李林芳。 在弹出的如图所示的数据

16、库设计器中单击鼠标右键,选择新建表,为数据库添加数据表。四、各个功能模块的创建 按照前面的分析,我们将管理系统的逻辑模块统一到6个实际功能模块中,如图所示。切换面板用于切换不同的操作,每项具体操作结束后,都会返回到切换面板。 切换面板设备出库设备入库设备还库显示报表设备需求设备采购 下面对各模块的作用进行说明:设备入库模板:添加设备到库存中。设备出库模板:将设备从库存中取出并记录。设备还库模板:将归还到库存的设备保存到数据库。设备需求模板:记录各部门的设备需求。设备采购模板:记录要采购的设备。切换面板:用于切换到不同的操作,如设备入库,设备出库。显示报表:显示库存过多、库存不足等信息。下面就按

17、照功能模块图来设计该仓库管理系统。首先在Visual FoxPro 6.0中建立一个项目管理器,以便管理本系统中所有数据,命名为仓库管理。以下操作均在该项目管理器中进行。一下所有表单的Desktop属性全部设为.T.真。(一)功能选择界面的设计 这一模块的主要功能是作为系统主界面为进入本系统不同功能界面选择提供一个接口,使用一个窗口来实现这一功能。首先建立一个表单,设其Caption属性为仓库管理。在该表单上添加7个“按钮”控件,他们的“Caption”属性分别为“设备入库”、“设备出库”、“设备出库”、“设备还库”、“部门需求”、“设备采购”、“显示报表”和“退出系统”。然后在表单上添加“图

18、像”控件,并设其“Stretch”属性为“2-Stretch(扩展)”,“Picture”属性为图片所在位置,本例中为“d:李林芳water lilies.jpg在“command1”(“Caption”属性为“设备入库”)控件的“Click”事件中添加代码如下: do form 设备入库表 thisform.release 在“command2”(“Caption”属性为“设备出库”)控件的“Click”事件中添加代码如下: do form 设备出库表 thisform.release 在“command3”(“Caption”属性为“设备还库”)控件的“Click”事件中添加代码如下: d

19、o form 设备还库表 thisform.release 在“command4”(“Caption”属性为“部门需求”)控件的“Click”事件中添加代码如下: do form 部门需求表 thisform.release 在“command5”(“Caption”属性为“设备采购”)控件的“Click”事件中添加代码如下: do form 设备采购表 thisform.release 在“command6”(“Caption”属性为“显示报表”)控件的“Click”事件中添加代码如下: do form 显示报表 thisform.release 在“command7”(“Caption”属

20、性为“退出系统”)控件的“Click”事件中添加代码如下: thisform.release在“form1”的属性里选择“AutoCenter”设置为“.T.-真”,同时将“backcolor”设置为“255,255,255”,“WindowState”设置为“0-普通”。 添加的事件的代码如下:set directory to d:李林芳该表单设计结果如图所示.(二)设备入库模块的设计在设备入库模块中将实现设备数据的添加和入库等功能。在前面的几章的例子中已经详细介绍了关于如何定制具有标准查询并修改功能的表单,其实Visual FoxPro6.0 本身也具有生成具有上述功能表单的功能。下面就介

21、绍如何通过表单向导完成设备入库表单的设计。首先在项目管理器的文档视图下单击“新建”按钮,如图所示。 在接下来的向导中,“数据库和表”选择“仓库管理”以及“设备入库表”。这是前面定义好的数据库和表。由于设备入库需要显示所有的字段,因此我们将可用字段全部移至选定字段,如图所示,然后单击“下一步”按钮,在表单样式中,选择“阴影式”以及“图片按钮”,如下图所示。在左上角的窗口中提供了表单样式的预览功能,图片按钮和文本按钮的区别在于显示的时候是以图片来表达功能还是用文字表达,实现功能的函数没有区别。选择“上一步”按钮可以跳回上一个界面对表单中显示的字段进行修改。 单击“下一步”按钮后,向导进行到“步骤3

22、-排序次序”,选择“设备号”为索引并选择升序排列。最后预览表单,核对每项的设置,完成表单向导,值得注意的是,在结束表单向导前,可选择“保存表单以备将来使用”,“保存并运行表单”,或者“保存表单并用表单设计器修改表单”。由于Visual FoxPro 6.0向导生成的表单只具有普遍性,对于当前设计的仓库管理系统还需要一定的该变,因此以我们选择“保存表单并用表设计器修改表单”。单击“完成”按钮系统提示保存表单,将表单保存为“设备入库表.scx”,存于d:李林芳 的目录下。然后打开表单修改生成的表单。在修改BUTTONSET时,可以通过属性窗口的下拉列表选定单个的按钮,调整其位置和其他属性。 添加1

23、个命令按钮,Caption属性 “回主界面”。 双击回主界面命令按钮,添加click事件代码如下:thisform.release保存后运行表单,界面如图所示。(三)设备出库模块的设计在设备出库模块中将实现设备出库数据的添加和修改库存等功能。该模块的功能和设备入库的功能相似。具体操作可以参考设备入库模块的设计。设计的最终界面如下图所示。下面列出表单中所用到控件的属性值。“Form1”控件的主要属性属性名称属性值Caption设备出库表AutoCenter.T.-真Backcolor255.255.255“buttonset1”控件的主要属性控件名属性名称属性值cmdExitVisiblecmd

24、DeleteVisiblecmdPrintVisiblecmdEditVisible. Command2Caption回主界面(四)设备还库模板的设计在设备还库模块中将实现设备还库数据的添加和修改库存等功能。设备还库表所可能用到的控件的属性如图:属性名称属性值Caption设备还库表AutoCenter.T.-真Backcolor255.255.255“Form1”控件的主要属性控件名属性名称属性值cmdExitVisiblecmdDeleteVisiblecmdPrintVisiblecmdEditVisibleCommand2Caption回主界面“buttonset1”控件的主要属性保存

25、后运行表单,得到结果如图:(五)设备需求模板的设计在设备需求模板中将设备需求数据的田间和保存日志等功能。 通过表单向导生成的表单,用户可以调节控件的位置,修改表单中控件的属性,最后结果如图所示:相关属性设置如表:“form1”控件的主要属性属性名称属性值Caption部门需求表Autocenter.T.-真Backcolor255.255.255“buttonset1”控件的主要属性控件名属性名称属性值CmdexitVisibleCmddeleteVisiblecmprintVisiblecmdeditVisibleCommand1Caption保存日志Command2Caption回主界面双

26、击回主界面命令按钮,添加click事件代码如下:thisform.release(六)设备采购模板的设计在设备采购模块中将实现设备采购数据的添加和保存日志等功能。1.由数据表生成表单与前面表单设计类似,选择计划采购时间的升序排列作为设备采购表的索引。2.为窗体修改和添加命令按钮在表单上添加2个命令按钮“保存日志”和“回主界面”。设置表单中控件的属性。如图,列出了需要修改的空间的名称以及属性值。“form1”控件的主要属性属性名称属性值Caption设备采购计划表Antocenter.T.-真 Backcolor255.255.255“buttonset1”控件的主要属性控件名属性名称属性值Cm

27、dexitVisible.F.-假CmddeleteVisible.F.-假cmprintVisible.F.-假cmdeditVisible.F.-假Command1Caption保存日志Command2Caption回主界面3.为按钮添加click事件代码在表单设计器中,双击保存日志命令按钮。添加click事件代码如下:insert into 操作日志表(操作员,操作内容,操作时间);value (管理员,设备需求,date()双击回主界面命令按钮,添加click事件代码如下:thisform.releasedo form 仓库管理保存表单所作修改,运行效果如图设备采购计划表单(七)显示报

28、表模板设计在该模块中,一共要显示3个报表,分别提供库存不足、库存过多和操作日志等信息。1.设计显示报表表单在项目管理的文档视图下选择“新建”,然后选择新建表单。在空白表单中添加一个页框控件,同时在数据环境里添加现有库存表和操作日志表。分别为每个page添加一个表格控件grid1.如图:库存不足表库存过多表操作日志表设置表格控件的属性,如表所示“grid1”控件的主要属性控件名属性名称属性值Pageframe1.page1.grid1Readonly .T.-真Pageframe1.page1.grid1recordsourcetype1-别名Pageframe1.page1.grid1Colu

29、mncount-1Pageframe1.page2.grid1Readonly .T.-真Pageframe1.page2.grid1recordsourcetype1-别名Pageframe1.page2.grid1Columncount-1Pageframe1.page3.grid1Readonly.T.-真Pageframe1.page3.grid1recordsourcetype1-别名Pageframe1.page3.grid1Columncount-1“pageframe1”控件的主要属性控件名属性名称属性值From1Caption显示报表Pageframe1Pagecout3Pa

30、geframe1.page1Caption库存不足表Pageframe1.page2Caption库存过多表Pageframe1.page3Caption操作日志2.代码设计定义pageframe1.page1.grid1的init事件:local custs1select 设备号,最大库存,现有库存 from 现有库存表;where (现有库存最大库存) into cursor custs1thisform.pageframe1.page1.grid1.recordsource=custs1定义pageframe1.page2.grid1的init事件:local Custs2select

31、设备号,最小库存,现有库存 from 现有库存表;where (现有库存最小库存)into cursor Custs2定义pageframe1.page3.grid1的init事件:local Custs3select * from 操作日志表 into cursor Custs3thisform.pageframe1.page3.grid1.recordsource=Custs3为方便返回主界面,添加一个Caption属性为“返回主界面”的命令按钮,Click代码为:thisform.releasedo form 仓库管理运行“显示报表”表单,界面如图:五、系统的编译和发行(一)设置主文件

32、用主图标(以黑体的文件表示)标记的文件是用户在启动.app 或者是.exe时被调用文件,可以是一个表单、菜单和程序,建议使用程序作为主文件。(二)构建主文件 如果主文件是一个程序,它将调用应用程序框架中的各个功能组件,然后由这些组件调用应用程序的其余部分。如果要建立一个简单的主程序,可以按下列步骤进行。1. 现设置应用环境界面。2.确定初始用户界面。3.建立事件循环。4.恢复环境,退出应用程序。本系统可以建立下面的程序作为主程序:Set directory to d:李林芳Do form 仓库管理On shutdown quitRead events本系统的主程序为主程序.prg。(三)在.a

33、pp和.exe文件中包含和排除文件 如果在发布的应用程序中不想再更改这些文件,可把它们放在项目中并设置为“包含”。那么这些文件变成只读的,不能修改。如果想修改这些文件,把它们放在项目中设置为“排除”,然后作为独立文件随着应用程序一起发布。在默认的情况下,vfp在嵌放的过程中排除了数据库、表单、称为.ff的c库文件和.app文件。数据库和表格需要变化和添加,而如果编译后包含自.exe或者.app文件中,由于这两个文件被创建后都是静止的,由此被包含的文件也是静态的和只读的。把数据库和表格白含在这些文件中很明显会带来问题。因为这些文件不能被包含在文件.app和.exe中,所以要发布一个应用程序之前为

34、这些文件做好准备。六、运行结果仓库管理系统各模块运行结果如下所示。七、参考文献1.管理信息系统,苏选良编著,电子工业出版社;.2.数据库与管理信息系统实验教程 苏选良编 电子工业出版社;3.Visual Foxpro数据库系统开发实例导航,邵洋,人民邮电出版社。八、实习小结(一)本系统特色 设计完成的仓库管理系统能进行物资的入库、出库、还库登记和需求信息的输入等,还能进行相关信息的查询、修改及生成报表,记录操作日志等,但相对于实际情况来说,本系统只是个简单化的概念级,现实中应还有更多的细分功能。(二)心得经过了这次仓库管理系统的课程设计,明白了做一个小型软件的步骤和流程.如何让自己设计的软件运

35、用到具体的实际工作中,一个关键的环节就是程序设计和运行测试中遇到的问题该如何解决。从解决问题的过程中,小组的每个成员积极完成自己的模块,通力合作,终于攻克一个个难关,完成本系统的设计和运行。从中我们学到了许多平时课本上所没有的知识。当然,能够完成这个仓库管理系统,感觉很有成就感。运用到的开发工具和软件技术:此系统结合货物仓库管理的要求,对VisualFoxPro(VFP)数据库管理系统、SQL语言的学习和应用,主要完成货物仓库管理系统的需求分析,系统的数据库设计和实现,系统的表单设计,主控程序设计,并由此设计了数据库结构和应用程序。系统运行结果证明,本组设计的货物仓库管理系统可以满足仓库管理者完成仓库管理的日常工作,包括物资的入库,出库以及库存材料信息的管理维护等系统还需要哪些改进:在编写源程序代码的过程中,对语言的运用还需要提高,应使写出来的程序更加简洁,易读懂,更加满足实际工作的需要.要想使做出来的程序更好的利用还需根据实际需要在今后的运用中不断的改进和完善.31

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号