Foxtable(狐表)用户栏目专家坐堂 → 请问:关于窗口的问题


  共有2348人关注过本帖树形打印复制链接

主题:请问:关于窗口的问题

帅哥哟,离线,有人找我吗?
youngk
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:221 积分:1745 威望:0 精华:0 注册:2014/1/7 12:37:00
请问:关于窗口的问题  发帖心情 Post By:2014/10/2 15:37:00 [只看该作者]

我使用内部数据源设计了一个窗口,然后,以同样的代码、同样的方式在外部数据源中设计了一个同样的窗口,结果总是显示:未将对象引用设置到对象的实例。,是怎么回事呢?

 回到顶部
帅哥哟,离线,有人找我吗?
sloyy
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2180 积分:13804 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2014/10/2 15:42:00 [只看该作者]

可能你上传你做的例子,解决的比较快,否则总是猜测.

 回到顶部
帅哥哟,离线,有人找我吗?
youngk
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:221 积分:1745 威望:0 精华:0 注册:2014/1/7 12:37:00
  发帖心情 Post By:2014/10/2 16:13:00 [只看该作者]

Dim dtb As New DataTableBuilder("分账库存统计")
dtb.AddDef("货物大类", Gettype(String))
dtb.AddDef("客户名称", Gettype(String))
dtb.AddDef("货物种类", Gettype(String))
dtb.AddDef("日期", Gettype(Date))
dtb.AddDef("库存", Gettype(Decimal))
dtb.Build()
For Each nm() As String In DataTables("进出库信息记录").GetValues("客户名称|货物种类")
    Dim dr As DataRow = DataTables("分账库存统计").AddNew()
    dr("客户名称") = nm(0)
    dr("货物种类") = nm(1)
    Dim mr As DataRow
    mr = DataTables("进出库信息记录").find("[客户名称] = '" & nm(0) & "' And[货物种类] = '" & nm(1) & "'","[_SortKey] Desc")
    dr("日期") = mr("日期")
    dr("库存") = mr("库存")
    dr("货物大类") = mr("货物大类")
Next
MainTable= Tables("分账库存统计")
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Filter = " 货物大类 = '" & .Value & "'"
    End If
End With
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("DateTimePicker2")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 <= #" & .Value & "#"
    End If
End With
If Filter > "" Then
    Tables("分账库存统计").Filter = Filter
End If
Dim g As New Subtotalgroup
g = New Subtotalgroup
g.GroupOn = "客户名称"
g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "货物大类"
g.TotalOn = "库存"
g.Caption = "{0} 小计"
With Tables("分账库存统计")
    .SubtotalGroups.Add(g)
End With
g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
g.TotalOn = "库存"
g.Caption = "总计"
With Tables("分账库存统计")
    .SubtotalGroups.Add(g)
    .Subtotal()
End With
With Tables("分账库存统计")
    .MergeMode = MergeModeEnum.free
    .MergeCols.Add("货物大类")
    .MergeCols.Add("客户名称")
    .AllowMerge = True
End With

 回到顶部
帅哥哟,离线,有人找我吗?
youngk
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:221 积分:1745 威望:0 精华:0 注册:2014/1/7 12:37:00
  发帖心情 Post By:2014/10/2 16:15:00 [只看该作者]

在内部数据源的情况下,点击窗口按钮就可以,但是把这个代码换到外部数据源中就会显示:未将对象引用设置到对象的实例。请大师指点下,问题出在哪里呢?

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2014/10/2 16:53:00 [只看该作者]

For Each nm() As String In DataTables("进出库信息记录").GetValues("客户名称|货物种类","[客户名称] Is Not Null and [货物种类] Is Not Null")


 回到顶部
帅哥哟,离线,有人找我吗?
czy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2014/10/2 17:01:00 [只看该作者]

以下是引用youngk在2014-10-2 16:15:00的发言:
在内部数据源的情况下,点击窗口按钮就可以,但是把这个代码换到外部数据源中就会显示:未将对象引用设置到对象的实例。请大师指点下,问题出在哪里呢?

 

只要数据加载进来了,在狐表中操作就没有内部外部之分,你的问题应该是进出库信息记录表中有空行

试试楼上的代码


 回到顶部
帅哥哟,离线,有人找我吗?
youngk
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:221 积分:1745 威望:0 精华:0 注册:2014/1/7 12:37:00
  发帖心情 Post By:2014/10/2 17:10:00 [只看该作者]

果然是大神,问题就是出在这里。太感谢你了图片点击可在新窗口打开查看

 回到顶部