Foxtable(狐表)用户栏目专家坐堂 → 表A已经选取表B的主键字段,希望自动引用表B主键对应的单价


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

主题:表A已经选取表B的主键字段,希望自动引用表B主键对应的单价

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


加好友 发短信
等级:童狐 帖子:250 积分:1813 威望:0 精华:0 注册:2012/6/28 13:53:00
表A已经选取表B的主键字段,希望自动引用表B主键对应的单价  发帖心情 Post By:2017/6/11 8:52:00 [只看该作者]

表A已经选取表B的主键字段,希望自动引用表B主键对应的单价,单价要随表B变化而变化

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/11 14:55:00 [只看该作者]


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


加好友 发短信
等级:童狐 帖子:250 积分:1813 威望:0 精华:0 注册:2012/6/28 13:53:00
关联表之间可以实现,为什么非关联表之间实现不了,怎么实现  发帖心情 Post By:2017/6/12 13:45:00 [只看该作者]

关联表之间可以实现,为什么非关联表之间实现不了,怎么实现

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/12 14:13:00 [只看该作者]

以下是引用chengjingliang在2017/6/12 13:45:00的发言:
关联表之间可以实现,为什么非关联表之间实现不了,怎么实现

 

关联表或非关联表都可以实现,代码一模一样。如果有问题,举例说明。


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


加好友 发短信
等级:童狐 帖子:250 积分:1813 威望:0 精华:0 注册:2012/6/28 13:53:00
为什么清单明细表内综合单价列,不能随工料单价表内综合单价列变化而变化?  发帖心情 Post By:2017/6/16 23:54:00 [只看该作者]

为什么清单明细表内综合单价列,不能随工料单价表内综合单价列变化而变化?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成本测算170616 - 副本.rar


If e.DataCol.Name = "综合单价"
    Dim Filter As String = "[工料名称] = '" & e.DataRow("工料名称") & "' And 完成否= False"
    Dim drs As List(Of DataRow) = DataTables("清单明细").Select(Filter)
    For Each dr As DataRow In drs
        If dr.Locked = False Then    
            DataTables("工料明细").DataCols("工料名称").RaiseDataColChanged(dr)
        End If        
    Next
End If

If e.DataCol.Name = "工料ID" Then
    If e.NewValue Is Nothing Then
         e.DataRow("综合单价") = Nothing
    Else
        Dim dr As DataRow
        dr = DataTables("工料单价").Find("[工料ID] = '" & e.NewValue & "'")
        If dr IsNot Nothing 
                e.DataRow("综合单价") = dr("综合单价") 
        End If
    End If
End If

Select Case e.DataCol.Name 
    Case "综合单价"
        Dim Filter As String = "[工料ID] = '" & e.DataRow("工料ID") & "'"
        Dim drs As List(Of DataRow) = DataTables("清单明细").Select(Filter)
        For Each dr As DataRow In drs
            dr(e.DataCol.Name) = e.NewValue
        Next
End Select

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/17 9:01:00 [只看该作者]

工料单价datacolchanged

If e.DataCol.Name = "工料单价"
    Dim Filter As String = "[工料ID] = '" & e.DataRow("工料ID") & "'"
    Dim drs As List(Of DataRow) = DataTables("工料明细").Select(Filter)
    For Each dr As DataRow In drs
        dr("工料单价") = e.DataRow("工料单价")
    Next
    drs = DataTables("清单明细").Select(Filter)
    For Each dr As DataRow In drs
        If dr.Locked = False Then
            dr("综合单价") = e.DataRow("工料单价")
        End If
    Next
End If

清单明细datacolchanged
If e.DataCol.Name = "工料ID" Then
    If e.NewValue Is Nothing Then
        e.DataRow("综合单价") = Nothing
    Else
        Dim dr As DataRow
        dr = DataTables("工料单价").Find("[工料ID] = '" & e.NewValue & "'")
        If dr IsNot Nothing
            e.DataRow("综合单价") = dr("综合单价")
        End If
    End If
End If

Select Case e.DataCol.Name
    Case "综合单价"
        Dim Filter As String = "[工料ID] = '" & e.DataRow("工料ID") & "'"
        Dim drs As List(Of DataRow) = DataTables("清单明细").Select(Filter)
        For Each dr As DataRow In drs
            dr(e.DataCol.Name) = e.NewValue
        Next
End Select

 回到顶部