Foxtable(狐表)用户栏目专家坐堂 → 请检查菜单的重置列有无问题


  共有4331人关注过本帖树形打印复制链接

主题:请检查菜单的重置列有无问题

帅哥哟,离线,有人找我吗?
blackzhu
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
请检查菜单的重置列有无问题  发帖心情 Post By:2014/2/18 11:02:00 [只看该作者]

新版的菜单 重置列 不知道 为啥  一个很简单的代码 只要重置列一下 就直接退出系统.

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/2/18 11:03:00 [只看该作者]

这个不是重置列的问题,是DatacolChanged事件的问题,而且通常是死循环的问题。

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2014/2/18 11:04:00 [只看该作者]

看GIF 


图片点击可在新窗口打开查看此主题相关图片如下:重置列.gif
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2014/2/18 11:06:00 [只看该作者]

我在几个表里面 都发现有这个问题

在 DataColChanged 里面的代码如下  应该不存在代码问题


If e.DataCol.Name = "条形码" Then
    Dim cmd As New SQLCommand
    Dim dt As DataTable
    cmd.C
    Dim dr As DataRow = e.DataRow
    cmd.CommandText = "SELECT * From {商品资料} Where [条形码] = '" & dr("条形码") & "'"
    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
        dr("名称") = dt.DataRows(0)("名称")
        dr("类别") = dt.DataRows(0)("类别")
        dr("单位") = dt.DataRows(0)("单位")
        dr("规格") = dt.DataRows(0)("规格")
        dr("颜色") = dt.DataRows(0)("颜色")
        dr("品牌") = dt.DataRows(0)("品牌")
        dr("零售价") = dt.DataRows(0)("零售价")
        dr("供货商") = dt.DataRows(0)("供货商")
        dr("原价") = dt.DataRows(0)("成本价")
    Else
        dr("名称") = Nothing
        dr("类别") = Nothing
        dr("单位") = Nothing
        dr("规格") = Nothing
        dr("颜色") = Nothing
        dr("品牌") = Nothing
        dr("零售价") = Nothing
        dr("供货商") = Nothing
        dr("原价") = Nothing
    End If
End If

If e.DataCol.Name = "条形码" Then
    Dim cmd As New SQLCommand
    Dim dt As DataTable
    Dim dr As DataRow = e.DataRow
    cmd.C
    cmd.CommandText = "SELECT * From {促销设定} Where [条形码] = '" & e.NewValue & "' And [起始时间] <= #" & dr("销售日期") & "# And [结束时间]>=#" & dr("销售日期") & "#"
    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
        dr("促销折扣") = dt.DataRows(0)("促销折扣")
    Else
        dr("促销折扣") = Nothing
    End If
End If

Select Case e.DataCol.Name
    Case "折扣","零售价","促销折扣"
        If e.DataRow(e.DataCol.Name) Then
            e.DataRow("零售价")=Nothing
        Else
            If e.DataRow.IsNull("促销折扣") = False AndAlso e.DataRow("促销折扣") >=0 Then
                e.DataRow("零售价")=e.DataRow("原价")*e.DataRow("促销折扣")
            Else
                e.DataRow("零售价")=e.DataRow("原价")*e.DataRow("折扣")
            End If
        End If
End Select

If e.DataCol.Name = "销售数量" Then
    If e.DataRow.IsNull("销售数量") Then
        e.DataRow("销售金额")=Nothing
    Else
        e.DataRow("销售金额")=e.DataRow("销售数量")*e.DataRow("零售价")
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2014/2/18 11:07:00 [只看该作者]

我直接输入数据 这些代码都可以执行 并无退出现象

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2014/2/18 11:19:00 [只看该作者]

我仔细检查了 还是触发列的列名 套用造成的.

 回到顶部