Foxtable(狐表)用户栏目专家坐堂 → 狐爸快点帮我看看这是个什么错误,急


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

主题:狐爸快点帮我看看这是个什么错误,急

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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
狐爸快点帮我看看这是个什么错误,急  发帖心情 Post By:2011/5/28 11:36:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20110528113448.png
图片点击可在新窗口打开查看

应该是这个事件造成的BeforeSaveDataRow

Dim dr As DataRow = e.DataRow
    Dim pf As String
    If dr.RowState <> DataRowState.Added Then '如果不是新增行
       Return '那么返回
    ElseIf dr.IsNull("采购日期") Then '如果没有输入日期
       e.Cancel = True '取消保存此行
       MessageBox.Show("采购进货表必须输入采购日期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
       Return
    Else
       pf = Format(dr("采购日期"),"yyyyMM") '否则获得编号的前缀,两位年,两位月
    End If
    Dim cmd1 As New SQLCommand
    Dim cmd2 As New SQLCommand
    Dim Key As Integer
    cmd1.C '设置数据源名称
    cmd2.C '设置数据源名称
    cmd1.commandText = "Select Count(*) From [采购编号] Where [前缀] = '" & pf & "'"
    If cmd1.ExecuteScalar = 0 Then '如果编号表不存在前缀的行,那么增加一行
       cmd1.commandtext = "Insert Into 采购编号 (前缀, 顺序号) Values('" & pf & "',1)"
       cmd1.ExecuteNonQuery
    End If
    cmd1.commandText = "Select [顺序号] From [采购编号] Where [前缀] = '" & pf & "'"
    Do
    Key = cmd1.ExecuteScalar() '从后台获得顺序号
    cmd2.commandText = "Update [采购编号] Set [顺序号] = " & (Key + 1) & " Where [顺序号] = " & Key & " And [前缀] = '" & pf & "'"
    If cmd2.ExecuteNonQuery() > 0 Then '更新顺序号
        Exit Do '更新成功则退出循环
    End If
    Loop

     e.DataRow("采购编号") ="CG" & pf & "-" & Format(Key,"0000")


[此贴子已经被作者于2011-5-28 11:43:19编辑过]

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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 12:29:00 [显示全部帖子]

以下是引用程兴刚在2011-5-28 12:18:00的发言:
pf=f0rmat(……).text

这是什么意思?


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 13:40:00 [显示全部帖子]

又出现这个错误了

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建 文本文档.txt


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 14:24:00 [显示全部帖子]

这个是帮助实例里有的,我以前测试过没问题,而且我现在其它表里也有这样的代码,都没有问题


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 15:39:00 [显示全部帖子]

我重新检查了关联设置

采购和采购明细通过采购编号关联

不知为什么出现这样的错误

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20110528153447.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 17:12:00 [显示全部帖子]

狐爸,还是没看懂呀,能不能给个直接的办法,我都整了一天了,都还没有解决这个问题


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 17:19:00 [显示全部帖子]

狐爸,

这个代码应该修改哪个地方呀?我都快急死了。。。。。。。。。。。

Dim dr As DataRow = e.DataRow
    Dim pf As String
    If dr.RowState <> DataRowState.Added Then '如果不是新增行
       Return '那么返回
    ElseIf dr.IsNull("采购日期") Then '如果没有输入日期
       e.Cancel = True '取消保存此行
       MessageBox.Show("采购进货表必须输入采购日期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
       Return
    Else
       pf = Format(dr("采购日期"),"yyyyMM") '否则获得编号的前缀,两位年,两位月
    End If
    Dim cmd1 As New SQLCommand
    Dim cmd2 As New SQLCommand
    Dim Key As Integer
    cmd1.C '设置数据源名称
    cmd2.C '设置数据源名称
    cmd1.commandText = "Select Count(*) From [采购编号] Where [前缀] = '" & pf & "'"
    If cmd1.ExecuteScalar = 0 Then '如果编号表不存在前缀的行,那么增加一行
       cmd1.commandtext = "Insert Into 采购编号 (前缀, 顺序号) Values('" & pf & "',1)"
       cmd1.ExecuteNonQuery
    End If
    cmd1.commandText = "Select [顺序号] From [采购编号] Where [前缀] = '" & pf & "'"
    Do
    Key = cmd1.ExecuteScalar() '从后台获得顺序号
    cmd2.commandText = "Update [采购编号] Set [顺序号] = " & (Key + 1) & " Where [顺序号] = " & Key & " And [前缀] = '" & pf & "'"
    If cmd2.ExecuteNonQuery() > 0 Then '更新顺序号
        Exit Do '更新成功则退出循环
    End If
    Loop

     e.DataRow("采购编号") ="CG" & pf & "-" & Format(Key,"0000")


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/28 17:21:00 [显示全部帖子]

在别在关联表中这是类似的代码就没有问题的呀


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/29 15:16:00 [显示全部帖子]

谢谢狐爸的提示

绕了一大圈,费尽了脑汁,总算是给折腾出来了

重新定向创建SQL数据库,不行

重新安装。NET 不行

重新安装SQL 不行

重新安装狐表 不行

N次的检查和测试以上代码 没发现问题

原来是有一个与此代码无关的列为日期型造成的,在DataColChanging加一代码就OK了

Case "预达日期"
        If e.NewValue = "#0001-01-01#" Then
            e.NewValue = Nothing
        End If


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


加好友 发短信
等级:小狐 帖子:357 积分:2895 威望:0 精华:0 注册:2008/9/1 14:05:00
  发帖心情 Post By:2011/5/29 15:23:00 [显示全部帖子]

我做的那些绕圈的事,都是在你回复之前,就是看了你的贴子才找到原因的,建议狐爸把狐表出现的有代表性问题和解决办法应该搞一个汇总写帮助或论坛里,尤其是那些不同的错误提示的问题的解决办法,这样免得大家折腾呀


 回到顶部
总数 11 1 2 下一页