以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  明细追载报错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=88348)

--  作者:yifan3429
--  发布时间:2016/8/1 12:43:00
--  明细追载报错
\'数据动态追载
If e.Table.Current IsNot Nothing Then
    Dim Filter As String = "订单号 = " & e.Table.Current("订单号") 
    If  DataTables("区域").Find(Filter) Is Nothing Then \'如果对应的订单明细没有加载过
        DataTables("区域").AppendLoad(Filter) \'则追载此订单的订单明细
    End If
End If



.NET Framework 版本:2.0.50727.8689
Foxtable 版本:2016.7.23.1
错误所在事件:订单表,CurrentChanged
详细错误信息:
未找到列 [QYKF]。

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20160801134819.png
图片点击可在新窗口打开查看


.NET Framework 版本:2.0.50727.8689
Foxtable 版本:2016.7.23.1
错误所在事件:区域,CurrentChanged
详细错误信息:
语法错误:“=”运算符后缺少操作数。
[此贴子已经被作者于2016/8/1 13:54:00编辑过]

--  作者:yifan3429
--  发布时间:2016/8/1 13:54:00
--  
有老师在吗 在吗

订单号是合成的编码
[此贴子已经被作者于2016/8/1 14:06:45编辑过]

--  作者:大红袍
--  发布时间:2016/8/1 14:24:00
--  

Dim Filter As String = "订单号 = " & e.Table.Current("订单号")

 

改成

 

Dim Filter As String = "订单号 = \'" & e.Table.Current("订单号") & "\'"


--  作者:yifan3429
--  发布时间:2016/8/1 14:59:00
--  
老师  现在可以不回报错了 但是  我是多级关联  

订单 和  区域     
区域 和  产品      
产品 和  BOM      
对应在窗口内  1.2.3.个表
分别在订单  

区域
产品
使用上述代码   
貌似是有订单  能加载区域  订单.区域不能加载产品   关联表在窗口 如何使用代码

   

--  作者:大红袍
--  发布时间:2016/8/1 15:03:00
--  

对应的,也把其它表的数据动态加载进来,比如

 

DataTables("产品").LoadFilter = "xxxxx"

DataTables("产品").Load

 

或者 http://www.foxtable.com/webhelp/scr/2894.htm

 


--  作者:yifan3429
--  发布时间:2016/8/1 15:24:00
--  

在区域表的AfterLoad事件加上代码:

e.DataTable.LoadChildren("产品")


CurrentChanged  


If e.Table.Current IsNot Nothing Then

    Dim Filter As String = "区域号 = \'" & e.Table.Current("区域号") & "\'"

    If  DataTables("产品").Find(Filter) Is Nothing Then \'如果对应的订单明细没有加载过

        DataTables("产品").AppendLoad(Filter) \'则追载此订单的订单明细

    End If

End If



都不行   如何是好
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20160801152057.png
图片点击可在新窗口打开查看


--  作者:大红袍
--  发布时间:2016/8/1 15:29:00
--  

先试试这样

 

If e.Table.Current IsNot Nothing Then    
    Dim Filter As String = "区域号 = \'" & e.Table.Current("区域号") & "\'"
    DataTables("产品").RemoveFor(filter)
    DataTables("产品").AppendLoad(Filter) \'则追载此订单的订单明细
End If


--  作者:yifan3429
--  发布时间:2016/8/1 15:40:00
--  
.NET Framework 版本:2.0.50727.8689
Foxtable 版本:2016.7.23.1
错误所在事件:
详细错误信息:
列“_Identify”被约束为是唯一的。值“886”已存在。


不会加载数据  会报错

--  作者:大红袍
--  发布时间:2016/8/1 15:43:00
--  

那就这样写

 

If e.Table.Current IsNot Nothing Then    
    Dim Filter As String = "区域号 = \'" & e.Table.Current("区域号") & "\'"
    DataTables("产品").LoadFilter = Filter

    DataTables("产品").Load
End If


--  作者:yifan3429
--  发布时间:2016/8/1 16:10:00
--  
还是不会加载  是不是  窗口关联表的原因   追载不成功  还是默认加载的那些行  不会将后台的加载进来

稍后实例上来
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:关联表动态追载数据.foxdb


[此贴子已经被作者于2016/8/1 16:36:54编辑过]