以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  按钮的切换事件,及记录按钮之前的值  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=122805)

--  作者:susu312
--  发布时间:2018/8/2 13:36:00
--  按钮的切换事件,及记录按钮之前的值

老师,我窗口页面1中有一个状态按钮,

1、如果状态按钮由退休变为死亡,则弹出附加信息页面,弹出的同时给历史库新增一行、

2、但有时候用户误点,即弹出附加信息页面后,

      一、取消弹出的这一行,并且把状态切换到之前的值即退休,这个咋实现?

      二、有时用户直接回到基本信息页面,把状态从死亡修改为退休,那这时候自动把历史库新增的行删除,这个咋实现?


--  作者:有点甜
--  发布时间:2018/8/2 15:51:00
--  

1、不是点击保存的时候,才把【退休】改成【死亡】?

 

2、点击取消的时候,撤销新增的行;

 

3、参考 http://www.foxtable.com/webhelp/scr/2292.htm

 


--  作者:susu312
--  发布时间:2018/8/2 16:12:00
--  
以下是引用有点甜在2018/8/2 15:51:00的发言:

1、不是点击保存的时候,才把【退休】改成【死亡】?

 

2、点击取消的时候,撤销新增的行;

 

3、参考 http://www.foxtable.com/webhelp/scr/2292.htm

 

老师,比如有人不小心把退休改成死亡,跳到附加信息页面他又后悔了,其实还没有死亡,那光取消只是在历史库把当前行撤了

 

人员库里面本来退休的人现在改成死亡了,如何判定他取消时,让那个状态回到之前的值?


--  作者:有点甜
--  发布时间:2018/8/2 16:48:00
--  

当前行撤销修改,参考

 

Tables("表a").current.Reject


--  作者:有点甜
--  发布时间:2018/8/2 16:49:00
--  

或者你做一个按钮重新赋值

 

Tables("表a").current("状态") = "退休"


--  作者:susu312
--  发布时间:2018/8/2 17:17:00
--  

Dim deathTime As String = e.Form.Controls("deathTime").Value
If deathTime= ""  Then
    Messagebox.show("请填写死亡时间!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Return
End If
Dim dr1 As DataRow=Tables("person").Current.DataRow()
Dim dr2  As  DataRow =  Tables("history").Current.DataRow()
        For Each dc  As  DataCol  In  DataTables("person").DataCols
                dr2(dc.Name) = dr1(dc.name)
        Next

With Tables("history")
    If .Current IsNot Nothing Then
        .Current.Save()
    End If
End With
DataTables("history").load

With Tables("person")
         If .Current IsNot Nothing Then
              .Current.Delete
         End If
End With
Tables("person").Save
e.Form.close

 

 

老师,您看我这段代码有啥问题么?

 

1、在修改窗口如果把状态换成死亡的话,就跳到附加信息页面,这是导入历史库按钮的代码?每次导入都空的,而且还把人员库的也删除了


--  作者:有点甜
--  发布时间:2018/8/2 17:51:00
--  

1、先不要删除person表数据和修改person表数据;

 

2、在弹出的窗口那里,点击确定的时候,在修改和删除。