在做机房收费系统的时候,遇到了很多问题,学到了很多东西。
凡事预则立,不预则废。其实不仅仅是开发软件,做任何事情。小到一日,大至一生。都需要目标和计划来指导你的生活,不然你就不知道软件开发的进度、不知道活着到底是为了什么!原本学生信息管理系统早以完成,却一拖再拖,实在不该啊!但是这也是一个实在的经历和教训吧!遇到了,去思考,这件事情就变得有价值、有意义!我总结了一下任务的图,也算是对这件事情的思考吧!
在机房收费系统中,使用最多的也就是组合查询和报表。姑且把它看作核心吧!(这里个人观点不一,欢迎交流!)
一直让我很映像深刻的是数组的应用,一个很熟悉而又基础的知识让这个组合查询变得如此的简单。
我的组合查询有这些几个核心的要点
1.数组来定义变量,简化工作
2.select case 语句与数组的应用简化工作
3.然后就是select语句的应用
详细的代码可以看我的另一篇博客基础很重要,查询如何“组合”!谈谈组合查询
我们用的都是Grid +Report 报表。刚开始找了很久,最后还是找到师哥师姐的博客。所以工作顿时变得简单,但是在实施过程中还是出现了一些问题。这些问题让我的对这个报表软件的使用映像更加深刻了。说一下我在使用中遇到的问题
1.就是在设置Grid+Report的时候,按照向导的配置数据库总是报错。试试自己的数据库连接语句就可以了!
2.在利用报表里面的参数显示日期的时候出现了些问题总是读不出来。
这里需要设置一些东西,建议看看Grid+ Report 这个软件的帮助。完全能够指导你完成报表的建立!
这是我解决问题的步骤,仅供参考
在vb代码中需要这些一段代码,就可以实现时间的显示了。
Report.ParameterByName("DateStart").Value = Format$(MonthView1.Value, "yyyy-mm-dd")
monthview 是用来传值的控件。这段不需要插入到哪里,放到form load里面也是可以使用的!
这是我遇到一个比较难以解决的问题,因为无论你怎样写好的语句,总是显示不出来。
有以下几点原因
1.在sql server数据库中该字段的数据类型不对。请改成Date后再试!
2.在报表控件中,你插入的该参数不是日期类型
如图
剩下的就是sql 语句了
Report.DetailGrid.Recordset.QuerySQL = "select * from weekcheckinfo where date between '" & MonthView1.Value & "' and '" & MonthView2.Value & "'"
也就是Between And连接使用。
综上,机房收费系统大致问题我遇到的也就是这些比较典型了!拿出来与大家交流,互相学习!纵观我出现的问题,其实最严重倒不是那个技术问题难以攻克。在巨人的肩膀上,大多数问题都有资料可以查到。其实最为严重的就是第一条了,也是我感受颇深的一条。