以文本方式查看主题

-  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=63513)

--  作者:Liuxinyu
--  发布时间:2015/1/22 15:26:00
--  [求助]窗口加载时出现错误
您好!

窗口加载时,出现下述错误,请师兄指教图片点击可在新窗口打开查看


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


--  作者:有点甜
--  发布时间:2015/1/22 15:27:00
--  
 贴出afterload事件的代码
--  作者:Liuxinyu
--  发布时间:2015/1/22 15:30:00
--  
\'配置 客户 数据字典
Dim dmp1 As New DataMap
For Each tr As Row In Tables(e.Fo rm.Name & "_Table2")
    dmp1.Add(tr("ClientID"),tr("ClientNameCN"))
Next
tb.Cols("收款人").DataMap = dmp1 \'生成并设置DataMap

\'配置 支付类型 数据字典
\'DataTables("FromGroup").Fill("Select * Fro m IncomeKind Where RorP = \'P\' Order by RPID", "FM_2014", True)
tb.Cols("支出类型").AllowTypeAssistant = True
Dim dmp2 As New DataMap
For Each tr As Row In Tables(e.For m.Name & "_Table4")
    dmp2.Add(tr("RpID"),tr("Config"))
Next
tb.Cols("支出类型").DataMap = dmp2 \'生成并设置DataMap


\'配置 受托方 数据字典
Dim tbMap As New TableDataMap
tbMap.DataTable = "BK_ConsignNote_tblEntrust"  \'指定数据来源表
tbMap.ValueCol = "ClientID" \'指定取值列
tbMap.DisplayCol = "ClientNameCN" \'指定显示列
tbMap.ListCols = "ClientID, ClientNameCN"    \'指定下拉列表时显示哪些列的数据
tbMap.Sort = "ClientID" \'指定排序方式
tb.Cols("受托方").DataMap = tbMap.CreateDataMap() \'生成并设置DataMap


--  作者:有点甜
--  发布时间:2015/1/22 15:41:00
--  

 加入判断,如

 


    If dmp1.Contains(tr("ClientID")) = False Then
        dmp1.Add(tr("ClientID"),tr("ClientNameCN"))
    End If


--  作者:Liuxinyu
--  发布时间:2015/1/22 15:52:00
--  
非常感谢!
已解决。

问题是 客户档案增加时 使用窗口 SQLTable 维护(多用户),出现ClientID重码。请问师兄有更好的解决办法吗?

--  作者:有点甜
--  发布时间:2015/1/22 15:56:00
--  

1、新增一行的时候,马上生成编号,然后save此行;

 

2、生成编号的时候,如果之前用compute,现在要用sqlCompute