Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共9 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:关联表问题搞了三天.都没搞明白,有请老师指点迷津...

1楼
菜鸟foxtable 发表于:2009/1/10 22:46:00
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:关联测试.table


如图所示三处,想得我白头发都多了好几根也没想出个办法,麻烦老师们指教..图片点击可在新窗口打开查看

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

问题1,如何实现选择某项目时,判断该项目关联表是否有空行,有则返回,无则自动增加行.
我在ComboBox1控件的Valuechanged这样写报错,注:原版是外部数据.

Dim cmd As SQLCommand
这里原有连接语句
Dim ls As DataTable
Dim dt As integer
Dim dr As string = e.form.controls("ComboBox1").Value
cmd.commandtext = "select 第三列 From [表B] where 第一列 = '"& dr &"' and 第二列 = ''"
ls = cmd.ExecuteReader()
dt = ls.datarows.count

if dt > 0 Then
Return
Else
  Tables("表A.表B").AddNew()
end if


问题二:如何在指定列(如第八列)录入完数据按下回车键自动增加新行?帮助里都是到最后一行....才能新增..郁闷.



问题三:如何在主窗口加载时不显示当前主表选择行(一般为第一行)关联表数据?直到选择ComboBox1下拉选项时才出现相应关联表数据?




[此贴子已经被作者于2009-1-11 8:41:14编辑过]
2楼
菜鸟foxtable 发表于:2009/1/11 8:45:00
图片点击可在新窗口打开查看天天泡论坛..早上起来顶一顶...
3楼
kylin 发表于:2009/1/11 8:53:00
第二列 = '',要写成 第二列 is null,其他自己再测试
4楼
菜鸟foxtable 发表于:2009/1/11 9:28:00
第二个问题有个思路,不知道是否可行?不过输入焦点移动那一行我不懂写...

在表AfterEdit事件中加入:
If e.Col.name=第九列 Then
把输入焦点移到最后一个单元格
Sendkeys.send({ENTER})

第一个问题变得好奇怪....下面的代码在ComboBox1的ValueChanged里运行得好好的,把它们转到某个按钮Clik中就报错,奇怪....难道是红色部分出错?


Dim cmd As SQLCommand
cmd.Con nection Name= "zygl"
Dim ls As DataTable
Dim dt As integer
Dim dr As string = e.form.controls("TextBox6").Value
cmd.commandtext = "select 项目 From [长嘱] where 住院ID = '"& dr &"'and 单价 is null"
ls = cmd.ExecuteReader()
dt = ls.datarows.count

if dt = 0 Then
  Tables("住院登记.长嘱").AddNew()
end if

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

[此贴子已经被作者于2009-1-11 10:20:45编辑过]
5楼
czy 发表于:2009/1/11 20:59:00
错在这里:

cmd.Con nection Name= "zygl"
6楼
菜鸟foxtable 发表于:2009/1/11 21:54:00
以下是引用czy在2009-1-11 20:59:00的发言:
错在这里:

cmd.Con nection Name= "zygl"

图片点击可在新窗口打开查看那里是故意的..不打空格,论坛显示不到...

7楼
czy 发表于:2009/1/11 23:26:00
不好意思,我没打开你的文件。

Dim cmd As New SQLCommand
Dim ls As DataTable
Dim dt As integer
Dim dr As string = e.form.controls("ComboBox1").Value
cmd.commandtext = "select 第三列 From {表B} where 第一列 = '"& dr &"' and 第二列 is null"
ls = cmd.ExecuteReader()
dt = ls.datarows.count

if dt > 0 Then
Return
Else
  Tables("表A.表B").AddNew()
end if

8楼
菜鸟foxtable 发表于:2009/1/12 9:35:00
再次绝倒.....Dim cmd As New SQLCommand

另问,select 第三列 From {表B} where 第一列 = '"& dr &"' and 第二列 is null
其中的 {表B} 跟[表B]有什么不同?什么时候用[]什么时候用{}?

9楼
smileboy 发表于:2009/1/12 9:47:00
以下是引用菜鸟foxtable在2009-1-12 9:35:00的发言:
再次绝倒.....Dim cmd As New SQLCommand

另问,select 第三列 From {表B} where 第一列 = '"& dr &"' and 第二列 is null
其中的 {表B} 跟[表B]有什么不同?什么时候用[]什么时候用{}?

如果是内部数据源,SQL语句中的表名必须用大括号括起来,外部数据源没有这个限制。

共9 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03516 s, 3 queries.