以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 替换代码问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=7847) |
-- 作者:wqc360 -- 发布时间:2010/8/11 18:06:00 -- 替换代码问题 Dim dd As WinForm.TextBox = Forms("调整工资工龄暗").Controls("姓名") 请问以上按钮代码红色的问题在哪里,谢谢 |
-- 作者:mr725 -- 发布时间:2010/8/11 18:22:00 -- Max 指什么? |
-- 作者:mr725 -- 发布时间:2010/8/11 18:44:00 -- 或许你要定义一下: Dim Max As Double = DataTables("表名").Compute("Max(列名)", "条件") |
-- 作者:wqc360 -- 发布时间:2010/8/11 19:25:00 -- 姓名相同,现基本工资暗和岗位工资暗有多行,如: 调整时间 姓名 现基本工资暗 岗位工资暗 2010-06-01 张三 1000 500 2010-07-01 张三 1100 500 2010-08-01 张三 1100 600 2010-06-01 李四 1200 600 2010-07-01 李四 1200 700 2010-08-01 李四 1300 700 我要选出红色行的进行替换。用日期最大一个条件也可以。 这是高管要用的特殊岗位工资调整窗口,一般操作员这两列是隐藏的, |
-- 作者:mr725 -- 发布时间:2010/8/11 19:40:00 --
Dim dr As DataRow |
-- 作者:mr725 -- 发布时间:2010/8/11 19:53:00 -- 可能这样就可以了吧: Dim Max As Date = DataTables("调整工资").Compute("Max(调整时间)", "[姓名] = \'" & dd.text & "\' ") DataTables("工资调整").ReplaceFor("现基本工资暗", Forms("调整工资工龄暗").Controls("基本工资暗").text, " [姓名] = \'" & dd.text & "\' and [调整时间] = \'" & Max & "\' ") |
-- 作者:wqc360 -- 发布时间:2010/8/11 20:04:00 -- 谢谢mr725兄,6楼代码搞定。 |
-- 作者:mr725 -- 发布时间:2010/8/11 20:25:00 -- 其实5楼代码可以这样直接更新数据:
dr("现基本工资暗") = Forms("调整工资工龄暗").Controls("基本工资暗").text |
-- 作者:czy -- 发布时间:2010/8/11 20:44:00 -- 调整时间列是日期型,Max前后应该加上#号。 |
-- 作者:wqc360 -- 发布时间:2010/8/11 21:27:00 -- 这样也行: DataTables("工资调整").ReplaceFor("现基本工资暗", Forms("调整工资工龄暗").Controls("基本工资暗").text, " [姓名] = \'" & dd.text & "\' and [调整时间] = \'" & Max & "\' ") 按C版的意见也行,不过好像代码更正规,不然到什么时候出现问题还不知道,谢谢C版: DataTables("工资调整").ReplaceFor("现基本工资暗", Forms("调整工资工龄暗").Controls("基本工资暗").text, " [姓名] = \'" & dd.text & "\' and [调整时间] = #" & Max & "# ") |