机房收费系统之结账

机房收费系统之结账,第1张

概述         在做机房收费系统的时候,最麻烦的事情,莫过于结账、日结与周结账单的 *** 作。下面就来说一下我自己的经验。            思路                  这是我们需要 *** 作的界面。   在做的过程中,思路很重要,思路通了,整个代码也就基本上做出来了。   下面就来分析一下这个界面的功能。       1.通过选择不同的 *** 作员,下面就呈现不同的 *** 作员的工作记录。   2.购

在做机房收费系统的时候,最麻烦的事情,莫过于结账、日结与周结账单的 *** 作。下面就来说一下我自己的经验。

思路

这是我们需要 *** 作的界面。

在做的过程中,思路很重要,思路通了,整个代码也就基本上做出来了。

下面就来分析一下这个界面的功能。

1.通过选择不同的 *** 作员,下面就呈现不同的 *** 作员的工作记录。

2.购卡账单,显示购买卡学生的信息。

3.退卡账单显示退卡学生信息

4.充值卡显示充值学生信息。

5.结账界面,就是整个 *** 作的汇总。

代码过程

以上的 *** 作怎么转变为代码呢?

*** 作员的设置。

在 *** 作员选择的部分是同步的(选择好 *** 作员姓名后,下面就是 *** 作员的真实姓名),其实感觉这个功能是多余的。

 '选择框写入相应的人员的名字    txtsql = "select * from userinfo where level='" & " *** 作员" & "'"    '选择用户级别    Set mrc = executesql(txtsql,msgtext)          do while mrc.EOF = False        text33.AddItem mrc.FIElds(0)                '通过循环进行添加        mrc.MoveNext     Loop


这个功能是自动添加相应的 *** 作员。那么怎么实现同步呢?

这个也好实现,只需要相应的组合框的单击事件即可同步。

购卡界面

购卡界面,是通过切换实现,此 *** 作员的购卡信息。代码如下:

     '开始写入购卡信息    If sstab1.Tab = 0 Then                '切换不同选项卡来写入事件        myflexgrID1.Rows = 1           '此功能是当切换的时候,自动的清楚行中的信息        myflexgrID1.Cols = 4          '售卡信息       txtsql = "select * from student_information where rechargeman = '" & Trim(text33.Text) & "'" & " and checkcount = '" & "否" & "'"       Set mrc = executesql(txtsql,msgtext)        With myflexgrID1            .TextMatrix(0,0) = "学号"            .TextMatrix(0,1) = "卡号"            .TextMatrix(0,2) = "日期"            .TextMatrix(0,3) = "时间"            do while mrc.EOF = False                .Rows = .Rows + 1                .TextMatrix(.Rows - 1,0) = Str(mrc.FIElds(0))                .TextMatrix(.Rows - 1,1) = Str(mrc.FIElds(6))                .TextMatrix(.Rows - 1,2) = mrc.FIElds(8)                .TextMatrix(.Rows - 1,3) = mrc.FIElds(9)                mrc.MoveNext            Loop        End With


结账界面 *** 作

退卡、充值的 *** 作是一致的。在此就不多说了。

怎么来获得购卡张数,退卡张数呢? 代码如下:

'计算学生购卡的张数         txtsql = "select count(*) from student_information where rechargeman = '" & Trim(text33.Text) & "'" & " and checkcount = '" & "否" & "'"         Set mrc = executesql(txtsql,msgtext)         g_totalcard = mrc.FIElds(0)         mrc.Close         End If                 '计算此 *** 作员卖出去的总张数        txtsql = "select count(*) from student_information where rechargeman = '" & Trim(text33.Text) & "'"         Set mrc = executesql(txtsql,msgtext)         g_allcard = mrc.FIElds(0)         mrc.Close

通过这种方式可以计算出此 *** 作员的各中 *** 作。

总后的应收总金额总又怎么来写入呢?

应收总金额=充值金额-退卡金额

结账

得到了以上的各种功能,下面就开始我们的结账了。

此 *** 作就是把这个结账界面的信息存入到我们的日结账单表中,为以后查询做准备。

首先为了防止重复性的 *** 作一个人员,需要修改状态。代码如下:

         '充值状态变化     txtsql = "select * from rechargerecord where rechargeman ='" & Trim(text33.Text) & "'" & " and checkcount = '" & "否" & "'"     Set mrc = executesql(txtsql,msgtext)          do while mrc.EOF = False        mrc.FIElds(5) = "是"        mrc.MoveNext     Loop            mrc.Close


通过这个 *** 作就修改了我们表中的结账状态。(当然需要修改的表的又好几个,比如充值表,退卡表), *** 作都是一致的。

存入数据

修改完状态后,就开始把需要的数据存储到日结账单表中

我们的日结账单表如下:

在此我们怎么来了解到上次结账的余额呢?

代码如下:

'上次剩余金额     txtsql = "select * from checkday"     Set mrc = executesql(txtsql,msgtext)     '获取上次的剩余金额        mrc.MoveLast      '移动到最后        lastremain = mrc.FIElds(4)     '获得上次结账的余额        mrc.MoveFirst

通过对象的Movelast属性获得我们需要的数据。

写入数据

 '添加下一次记录     mrc.AddNew     mrc.FIElds(0) = lastremain     mrc.FIElds(1) = g_consumecash     mrc.FIElds(2) = g_txttotalmoney + money     mrc.FIElds(3) = Text1.Text     mrc.FIElds(4) = txtreturnmoney + lastremain     mrc.FIElds(5) = registerdate     mrc.Update     mrc.Close          MsgBox "结账成功",vbOKOnly + vbExclamation,"提示"

到此,整个结账的过程,添加完毕。

下一篇,将介绍周结账单。

总结

以上是内存溢出为你收集整理的机房收费系统之结账全部内容,希望文章能够帮你解决机房收费系统之结账所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1277191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存