以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 个税扣款计算 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=45861) |
-- 作者:漂亮美眉vszh -- 发布时间:2014/2/12 14:40:00 -- 个税扣款计算 工资核算时,社保扣款列,如果先把工资输进去,再输社保(另外一张明细表,自动带入工资表),个税就不会自动计算; 如果先把社保输进去,再输工资,个税就才可以自动计算。 |
-- 作者:狐狸爸爸 -- 发布时间:2014/2/12 14:41:00 -- 答案:
http://www.foxtable.com/help/topics/0602.htm
|
-- 作者:漂亮美眉vszh -- 发布时间:2014/2/12 14:43:00 -- 我用了 IsNull‘ [合计工资]+IsNull([加班费2],0)+IsNull([其他补贴],0)-IsNull([绩效考核扣款],0)-IsNull([地方税扣款],0)-IsNull([事假扣款],0)-IsNull([病假扣款],0)-IsNull([全勤扣款],0)-IsNull([公积金代扣],0)-IsNull([社保代扣],0)
|
-- 作者:漂亮美眉vszh -- 发布时间:2014/2/12 14:46:00 -- 第一个合计工资也加了ISNULL,试了下也不行,奇怪 |
-- 作者:Bin -- 发布时间:2014/2/12 14:53:00 -- 那就上例子,我瞅瞅. |
-- 作者:sloyy -- 发布时间:2014/2/12 14:53:00 -- DataColChanged事件 加个条件判断: If
e.DataCol.Name = "工资"
Then
If
e.DataRow.IsNull("社保")
Then
\' 社保是否为空 else e.DataRow("个税")=........ endif endif
|
-- 作者:狐狸爸爸 -- 发布时间:2014/2/12 14:56:00 -- 把你的表发上来,保留几行数据就行,一分钟给你搞定 |
-- 作者:狐狸爸爸 -- 发布时间:2014/2/12 14:57:00 -- 我知道了,你可能用的是代码计算,那么需注意: http://www.foxtable.com/help/topics/2381.htm
|
-- 作者:漂亮美眉vszh -- 发布时间:2014/2/12 15:19:00 -- 狐狸爸爸,对的,就是这个原因。代码是从帮助手册内找的,不会写~~帮帮看下吧~~ If e.DataRow("工资分配") <> "外籍管理工资" If e.DataCol.Name <> "个人所得税代扣" AndAlso e.DataCol.IsNumeric Then e.DataRow("个人所得税代扣") = InTax(e.DataRow("税前工资") - 3500) End If End If If e.DataRow("个人所得税代扣") < 1 Then e.DataRow("个人所得税代扣") = 0 End If |
-- 作者:狐狸爸爸 -- 发布时间:2014/2/12 15:22:00 -- 我不知道你具体的表结构,一般这种问题,你应该将表设计好,保留少量数据,设置好公式和代码,然后发上来,并说明问题。 有具体的问题,才能给您具体的答案。 |