Foxtable(狐表)用户栏目专家坐堂 → [求助]fill中的表问题


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

主题:[求助]fill中的表问题

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/24 21:30:00 [显示全部帖子]

 datacolchanged事件,判断表D的列,根据表D主键的值,在abc表查找对应的行,然后新增或者修改或者删除。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 9:29:00 [显示全部帖子]

 只能用查询表。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 9:51:00 [显示全部帖子]

DataColChanged事件直接判断列名。

 

比如有 表Aid、表A第一列、表A第二列、表Bid、表B第三列

 

你修改了【表A第一列】,那么就根据【表Aid】查找表A的行,如果找到,就直接改值;如果没找到,那就给表A新增一行。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 10:19:00 [显示全部帖子]

 你fill的表里面,请把各个表的主键加进来,改一个别名,如

 

select {表A}.[_Identify] As 表AId, {表B}.[_Identify] As 表BId


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 11:51:00 [显示全部帖子]

1、sqlQuery表无法判断 rowState 的值的,你要多加一个辅助列,在datacolchanged事件标记是新增还是修改;

 

2、绿色的代码,没问题,不需要判断类型,sql语句任何类型的值都可以用单引号括起来。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 15:37:00 [显示全部帖子]

循环获取列名 aa;循环获取每列的值 bb

 

然后写 "insert into {用户} (" & aa & ") values (" & bb & ")"


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 16:17:00 [显示全部帖子]

回复13楼,你列名写错了。弹出你生成的sql语句看看。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 16:29:00 [显示全部帖子]

valus要加引号,如 valus ('生产部', '张三', '666')

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 16:50:00 [显示全部帖子]

以下是引用blsu33在2017/9/25 16:35:00的发言:
恩已经成功了 
新增的行 查询表的行状态 还是红色的 tb.Current.Save() 命令不起作用。fill 进来的 怎么重新加载本行,怎么重新加载本表,重新fill ?
[此贴子已经被作者于2017/9/25 16:36:49编辑过]

 

不能单行保存的,只能整体 tb.save

 

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

 

无法重新加载本行,要刷新必须重新fill,或者是使用sqlcommand等查找得到数据后,赋值给对应行、对应的列。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/25 17:10:00 [显示全部帖子]

回复19楼,你必须区分开哪些列是哪个表的,不同表要分开处理。

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