以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]关于全局变量与数据填充 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1697) |
||||
-- 作者:舜风 -- 发布时间:2009/1/30 20:11:00 -- [求助]关于全局变量与数据填充 问题 自定义一个“数据填充按钮”:点[汇总工资]数据填充按钮后:该如何根据年月的不同,选择是否需要"汇总数据"?
[此贴子已经被作者于2009-1-30 22:52:30编辑过]
|
||||
-- 作者:舜风 -- 发布时间:2009/1/30 22:40:00 -- [建议] 狐狸爸爸 关于文本导入与excel的区别。 1、如何实现当月工资表的[日期]始终都是当前系统日期? 简单:在DataColChanged中加入 e.DataRow("日期") = Date.Today() |
||||
-- 作者:程兴刚 -- 发布时间:2009/1/31 3:54:00 -- 您的未知条件太多,没说清楚: 1、根据年月不同,怎么个不同法? 2、汇总工资是不是将当月工资按照员工姓名将当月工资累加进去?(您的当月工资是否需要清空?历史数据保存在哪里?否则,汇总表就不应该是累加,而是从工资表统计,同时e.DataRow("日期") = Date.Today()也应该改为datarowadded事件中) [此贴子已经被作者于2009-1-31 4:00:01编辑过]
|
||||
-- 作者:舜风 -- 发布时间:2009/1/31 11:05:00 -- 1、作为工资表,日期只能用“年 and 月”作为查询条件,而“日”其实多余(可能还有负作用),所以在汇总时提出:当前年月如果与历史年月不同则备份(汇总)。 不过有时也许会发现与修改个别错误的地方,并重新汇总,所以想加入:只更新更改后的个别数据。 2、当月工资表与汇总表为两个表:当月工资表不能清空,以后的工资还需在此数据基础上更改,而工资汇总表的意思就是将每月的工资备份(汇总)在一起(也就是备份所有历史数据的表),以便于今后查阅历史与统计历史收支. [此贴子已经被作者于2009-1-31 11:10:54编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/2/1 9:13:00 -- 没有必要分开两个表,一个表就行,你可以通过编码,使得默认只加载当月数据,通过代码加载不同月份的数据。或者初始加载所有数据,然后通过代码来筛选不同月份的数据。 另:现有的日期列应该改为发放日期,新增一个年月列,列类型为字符型。 |
||||
-- 作者:舜风 -- 发布时间:2009/2/1 10:28:00 -- 看似明白其好处,可我却依然不知道如何能在一表中实现: 1、筛选数据容易,可如何在一表中建立新的当月数据? 2、我只会建统一刷新“发放日期”列的代码;而不知道,只针对当月“发放日期”刷新的代码,请赐教 3、新的“年月”列,想必是为了两表实现数据填充之用吧(如此,我明白如何实现),或是另有它用? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/2/1 10:39:00 -- 1、可以有一个员工资料表,然后增加一个按钮,根据该表中的每一条记录,自动在工资表中增加行,自动填入年月和姓名,这个很容易。 2、如果是编码,取得年月不是很简单吗?当然你也可以增加一个表达式列,表达式为: SubString(Convert([日期],\'System.String\'),1,4) + \'-\' + SUBSTRING(Convert([日期],\'System.String\'),6,IIF(SUBSTRING(Convert([日期],\'System.String\'),7,1) = \'-\',1,2)) |
||||
-- 作者:舜风 -- 发布时间:2009/2/1 11:04:00 -- 以下是引用狐狸爸爸在2009-2-1 10:39:00的发言:
1、可以有一个员工资料表,然后增加一个按钮,根据该表中的每一条记录,自动在工资表中增加行,自动填入年月和姓名,这个很容易。 2、如果是编码,取得年月不是很简单吗?当然你也可以增加一个表达式列,表达式为: SubString(Convert([日期],\'System.String\'),1,4) + \'-\' + SUBSTRING(Convert([日期],\'System.String\'),6,IIF(SUBSTRING(Convert([日期],\'System.String\'),7,1) = \'-\',1,2)) 会的人当然觉得容易,可对于初学者还是感到头痛,能不能做个示范借鉴一下呢? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/2/1 11:33:00 -- 首先工资表应该有一个年月列,这一列必须是数据型,而不是表达式形。 做一个按钮,代码大致如下 Dim YM As String = Date.Today.Year & "-" & Date.Today.Month Dim Dt1 As DataTable = DataTables("员工") Dim Dt2 As DataTable = DataTables("工资") for each dr1 As DataRow = dt1.DataRows Dim dr2 As DataRow = dt2.AddNew() dr2("姓名") = dr1(“姓名") dr2("年月") = YM Next |
||||
-- 作者:舜风 -- 发布时间:2009/2/2 10:12:00 -- 看似一表能解决了一些问题.可这样的后果是否要把员工资料表也要变为另一工资表(数据来源主表)? 因为对于一个大点的公司,工资级别会因单位、部门、职务、工龄等不同,收入与支出都会有所不同…… 能否把上月的数据关联到本月工资里呢? |