Foxtable(狐表)用户栏目专家坐堂 → 问题,自动退出系统


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

主题:问题,自动退出系统

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


加好友 发短信
等级:童狐 帖子:238 积分:1986 威望:0 精华:0 注册:2015/2/16 13:29:00
问题,自动退出系统  发帖心情 Post By:2015/5/22 10:48:00 [只看该作者]

If e.DataCol.Name = "出厂编号" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("出厂编号= '" & e.NewValue & "'")
    If dr IsNot Nothing Then
        MessageBox.Show("此出厂编号号已经存在!")
        e.Cancel = True
    End If
End If

我在datarowchanging那里写了这段代码,当出厂编号列不为空,当进行复制当前行时,出现系统自动退出,请问什么问题?


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/22 10:49:00 [只看该作者]

这段代码没问题, 把剩下的代码发出来.

或者你DataColChanged的代码.

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


加好友 发短信
等级:童狐 帖子:238 积分:1986 威望:0 精华:0 注册:2015/2/16 13:29:00
这是datacolchanged的代码  发帖心情 Post By:2015/5/22 12:33:00 [只看该作者]

Dim a As Integer = Rand.Next(3,60)
Dim s5 As String = a
If e.DataRow("设备名称") ="无机房客梯" Or e.DataRow("设备名称") ="无机房货梯" Then
      e.DataRow("紧急电动") ="/"
      e.DataRow("共用机房") ="/"    
      e.DataRow("机房结果") ="/"
      e.DataRow("机房结论") ="/"
      e.DataRow("机房门高") ="/"
      e.DataRow("机房门宽") ="/"  
       e.DataRow("直梯梯高") ="/"
      e.DataRow("直梯通道高") ="/"
      e.DataRow("直梯梯夹角") ="/"
      e.DataRow("机房高度差") ="/" 
      e.DataRow("圈框") ="/"
      e.DataRow("机深度") ="/"
      e.DataRow("机宽度") ="/"
      e.DataRow("机高度") ="/"
      e.DataRow("无机房结果") ="符合"
      e.DataRow("无机房结论") ="合格"
End If
If e.DataRow("消防功能") ="大众消防" Then
      e.DataRow("消防结果") ="符合"
      e.DataRow("消防结论") ="合格"
Else
      e.DataRow("消防结果") ="/"
      e.DataRow("消防结论") ="/"
End If

If e.DataRow("轿厢缓冲器型式") ="液压缓冲器" Then
      e.DataRow("液压结果") ="符合"
      e.DataRow("液压结论") ="合格"
      e.DataRow("复位时间") =s5
Else
      e.DataRow("液压结果") ="/"
      e.DataRow("液压结论") ="/"
      e.DataRow("复位时间")="/"
End If
'If e.Col.name="门高" Then
 '  If e.Row(e.Col.name)="你设置代替\的值" Then
  '     e.text="\"
   'End If
'End If

 

Vars("ping1")=10*0.01*Math.Abs(e.DataRow("平衡系数电流上行30")-e.DataRow("平衡系数电流下行30"))/(Math.Abs(e.DataRow("平衡系数电流上行30")-e.DataRow("平衡系数电流下行30"))+Math.Abs(e.DataRow("平衡系数电流上行40")-e.DataRow("平衡系数电流下行40")))+0.3
Vars("ping2")= 5*0.01*Math.Abs(e.DataRow("平衡系数电流上行40")-e.DataRow("平衡系数电流下行40"))/(Math.Abs(e.DataRow("平衡系数电流上行40")-e.DataRow("平衡系数电流下行40"))+Math.Abs(e.DataRow("平衡系数电流上行45")-e.DataRow("平衡系数电流下行45")))+0.4
Vars("ping3")= 5*0.01*Math.Abs(e.DataRow("平衡系数电流上行45")-e.DataRow("平衡系数电流下行45"))/(Math.Abs(e.DataRow("平衡系数电流上行45")-e.DataRow("平衡系数电流下行45"))+Math.Abs(e.DataRow("平衡系数电流上行50")-e.DataRow("平衡系数电流下行50")))+0.45
Vars("ping4")=10*0.01*Math.Abs(e.DataRow("平衡系数电流上行50")-e.DataRow("平衡系数电流下行50"))/(Math.Abs(e.DataRow("平衡系数电流上行50")-e.DataRow("平衡系数电流下行50"))+Math.Abs(e.DataRow("平衡系数电流上行60")-e.DataRow("平衡系数电流下行60")))+0.5

If e.DataRow("平衡系数电流上行30") >= e.DataRow("平衡系数电流下行30") And e.DataRow.isnull("平衡系数电流上行30") Then
 '    MessageBox.Show("平衡系数值小于0.30,不符合要求,请加对重块或检查数据是否录完")
  '  Return
ElseIf e.DataRow("平衡系数电流上行40") >= e.DataRow("平衡系数电流下行40") Then
              e.DataRow("平衡系数值") =Vars("ping1")
ElseIf e.DataRow("平衡系数电流上行45") >= e.DataRow("平衡系数电流下行45") Then
   e.DataRow("平衡系数值") =Vars("ping2")
ElseIf e.DataRow("平衡系数电流上行50") >= e.DataRow("平衡系数电流下行50") Then
   e.DataRow("平衡系数值") =Vars("ping3")
Else
     MessageBox.Show("平衡系数值大于0.50,不符合要求,请减少对重块或检查数据是否录完")
    Return
End If

Dim dr As DataRow = e.DataRow
Dim pf As String = ""

pf = Format(dr("竣工日期"),"yyMM-") '否则获得编号的前缀,两位年,两位月
dr("报告编号") =  pf & e.DataRow("出厂编号")


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/22 14:24:00 [只看该作者]

DataColChanged的代码一定要加入 列名判断.绝对不可以没有
if e.datacol.name ="设备名称" then
Dim a As Integer = Rand.Next(3,60) 
Dim s5 As String = a
If e.DataRow("设备名称") ="无机房客梯" Or e.DataRow("设备名称") ="无机房货梯" Then
      e.DataRow("紧急电动") ="/"
      e.DataRow("共用机房") ="/"     
      e.DataRow("机房结果") ="/"
      e.DataRow("机房结论") ="/"
      e.DataRow("机房门高") ="/"
      e.DataRow("机房门宽") ="/"   
       e.DataRow("直梯梯高") ="/"
      e.DataRow("直梯通道高") ="/"
      e.DataRow("直梯梯夹角") ="/"
      e.DataRow("机房高度差") ="/"  
      e.DataRow("圈框") ="/" 
      e.DataRow("机深度") ="/" 
      e.DataRow("机宽度") ="/" 
      e.DataRow("机高度") ="/" 
      e.DataRow("无机房结果") ="符合"
      e.DataRow("无机房结论") ="合格"
End If
end if


你其余的代码,也应该根据对应情况,全部加上 列名判断

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/22 14:25:00 [只看该作者]


 回到顶部