Foxtable(狐表)用户栏目专家坐堂 → PrepareEdit事件


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

主题:PrepareEdit事件

美女呀,离线,留言给我吧!
Springamy
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
PrepareEdit事件  发帖心情 Post By:2018/11/12 14:48:00 [显示全部帖子]

PrepareEdit事件中

If e.Col.Name ="订单号" Then
            
        '2018-11-06新增参考价格1,参考价格2,从B表中读取数据
        cmd.CommandText = "select je1,je2 fr om xm where xmdh ='" & e.Row("订单号") & "'"
        Dim dt1 As DataTable = cmd.ExecuteReader
        If dt1.DataRows.Count >0 Then
            e.Row("价格1") = dt1.DataRows(0)("je1")
            e.Row("价格2") = dt1.DataRows(0)("je2")
     
       End If
       
       
    End If
End If
DataTables("订单_Table1").Save

 

为什么保存不了价格数据呢,保存不到数据库中.


 回到顶部
美女呀,离线,留言给我吧!
Springamy
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
  发帖心情 Post By:2018/11/12 16:38:00 [显示全部帖子]

If e.DataCol.Name ="订单号" Then
    If e.DataRow("订单号") <> "" Then
              
        '2018-11-12新增参考价格1,参考价格2,从B表中读取数据
        cmd.CommandText = "select je1,je2 fr om xmdd where xm ='" & e.DataRow("订单号") & "'"
        Dim dt1 As DataTable = cmd.ExecuteReader
        If dt1.DataRows.Count >0 Then
            e.DataRow("价格1") = dt1.DataRows(0)("ckje1")
            e.DataRow("价格2") = dt1.DataRows(0)("ckje2")
     
       End If
       
       
    End If
End If
datatable("窗口_Table1").save

 

代码搬迁到datacolchanged事件中,完全木有效果阿?找不到价格呢,在prepareEdit事件中可以找到就是不能保存的


 回到顶部
美女呀,离线,留言给我吧!
Springamy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
  发帖心情 Post By:2018/11/12 17:01:00 [显示全部帖子]

If e.DataRow("供应商")="XXX有限公司" Then
    If  e.DataRow("价格1") ="" Then
        DataTables("窗口_Table1").DataCols("价格1").RaiseDataColChanged()
        DataTables("窗口_Table1").DataCols("价格2").RaiseDataColChanged()
        cmd.CommandText = "select ckje1,ckje2 fr om xmdd where xmdhout ='" & e.DataRow("订单号") & "'"
        Dim dt1 As DataTable = cmd.ExecuteReader
        If dt1.DataRows.Count >0 Then
            e.DataRow("价格1") = dt1.DataRows(0)("ckje1")
            e.DataRow("价格2") = dt1.DataRows(0)("ckje2")
        End If
    End If
End If

datacolchanged事件代码改成这样还是不对呢老师,价格出不来

 


 回到顶部
美女呀,离线,留言给我吧!
Springamy
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
  发帖心情 Post By:2018/11/12 17:10:00 [显示全部帖子]

DataTables("窗口_Table1").DataCols("订单号").RaiseDataColChanged()

这个代码我有点看不懂

不是应该这样吗:

DataTables("窗口_Table1").DataCols("价格1").RaiseDataColChanged() 重置价格列,

我是要根据订单号从B表中查找价格1 跟价格2,把这两列数据放到Table1中,不是重置订单号列哦


 回到顶部
美女呀,离线,留言给我吧!
Springamy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
  发帖心情 Post By:2018/11/12 17:53:00 [显示全部帖子]

If e.Col.Name ="订单号" Then
         msgbox("执行代码")   


        '2018-11-06新增参考价格1,参考价格2,从B表中读取数据
        cmd.CommandText = "select je1,je2 fr om xm where xmdh ='" & e.Row("订单号") & "'"
        Dim dt1 As DataTable = cmd.ExecuteReader
        If dt1.DataRows.Count >0 Then
            e.Row("价格1") = dt1.DataRows(0)("je1")
            e.Row("价格2") = dt1.DataRows(0)("je2")
     
       End If
       
       
    End If
End If
添加了msgbox(),但是不会弹出,是什么原因呢

 


 回到顶部