Foxtable(狐表)用户栏目专家坐堂 → [求助]跨表取数计算代码错误


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

主题:[求助]跨表取数计算代码错误

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
[求助]跨表取数计算代码错误  发帖心情 Post By:2019/4/7 8:03:00 [显示全部帖子]

各位老师早上好。又有问题恳请老师帮助,就是跨表取数计算各类津贴、补贴的代码。昨天晚上搞了一夜也写不出来,还得恳请老师费心帮助。谢谢。



[此贴子已经被作者于2019/5/6 17:31:58编辑过]

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/4/7 11:30:00 [显示全部帖子]

谢谢老师帮助指导。

现在的新问题是:如果我将列属性的“最大小数位数”设置为“2”、“固定小数位数”设为“True”时,[前夜班津贴标准]就写不进去。将两个表的相关列属性设置一至也不行,必须均恢复为“默认值”,才能写进去。如果我不想用属性的“默认值”,想要用“最大小数位数”设置为“2”、“固定小数位数”设为“True”时,要怎样才行。谢谢。

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/4/7 12:18:00 [显示全部帖子]

老师好。仿照您指导的代码,“夜班津贴”部分已能运行。新的问题是:

1、将“职称津贴”部分改为如下单一级别的代码后,在“薪资计算表”的“职称级别”列的任意表格中输入任意内容【包括不是“高级”两个字的任意字符】,均将“津贴补贴标准”表“计发标准”列“高级”对应的计发标准写入。错误代码如下:

Select Case e.DataCol.name
    Case "职称级别", "职称津贴"    '判断更改的列
        If e.DataRow.IsNull("职称级别") Then        '是否为空(Is是IsNull否)
            e.DataRow("职称津贴") = Nothing         '为空,则清除
        Else
            Dim Zcjb As String = e.DataRow("职称级别")  '声明变量            '检验"msgbox(Zcjb)"
            Dim Zcjt_g As DataRow = DataTables("津贴补贴标准").Find("津贴项目 = '高级'")
            If Zcjt_g IsNot Nothing Then
                e.DataRow("职称津贴") = Zcjt_g("计发标准")
            Else
                e.DataRow("职称津贴") = Nothing
            End If
        End If
End Select


请老师指正。谢谢。



[此贴子已经被作者于2019/4/7 13:21:15编辑过]

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/4/7 13:19:00 [显示全部帖子]

谢谢老师。不好意思,这段又不对了,还请老师指正。谢谢

Select Case e.DataCol.name
    'Case "性别", "女工卫生费"    '判断更改的列
        'If e.DataRow.("性别") <> "女" Then        '性别不是女
            'e.DataRow("女工卫生费") = Nothing         '则清除
        'Else
            'Dim Xb As String = e.DataRow("性别")  '声明变量
            'Dim Wsf As DataRow = DataTables("津贴补贴标准").Find("津贴项目 = '卫生费'")            '检验"msgbox(Hyjt)"
            'If Wsf IsNot Nothing Then
                'e.DataRow("女工卫生费") = Wsf("计发标准")
            'Else
                'e.DataRow("女工卫生费") = Nothing
            'End If
        'End If
End Select

[此贴子已经被作者于2019/4/7 13:20:16编辑过]

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/4/7 15:14:00 [显示全部帖子]

谢谢老师。

这句代码出错:If e.DataRow.("性别") <> "女" Then        '性别不是女

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/4/7 15:35:00 [显示全部帖子]

老师好。不好意思,还得麻烦老师。下面代码的“IF”部分不对,还得老师指正和帮助。谢谢。

原意是:如果"车补类型"选择的是”领导/正职“ 或者 ”领导/副职“,就直接将符合的”计发标准“写入”车补金额“。否则(如果类型是”驾驶员“),则将符合的”计发标准写入”车补标准“。因为领导是按”月“发,而驾驶员是按”天“发

Select Case e.DataCol.name
    Case "车补类型"    '判断内容发生变动的列
        If e.DataRow.IsNull("车补类型") Then        '是否为空(Is是IsNull否)
            e.DataRow("车补天数") = Nothing         '为空,则清除
            e.DataRow("车补标准") = Nothing         '为空,则清除
            e.DataRow("车补金额") = Nothing         '为空,则清除
        Else
            Dim Cblx As String = e.DataRow("车补类型")  '声明变量            '检验"msgbox(Zcjb)"
            Dim Cbbz As DataRow = DataTables("津贴补贴标准").Find("津贴项目 = '" & Cblx  & "'")
            If Cbbz IsNot Nothing Then
                'If Cbbz = "领导/正职" Or Cbbz = "领导/副职" Then              ‘如果选择的是领导
                    e.DataRow("车补金额") = Cbbz("计发标准")
                         还想实现(”车补天数“)和(”车补标准“)两列禁止输入内容
                'Else                                                                             ’否则,如果选择的是驾驶员
                    还想实现(”车补天数“)和(”车补标准“)两列可以输入内容  
                    'e.DataRow("车补标准") = Cbbz("计发标准")
                'End If
            Else
                e.DataRow("车补标准") = Nothing                
                e.DataRow("车补金额") = Nothing
            End If
        End If
End Select

[此贴子已经被作者于2019/4/7 16:32:38编辑过]

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


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/4/7 17:49:00 [显示全部帖子]

谢谢老师帮助和耐心指导。在甜、蓝两位老师的帮助和耐心指导下,用Foxtable学习开发的一个简单的“人力资源和薪资计发管理系统”,已看到了成功的曙光。衷心感谢老师们!谢谢。

 回到顶部