易表在线答疑技术与交流用户社区 → [求助]将其它文件中指定表的数据复制到当前文件中的指定表


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

主题:[求助]将其它文件中指定表的数据复制到当前文件中的指定表

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


加好友 发短信
等级:论坛游民 帖子:114 积分:235 威望:0 精华:0 注册:2009/1/30 14:49:00
[求助]将其它文件中指定表的数据复制到当前文件中的指定表  发帖心情 Post By:2010/12/16 14:23:00 [只看该作者]

Import
将其它文件中指定表的数据复制到当前文件中的指定表。

语法:
Import(Grid,SourceFile,SourceGrid,Password,CompareCol,CompareMode,Comparevalue,......,Option)

Grid           当前文件中的某个表
SourceFile     来源文件,包括路径和文件名
SourceGrid     来源文件中的表,将从该表中复制数据到Grid参数指定的表中。
Password       指定来源文件的管理员密码。
CompareCol     进行比较的列,可以用列名称表示,也可以用位置表示。
CompareMode    比较方式,包括=、>、<、>=、<=、<>、Like、Instr共8种比较方式。
Comparevalue   比较值 Option         可选参数,
             0  匹配同名列
             1  不匹配同名列,要求表结构必须完全一致。
             默认为0

可以设置多个比较条件,也可以不设置,从第五个参数开始,每三个参数组成一个比较条件。如果比较方式选择的是Instr,则进行包含查询;如果比较方式选择"Like",则可以在比较值中使用通配符进行类似查询。

例如:
Import("销售总表","c:\sales.egd","销售","123")
将文件c:\sales.egd中的销售表数据复制到当前文件的销售总表,这里假定c:\sales.egd的管理员密码为123。

Import("华东分析","c:\sales.egd","销售","","地区","=","华东")
将文件c:\sales.egd的销售表中华东地区的销售数据复制到当前文件的华东分析表,这里假定c:\sales.egd没有设置管理员密码。

+++++++++++++++++++++++++++++++++++++++++++
基于这个公式,设置了一个按钮代码

Import("客户信息","F:\东方验光局域办公\验光共享\客户信息管理.egd","客户信息","888","1")


这个公式一直到密码为止都是正常的,就是我在按下按钮的时候,它把所有的数据从头到尾全部复制过来了,而且,如果再按一下,就又重复复制了一份,也就是说你按几次他就复制几次,
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
我的意思是说我有一列档案号,这个复制得随号码走,不要复制多余的,没有的可以被复制进来,包括同名都是可以的,就是不能出现同个档案号-----档案号  是唯一的编码,是真实记录的当前编号


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


加好友 发短信
等级:版主 帖子:4639 积分:133 威望:0 精华:0 注册:2006/9/23 19:23:00
  发帖心情 Post By:2010/12/16 14:35:00 [只看该作者]

Import() And DelReptRows()

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


加好友 发短信
等级:论坛游民 帖子:114 积分:235 威望:0 精华:0 注册:2009/1/30 14:49:00
  发帖心情 Post By:2010/12/16 14:51:00 [只看该作者]

下面引用由程兴刚2010/12/16 02:35pm 发表的内容:
Import() And DelReptRows()

 使用  Import() And DelReptRows()
 这个代码,整个序列号和档案号全部乱了,档案号出现重复,序列号出现空号,姓名.性别列出现重复

-=-=-=- 以下内容由 east8582010年12月16日 02:54pm 时添加 -=-=-=-
Import("客户信息","F:\东方验光局域办公\验光共享\客户信息管理.egd","客户信息","888","1") And DelReptRows("客户信息","档案号","单号","姓名","性别")

-=-=-=- 以下内容由 east8582010年12月16日 04:34pm 时添加 -=-=-=-
0  匹配同名列
            1  不匹配同名列,要求表结构必须完全一致。
            默认为0

我的代码 就是在这里不知道怎么设置..........

-=-=-=- 以下内容由 east8582010年12月16日 04:35pm 时添加 -=-=-=-
怎么打到这里了呢? O(∩_∩)O哈哈~


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


加好友 发短信
等级:超级版主 帖子:5115 积分:862 威望:0 精华:0 注册:2006/8/15 16:57:00
  发帖心情 Post By:2010/12/16 15:16:00 [只看该作者]

最好的办法传文件!

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


加好友 发短信
等级:论坛游民 帖子:114 积分:235 威望:0 精华:0 注册:2009/1/30 14:49:00
  发帖心情 Post By:2010/12/16 16:32:00 [只看该作者]

下面引用由lyang702010/12/16 03:16pm 发表的内容:
最好的办法传文件!

Import("客户信息","F:\东方验光局域办公\验光共享\客户信息管理.egd","客户信息","888","1")

代码已经在这里啦,  这是2个文件啊,就是上传
也是不能设置啊,,  从A文件中复制   B文件的数据 ,我的要求是完全复制 B 文件,也就是说克隆一个B 文件中的一个表数据,  就好比我们平常的复制 -张贴

-=-=-=- 以下内容由 east8582010年12月16日 04:36pm 时添加 -=-=-=-
0  匹配同名列
           1  不匹配同名列,要求表结构必须完全一致。
           默认为0

我的代码 就是在这里不知道怎么设置..........


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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/12/16 16:43:00 [只看该作者]

不发文件只能给你思路、公式试试?
1、在当前文件中新增一个表,表名为“B”。有2列,字符列“档案号”、逻辑列“K”。

2、在文件的当前表“客户信息”设置按钮公式:

ClearGrid("B") And
Import("B","F:\东方验光局域办公\验光共享\客户信息管理.egd","客户信息","888") And
DelRow("B",1) And
EvalFor("B","k","FindRow(""客户信息"",""档案号"",""="",[档案号])") And
DelFor("B","k","=",-1) And
Eval("Import(""客户信息"",""F:\东方验光局域办公\验光共享\客户信息管理.egd"",""客户信息"",""888"",""档案号"",""="","""+Substitute(ListFor("B","档案号"),"|",""",0) And Import(""客户信息"",""F:\东方验光局域办公\验光共享\客户信息管理.egd"",""客户信息"",""888"",""档案号"",""="",""")+""",0)")


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


加好友 发短信
等级:版主 帖子:4639 积分:133 威望:0 精华:0 注册:2006/9/23 19:23:00
  发帖心情 Post By:2010/12/16 17:19:00 [只看该作者]

Import("客户信息","F:\东方验光局域办公\验光共享\客户信息管理.egd","客户信息","888","1") And DelReptRows("客户信息","档案号")

排除的始终是后面导入的且是重复的数据,从您的公司看,您的数据很不规范,相同的档案号而出现了不同单号、不同姓名、不同性别的数据,所以您排除重复后就保留了重复的档案号!


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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/12/16 17:33:00 [只看该作者]

[这个贴子最后由wjq1072在 2010/12/16 05:37pm 第 1 次编辑]

把你的2个表的列名称排出来看看?

-=-=-=- 以下内容由 wjq10722010年12月16日 05:35pm 时添加 -=-=-=-
2个表“档案号”列的位置是不是相同?如果相同就可以:
Import("客户信息","F:\东方验光局域办公\验光共享\客户信息管理.egd","客户信息","888",1) And DelReptRows("客户信息","档案号")

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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/12/16 17:54:00 [只看该作者]

把按钮公式中的路径E更改F试试?
egd文件下载

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


加好友 发短信
等级:论坛游民 帖子:114 积分:235 威望:0 精华:0 注册:2009/1/30 14:49:00
  发帖心情 Post By:2010/12/16 18:27:00 [只看该作者]

下面引用由wjq10722010/12/16 05:54pm 发表的内容:
把按钮公式中的路径E更改F试试?

CreateGrid("客户信息","档案号",0,"k",3) And ClearGrid("客户信息") And Import("客户信息","F:\东方验光局域办公\验光共享\客

户信息管理.egd","客户信息","888",1) And DelRow("客户信息",1) And EvalFor("客户信息","k","FindRow(""客户信息"",""档案

号"",""="",[档案号])") And DelFor("客户信息","k","=",-1) And Eval("Import(""客户信息"",""F:\东方验光局域办公\验光共享\客

户信息管理.egd"",""客户信息"",""888"",""档案号"",""="","""+Substitute(ListFor("客户信息","档案号"),"|",""",1) And

Import(""客户信息"",""F:\东方验光局域办公\验光共享\客户信息管理.egd"",""客户信息"",""888"",""档案号"",""="",""")

+""",1)") And RemoveGrid("客户信息")

一图  
2图

导入是正常的,但是每次导入  都会产生 一个表 如一图, 然后出现 第二图


 回到顶部
总数 16 1 2 下一页