此主题相关图片如下:丢失数据.png
由于是MYSQL源,设定下面代码一:
'表属性-StartEdit开始编辑的时候执行
Dim dmp As New TableDataMap
dmp.DataTable = "窗口_Table3" '
dmp.ValueCol = "计量单位" '
dmp.DisplayCol = "计量单位" '
dmp.ListCols = "计量单位"
Tables("窗口_Table2").Cols("单位").DataMap = dmp.CreateDataMap() '生成并设置DataMap
Dim dmp As New TableDataMap
dmp.DataTable = "窗口_Table3" '
dmp.ValueCol = "等级" '
dmp.DisplayCol = "等级" '
dmp.ListCols = "等级"
Tables("窗口_Table2").Cols("等级").DataMap = dmp.CreateDataMap() '生成并设置DataMap
执行下面代码后,有时,表的中“单位”会丢失,有时,在手动录入,数量列的值时,表的中“单位”会丢失,有时正常,如何解决?
Dim nma() As String = {"产品编号", "品名", "单位"}'
Dim nmb() As String = {"产品编号", "品名", "单位"} '
Dim dr As Row = Tables("窗口_Table2").AddNew '
For i As Integer = 0 To nma.Length - 1
dr(nmb(i)) = r(nma(i))
Next
Else
End If
Next
Forms("导记窗口").Close()''
[此贴子已经被作者于2024/5/24 9:39:50编辑过]
不是丢失,而是数据没有加载,字典找不到对应的数据无法显示。
这种取值列和显示列都一样的,没有必要使用字典,建议直接使用下拉列表
'在:AfterLoad
Dim db = HySql.DataBaseFactory.CreateDatabase("xc")
Dim Sql2 = "selec--t * from tb ;"
Dim dt2 As system.data.DataTable = db.ExecuteDataSet(Sq-l2).Tables(0)
dt2.TableName = "tb"
Dim t2 As Table = e.Form.Controls("Table2").Table
t2.datasource = dt2.Copy
DataTables("窗口_Table2").DataCols("等级").DefaultValue = "常规"
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:Eval函数计算错误,表达式为:常规
详细错误信息:
无效字符
Dim dmp As New TableDataMap
dmp.DataTable = "窗口_Table3" '
dmp.ValueCol = "等级" '
dmp.DisplayCol = "等级" '
dmp.ListCols = "等级"
Tables("窗口_Table2").Cols("等级").DataMap = dmp.CreateDataMap() '生成并设置DataMap
会跟上面代码冲突,需求是"等级"默认为“常规”,如果要修改可以从下拉列中选中修改,但执行后,在手动录入,数量列的值时,表的中“等级”会丢失,如何解决?或这个一楼一样,只能任一个方法?