以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  更改的值没有保存住  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=137279)

--  作者:lfz123
--  发布时间:2019/7/2 14:23:00
--  更改的值没有保存住
我在DropBox控件的ValueChanged事件中写了如下代码:我也点了保存按钮,也看到正确的结果出来了,可我退出入库单录入 在进去的时候发现还是原来未更改前结果
ValueChanged事件代码:
e.Sender.WriteValue()
For Each dr As DataRow In DataTables("入库单录入_table1").DataRows
    dr("供应商简称") = e.Sender.Text
Next

保存按钮代码:

Tables("入库单列表").Current.Save()
Tables("入库单录入_table1").Save()

Tables("入库单录入_table1")的设置如下:

图片点击可在新窗口打开查看此主题相关图片如下:窗口表的设置.png
图片点击可在新窗口打开查看


--  作者:狐狸爸爸
--  发布时间:2019/7/2 14:28:00
--  
我测试没有问题,你做个简单的小例子发上来看看。
--  作者:lfz123
--  发布时间:2019/7/2 17:45:00
--  回复:(狐狸爸爸)我测试没有问题,你做个简单的小例...
老师应该是我这个上一张下一张按钮切换的问题代码如下,他依然加载的是前一张的明细

With Tables("入库单列表")
    .Position = .Position - 1
    DataTables("入库单录入_table1").LoadFilter = "入库编号 = \'"& Tables("入库单列表").Current("入库编号") & "\'"
    DataTables("入库单录入_table1").Load()
End With

我在入库单列表的currentchanged事件里面的代码也一样错乱了

If e.Table.Current Is Nothing Then \'如果Current为Nothing
    Return
Else
    If forms("入库单录入").opened() Then
        DataTables("入库单录入_table1").LoadFilter = "入库编号 = \'"& e.Table.Current("入库编号") & "\'"
        DataTables("入库单录入_table1").Load()
    End If
    \'有选定行时执行的代码
End If
[此贴子已经被作者于2019/7/2 17:49:39编辑过]

--  作者:有点蓝
--  发布时间:2019/7/2 20:14:00
--  
去掉第一段的加载代码:

With Tables("入库单列表")
    .Position = .Position - 1
End With

--  作者:lfz123
--  发布时间:2019/7/3 9:58:00
--  回复:(有点蓝)去掉第一段的加载代码:With Tables(...
按照您的方法可以了,但是有一点效果没有达到,就是我更改文本框的值,就能直接改变入库明细的对应值,但我切换上下张,就显示是前一张的文本框的值了

e.Sender.WriteValue()
\'For Each dr As DataRow In DataTables("入库单录入_table1").datarows
    \'dr("入库单号") = e.Sender.Text
\'Next

[此贴子已经被作者于2019/7/3 9:58:48编辑过]

--  作者:有点蓝
--  发布时间:2019/7/3 10:03:00
--  
e.Sender.WriteValue()也去掉