以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 新增行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=193093) |
-- 作者:1234567 -- 发布时间:2024/8/16 10:33:00 -- 新增行 新增行的【计划开始日期】等于上一行的【计划完成日期】,哪里错了? Dim r As Row = Tables("生产管理_Table04").AddNew() [此贴子已经被作者于2024/8/16 10:59:23编辑过]
|
-- 作者:有点蓝 -- 发布时间:2024/8/16 12:07:00 -- 代码放在什么事件的? |
-- 作者:1234567 -- 发布时间:2024/8/16 12:30:00 -- 放在Button控件的Click事件中 |
-- 作者:有点蓝 -- 发布时间:2024/8/16 13:08:00 -- 先看看:http://www.foxtable.com/webhelp/topics/0604.htm,注意不同事件有不同的e参数,按钮是没有e.table这种东西的,改为具体的表比如:tables("表A") |
-- 作者:1234567 -- 发布时间:2024/8/16 13:45:00 -- Dim t As Table = e.Form.Controls("Table04").Table \'定义当前窗口中的Table Dim r As Row = Tables("生产管理_Table04").AddNew() \'在生产管理_Table04中新增一行 If t.Rows( t.Row.Index - 1) IsNot Nothing And t.Rows( t.Row.Index - 1).IsNull("计划完成日期") = False Then \'如果存在上一行并且上一行的【计划完成日期】不为空,这句代码怎么写? r("计划开始日期") = t.Rows(t.Row.Index - 1).IsNull("计划完成日期") \'新增行的【计划开始日期】等于上一行的【计划完成日期】 End If |
-- 作者:有点蓝 -- 发布时间:2024/8/16 13:49:00 -- Dim t As Table = e.Form.Controls("Table04").Table \'定义当前窗口中的Table f t.Rows.count > 0
dim k as row = t.Rows(t.Rows.count - 1) ‘最后一行’ Dim r As Row = t.AddNew() \'新增后这个变成最后一行,上一个最后一行k就是上一行 |
-- 作者:1234567 -- 发布时间:2024/8/16 14:53:00 -- [计划完成日期]=[计划开始日期]+[工期] [计划开始日期]=上一行的[计划完成日期] 当我在某一行的[计划开始日期]列中输入一个日期,自动计算出该行的[计划完成日期]及下面所有行的[计划完成日期]和[计划完成日期](图示的打马赛克区域),求代码? 此主题相关图片如下:1.png [此贴子已经被作者于2024/8/16 14:53:32编辑过]
|
-- 作者:有点蓝 -- 发布时间:2024/8/16 15:15:00 -- datacolchanged事件 if e.datacol.name = "计划开始日期" andalso e.datarow.isnull("计划开始日期")=false then dim d as date = e.datarow("计划开始日期") dim d2 as date = d.adddays(e.datarow("工期")) e.datarow("计划完成日期") = d2 for each dr as datarow in e.datatable.select("_sortkey >" & e.datarow("_sortkey"),"_sortkey") dr("计划开始日期") = d2 d = d2 d2 = d.adddays(dr("工期")) dr("计划完成日期") = d2 next end if
|
-- 作者:1234567 -- 发布时间:2024/8/16 15:35:00 -- 蓝版,8楼的代码在主表中可以运行,在窗口的副本表中运行时,系统自动停止运行了。另外窗口的副本表的排序不是按主键进行排序,而是按[第一列]内容进行排序的。 |
-- 作者:有点蓝 -- 发布时间:2024/8/16 16:18:00 -- 应该是有其它代码互相影响了 代码是人写的,按哪一列排序,自己改改不就行了 |