Foxtable(狐表)用户栏目专家坐堂 → 条件代码求助


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

主题:条件代码求助

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/26 21:13:00 [显示全部帖子]

 做一个相近工作表。

 

 然后,根据申报工种,去查得到对应的工种,然后查证书表

 

 Dim fdr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & e.DataRow("身份证号码") & "' And 申报鉴定工种 in (" & "'工种1', '工种2', '工种3'" & ") And 证书编号 = '" & e.DataRow("原资格证书编号") & "'")


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/26 21:21:00 [显示全部帖子]

以下是引用lisheng7177在2015-1-26 21:16:00的发言:
谢谢版主,这就去试,但这个相近工种表好象列上面不好处理,一溜下来?

 

多值字段列,同一工种,写在一列。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/26 21:21:00 [显示全部帖子]

以下是引用lisheng7177在2015-1-26 21:18:00的发言:
另外,从上面这句代码我没看出来和“相近工种表”有什么关系?

 

看红色代码,查出红色代码的内容

 

Dim fdr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & e.DataRow("身份证号码") & "' And 申报鉴定工种 in (" & "'工种1', '工种2', '工种3'" & ") And 证书编号 = '" & e.DataRow("原资格证书编号") & "'")


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/26 22:13:00 [显示全部帖子]

 叫你先根据本行的工种,去查表啊

 

Dim dr As DataRow
dr =
DataTables("工种表").Find("工种 like '%" & e.DataRow("工种1") & "%'")

 

msgbox(dr("工种"))


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/27 9:16:00 [显示全部帖子]

1、那个表直接用一列就行啊,谁叫你用多列啊。

 

2、相同的工种,放在同一个单元格里面。

 

3、看上面楼层的查找方法,查出工种,拼凑成条件


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/27 10:13:00 [显示全部帖子]

 对你彻底无语。你能不能先去学基础啊。

 

Dim dr As DataRow
dr = DataTables("相近工种表").Find("工种 like '%" & e.DataRow("申报鉴定工种") & "%'")
Dim fdr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & e.DataRow("身份证号码") & "' And 申报鉴定工种 in ('" & dr("工种").Replace(",", "','") & "') And 证书编号 = '" & e.DataRow("原资格证书编号") & "'")


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/27 10:21:00 [显示全部帖子]

 看16楼啊,不行就请上传例子。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/27 11:02:00 [显示全部帖子]

If e.DataCol.Name = "鉴定等级" Then
    If Forms("报名登记").Opened Then
        Forms("报名登记").Controls("总人数").Text = e.DataTable.Compute("count(姓名)",Tables("报名登记表").filter)
        Forms("报名登记").Controls("初级工").Text = e.DataTable.Compute("count(姓名)", "鉴定等级 = '初级工' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
        Forms("报名登记").Controls("中级工").Text = e.DataTable.Compute("count(姓名)", "鉴定等级 = '中级工' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
        Forms("报名登记").Controls("高级工").Text = e.DataTable.Compute("count(姓名)", "鉴定等级 = '高级工' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
        Forms("报名登记").Controls("技师").Text = e.DataTable.Compute("count(姓名)", "鉴定等级 = '技师' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
        Forms("报名登记").Controls("高级技师").Text = e.DataTable.Compute("count(姓名)", "鉴定等级 = '高级技师' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
        Forms("报名登记").Controls("男").Text = e.DataTable.Compute("count(姓名)", "性别 = '男' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
        Forms("报名登记").Controls("女").Text = e.DataTable.Compute("count(姓名)", "性别 = '女' And " & iif(Tables("报名登记表").filter>"",Tables("报名登记表").filter,"1=1"))
       
    End If
End If


If e.DataRow("鉴定等级") = "技师" Then
    If e.DataRow("原技术资格等级") = "助理工程师(电力类)" AndAlso Cdate(e.DataRow("原等级取得时间")).Year <= Date.Today.Year - 4 Then
        e.DataRow("是否合格") = True
    Else If e.DataRow("原技术资格等级") = "工程师(电力类)"
        e.DataRow("是否合格") = True
    Else If e.DataRow("原技术资格等级") = "助理工程师(工业工程)" AndAlso Cdate(e.DataRow("原等级取得时间")).Year <= Date.Today.Year - 4 Then
        e.DataRow("是否合格") = True
    Else If e.DataRow("原技术资格等级") = "工程师(工业工程)"
        e.DataRow("是否合格") = True
    Else If e.DataRow("原技术资格等级") = "高级工程师(电力类)"
        e.DataRow("是否合格") = True
    Else If e.DataRow("原技术资格等级") = "高级工程师(工业工程)"
        e.DataRow("是否合格") = True
    Else If e.DataRow("原技术资格等级") = "技师"
        Dim fdr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & e.DataRow("身份证号码") & "' And 证书编号 = '" & e.DataRow("原资格证书编号") & "'")
        e.DataRow("是否合格") = fdr IsNot Nothing
    Else If e.DataRow("原技术资格等级") = "高级工" AndAlso Cdate(e.DataRow("原等级取得时间")).Year <= Date.Today.Year - 3
        Dim dr As DataRow
        dr = DataTables("相近工种表").Find("工种 like '%" & e.DataRow("申报鉴定工种") & "%'")
        If dr IsNot Nothing Then
            Dim fdr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & e.DataRow("身份证号码") & "' And 申报鉴定工种 in ('" & dr("工种").Replace(",", "','") & "') And 证书编号 = '" & e.DataRow("原资格证书编号") & "'")
            e.DataRow("是否合格") = fdr IsNot Nothing
        Else
            e.DataRow("是否合格") = False
        End If
       
    Else
        e.DataRow("是否合格") = False
    End If
End If


 回到顶部