为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 程序设计说明书

程序设计说明书

2019-02-27 9页 doc 30KB 112阅读

用户头像

is_180829

暂无简介

举报
程序设计说明书信息系统开发与应用流程实习 程序设计说明书 专业班级:              指导老师:              学    号:            姓    名:              2015年1月10日 一、目的 1. 培养学习大型软件的开发能力,提高学生分析问题、解决问题的能力。 二、开发工具 2. VFP6.0 三、实现的功能 1.算法训练 (1)能精确计算(加或减)具有15位以上长度的数据,并具有输入、处理和输出功能; (2)产生5万个不重复的随机六位整数。 2.构建模型 通过编程建立数学模型...
程序设计说明书
信息系统开发与应用实习 程序设计说明书 专业班级:              指导老师:              学    号:            姓    名:              2015年1月10日 一、目的 1. 培养学习大型软件的开发能力,提高学生分析问题、解决问题的能力。 二、开发工具 2. VFP6.0 三、实现的功能 1.算法训练 (1)能精确计算(加或减)具有15位以上长度的数据,并具有输入、处理和输出功能; (2)产生5万个不重复的随机六位整数。 2.构建模型 通过编程建立数学模型,实现有规律两位数相乘的自动计算。 3.主控模块设计 (1)创建了一个存放用户登记信息表; (2)创建了一应用系统主菜单,具有文件管理、数据管理、信息查询和报表输出功能; (3)创建了一个表单,具有检验用户登录身份、保护用户号与密码的功能。 4.数据输入界面设计与数据核校验实现 实现了数据输入、修改、删除和对数据的校验与控制功能。 5.MRP实训 编制了MRP计算程序,能够输出计算结果。 四、开发流程 1.算法训练 (1)具体流程:先明确表单的设置,表单主要是显示输入的两个数和计算的结果,命令按钮包括加、减、退出、记录四个,然后在相应的命令click 事件中写出计算的代码。其中“记录”命令按钮是用来显示后台的数据表的。 (2)产生的文件:运算.dbf,运算.scx。 2.构建模型 (1)具体流程:该题首先根据所给的两组数学乘积式找出规律,记第一位数的十位上数    字为a,个位上数字为b,则,两组数据的规律如下: ①s=(a*10+b),w=(a*10+(10-b)), q=(a*(a+1)*100)+(b*(10-b)) ②s=(a*10+b), w=(10-a)*10+b, q=((a*(10-a)+b)*100)+b*b 然后在VFP的程序中写出相应的编码,进行运算,求解。 (2)产生的文件:个位上数同.prg,十位上数同.prg 3.主控模块设计 (1)具体流程:这道题我在之前的课程设计中已经反复做了好几遍了,所以在做之前已经有了很清晰的思路,先是建立后台数据表,然后建立用户登录的表单。这次,我仿照QQ的登陆界面,在用户登录界面又增加了“找回密码”和“注册”两个功能,让整个界面看上去挺高大上的。 (2)产生的文件:hdt.dbf;登陆界面.scx;找回密码.scx;注册账号.scx。 4.数据输入界面设计与数据核校验实现 (1)具体流程:我的学号是8,所以我对应做的内容是“库位基本数据”。首先创建了数据库表,然后创建了数据输入表单,在表单上实现了数据的输入、修改、删除和校验与控制的操作。 (2)产生的文件:库位基本数据.dbf,库位基本数据.scx。 5.MRP实训 (1)具体流程:依次建物料主文件、物料清单、库存记录表、主文件数据表,然后创建MRP展开记录表结构,最后编制MRP计算程序,并输出计算结果。 (2)产生的文件:物料主文件.dbf,物料清单.dbf,库存记录数据表.dbf,主文件数据表.dbf,MRP展开记录表结构.dbf,mrp计算.scx。 五、调试分析 1.算法训练 (1)调试的内容名称:运算.scx。 (2)调试过程中出现的问题:第一次运行表单时,用“111111*********”去进行调试,如下图,但是不对,出现了程序错误,说“函数参数的值、类型或数目无效”。 我猜可能是加的A、B值是我当初设置的字符型,没有转换为数值型,打开“加”命令按钮,我写的代码是: a=thisform.text1.value b=thisform.text2.value c1=int(a+b) 后来将其改为: a=val(thisform.text1.value) b=val(thisform.text2.value) c1=int(a+b) 又运行了一遍,结果显示正确,打开后台的数据表,所操作的记录也正确的写入进去了。 后来,吸取教训,又仔细检查了一下“减”命令按钮中的代码,发现也有这种粗心产生的错误,改过来后,这个表单正常的运行了。 2.构建模型 (1)调试的内容名称:个位上数同.prg,十位上数同.prg。 (2)调试过程中出现的问题:这道题在运行时,一次成功,没有出现什么错误,分别用了“1”和“2”两个数字去调试,下面是运行显示的结果: 在编程的时候,只要思路清晰、细心认真,还是可以一次性成功的。 3.主控模块设计 (1)调试的内容名称:登陆界面.scx;找回密码.scx;注册账号.scx。 (2)调试过程中出现的问题:基本模块调试时显示“无法找到用户表”,原来是在登陆界面的数据环境中,我没有添加后台的数据表。这个问题解决之后之后,我又仿照QQ登陆界面在增加了“找回密码”和“注册”功能。 在找回密码界面,一开始只是输入用户号,如果存在,则跳出相应的密码,否则没有任何变化,运行时,总觉得哪不对,后来加了用户号的校验功能,当输入需要查询的用户号时,如果不存在,会自动跳出一个对话框,告诉查询者所要查询的用户号不存在,然后刷新,重新输入,具体代码如下: locate for ALLTRIM(thisform.text1.value)=ALLTRIM(用户号) if not found() =MESSAGEBOX('用户不存在,请重新选择!') else =messagebox('您的密码是'+allt(密码)+'!') thisform.release endif 4.数据输入界面设计与数据核校验实现 (1)调试的内容名称:库位基本数据.dbf,库位基本数据.scx (2)调试过程中出现的问题: 1)在数据添加完成后,“添加”按钮里面写的“thisform.refresh”起不到刷新作用,原有的添加内容还是显示在表单上,后来在form的click事件中写thisform.refresh,也没有用,翻书后,明白过来了,其实不是刷新表单,而是应该将填写内容的文本框清空。后来我在form 的click事件中写了下面这串代码: thisform.text1.value='' thisform.text2.value='' thisform.text3.value='' thisform.text4.value='' thisform.text5.value='' thisform.text6.value='' 问题就解决了。 2)删除库位基本数据时,删除失败,显示文件已被占用,然后我在“删除”按钮中添加了“use 库位基本数据 exclusive”以独占的方式打开后台数据表,才解决问题。 5.MRP实训 (1)调试的内容名称:MRP计算.scx。 (2)调试过程中出现的问题:这道题比较复杂,涉及到原有库存量、数量比例关系、时区数、各时区毛需求量、各时区入库量、安全库存量、订货倍数、提前期等多个变量,为了方便验证结果的正确性,本题仿照了ERP老师上课讲解的例题进行编制(没有考虑安全库存量、订货倍数、提前期这三个变量)。 我用的调试数据是:A、B、C、D的原有库存量分别是:5、15、20、50,四者之间的比例关系为:1:2:2,A的各时区毛需求量量都为10,A在第一、二时区的入库量分别为15、20。 调试时,出现的大大小小错误有:找不到变量、文件被占用、表单卡着不动了等多个错误。又回过头来修改,最后调试成功了,其运行的界面和写入数据表的数据如下: 准确的说,这道题并不难,只是涉及的变量比较多,之间的关系比较复杂。如果能够理清变量之间的数量关系,编码时,只要根据BOM表一层一层去去编写代码,问题就可以解决了。我编写的代码还有一个很大的问题就是,重复的语句太多了,应该是存在一个更好的编码,就像循环可以解决重复计算那样,来解决这个问题。 六、体会 在系统开发之前,必须明确所采用的工具,然后要扎实地掌握该工具的理论知识,只有这样,才好下手编程。我选用的编程工具是VFP6.0,由于每次课程设计都是采用该工具,因此基本扎实地掌握了VFP的程序编码方法。 在开始开发时一定要对每一个任务的解决方案有一个大体的思路,然后开始动手设计。在设计的过程中,会出现许多意想不到的错误,有的是程序代码写错了,有的是自己粗心漏掉了像endcase、else这些组合中的语句,因此必须耐下心,仔细的检查自己所写的代码。实在解决不了的情况下,可以和同学一起讨论一下,一个一个问题慢慢的去解决。每解决一个问题,就获得了一点进步。 这次编程的过程中,我明显发现自己比上几次进步了许多,在编代码之前基本上都能够有一个正确的编写思路,很多代码可以不翻书、不百度自己写出来了,而且编程所用的时间也比较短。 编程这种事,需要慢慢磨练,不断地调试,不断地去解决出现的问题,只有这样,才能夯实编程的基础。虽然VFP已经被淘汰了,但是编程的思想是一样的,无非就是语言的要求和语句书写格式不一样。因此当熟练了VFP的编程方法后,我打算再好好学学Java,以后尝试着用Java去解决实际问题。这次课程设计,就有同学运用了Java去编程,在佩服的同时,也让我明白,编程这东西,只要你肯下功夫、愿意动脑,还是能学会的。
/
本文档为【程序设计说明书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索