以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  表作为选择项出现  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=59552)

--  作者:newsun2k
--  发布时间:2014/11/6 13:45:00
--  表作为选择项出现
假如我做一个发工资的功能:
希望有一个按钮。
按下后,弹出窗体,窗体中有一个员工资料表,第一固定列是检查框,以选择发工资的员工。
员工资料不可修改。
1、需要在员工资料最后一列增加一列,以便我在选择员工的同时,填入工资额。
请问如何实现?


--  作者:Bin
--  发布时间:2014/11/6 14:06:00
--  
那你便增加一列啊,具体的问题请上例子,描述清楚你想实现的效果
--  作者:有点甜
--  发布时间:2014/11/6 14:12:00
--  

1、做一个发工资表;

 

2、和员工表建立关联,引用员工表的列

 

3、在发工资表录入员工编号等数据。


--  作者:newsun2k
--  发布时间:2014/11/6 14:24:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目10.foxdb


图片点击可在新窗口打开查看此主题相关图片如下:说明.png
图片点击可在新窗口打开查看

 

我就是想在表A中,点击右下角的增加按钮后,弹出窗体2

窗体2中,想加一列“工资”,不是实际加在表B中,只是临时加一下,方便我输入数值。

请问能不能实现,谢谢!!!


--  作者:有点甜
--  发布时间:2014/11/6 14:33:00
--  

 afterload事件加入代码

 

Dim t As Table = e.Form.Controls("Table1").Table
If t.Cols.Contains("工资") = False Then
    t.DataTable.DataCols.Add("工资",Gettype(Double))
End If


--  作者:newsun2k
--  发布时间:2014/11/6 14:34:00
--  
图片点击可在新窗口打开查看,非常谢谢
--  作者:newsun2k
--  发布时间:2014/11/6 14:39:00
--  
悲剧,我发现表B中也增加了“工资”这一列,怎么办?
--  作者:有点甜
--  发布时间:2014/11/6 14:41:00
--  

 这个只是临时添加的没事。

 

 你可以在afterClose加入移除的代码

 

Dim t As Table = e.Form.Controls("Table1").Table

t.DataTable.DataCols.Delete("工资")

[此贴子已经被作者于2014-11-6 14:41:31编辑过]

--  作者:newsun2k
--  发布时间:2014/11/6 14:49:00
--  
如果多个人同时操作,会不会产生问题啊?
一个人加了一行,另一个人删除了一行

--  作者:有点甜
--  发布时间:2014/11/6 14:51:00
--  
 其实多人使用的时候,每个人都有属于自己的一张表的,不影响。