Foxtable(狐表)用户栏目专家坐堂 → 多列填充


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

主题:多列填充

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


加好友 发短信
等级:幼狐 帖子:164 积分:1377 威望:0 精华:0 注册:2018/7/18 18:48:00
手工编码填充数据  发帖心情 Post By:2021/6/18 9:03:00 [只看该作者]

Dim Vals As List(of String())
Vals = DataTables("来源表").GetValues("产品|客户")
For
i As Integer = 0 To Vals.Count - 1
    Dim
dr As DataRow = DataTables("接收表").AddNew()
    dr(
"产品") = Vals(i)(0)
    dr(
"客户") = Vals(i)(1)
Next

以上代码放在一个菜单按钮事件中,点击一下这个按钮,会填充一次所有的相关信息,点击第二次又重复填充一次所有的信息。

请问如何做到,以前有填充过的信息,在重复点击这个按钮后不会再重复填充?请问要如何做?


 回到顶部
帅哥,在线噢!
有点蓝
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/18 9:12:00 [只看该作者]

Dim Vals As List(of String())
Vals = DataTables("来源表").GetValues("产品|客户")
For 
i As Integer = 0 To Vals.Count - 1
    Dim 
dr As DataRow = DataTables("接收表").find("产品='" & Vals(i)(0) & "' and 客户='" & Vals(i)(1) & "'")
if dr is nothing then
dr = DataTables("接收表").AddNew()
    dr(
"产品") = Vals(i)(0)
    dr(
"客户") = Vals(i)(1)
end if
Next

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


加好友 发短信
等级:幼狐 帖子:164 积分:1377 威望:0 精华:0 注册:2018/7/18 18:48:00
  发帖心情 Post By:2021/6/18 9:41:00 [只看该作者]

Dim Vals As List(of String())
Vals = DataTables("MRP查询").GetValues("订单号|客户名称|产品代码|子件代码|子件名称|子件规格|下单日期|订单交期|订单数量|生产数量|单位|单位用量|材质")
For i As Integer = 0 To Vals.Count - 1
    Dim dr As DataRow = DataTables("MRP物料需求").find("订单号='" & Vals(i)(0) & "' and 客户名称='" & Vals(i)(1) & "'and 产品代码='" & Vals(i)(2) & "'and 子件代码='" & Vals(i)(3) & "'and 子件名称='" & Vals(i)(4) & "'and 子件规格='" & Vals(i)(5) & "'and 下单日期='" & Vals(i)(6) & "'and 订单交期='" & Vals(i)(7) & "'and 订单数量='" & Vals(i)(8) & "'and 生产数量='" & Vals(i)(9) & "'and 单位='" & Vals(i)(10) & "'and 单位用量='" & Vals(i)(11) & "'and 材质='" & Vals(i)(12) & "'")
If dr Is Nothing Then
dr = DataTables("MRP物料需求").AddNew()
    dr("订单号") = Vals(i)(0)
    dr("客户名称") = Vals(i)(1)
    dr("产品代码") = Vals(i)(2)
    dr("子件代码") = Vals(i)(3)
    dr("子件名称") = Vals(i)(4)
    dr("子件规格") = Vals(i)(5)
    dr("下单日期") = Vals(i)(6)
    dr("订单交期") = Vals(i)(7)
    dr("订单数量") = Vals(i)(8)
    dr("生产数量") = Vals(i)(9)
    dr("单位") = Vals(i)(10)
    dr("单位用量") = Vals(i)(11)
    dr("材质") = Vals(i)(12)
End If
Next
按您的方式,在按钮中加入以上代码,点击按钮后还是会重复填充已填充的内容。请问代码就问题吗
最好加一个条件“[生产数量]>0

 回到顶部
帅哥,在线噢!
有点蓝
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/18 9:52:00 [只看该作者]

表达式中的日期用符号#括起来,数值则不需要任何符号括起来,这些和代码中的格式是一样的,唯一不同的是字符串用单引号括起来。

例如:

Tables("订单").Filter = "[产品] = 'PD01'"  '字符用单引号括起来
Tables("订单").Filter = "[日期] = #3/17/1999#"  '日期用#括起来
Tables("订单").Filter = "[折扣] = 0.1"  '数值直接使用


另外有必要判断所有列吗,正常应该判断订单号就可以了吧

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


加好友 发短信
等级:幼狐 帖子:164 积分:1377 威望:0 精华:0 注册:2018/7/18 18:48:00
  发帖心情 Post By:2021/6/18 10:35:00 [只看该作者]

Dim Vals As List(of String())
Vals = DataTables("MRP查询").GetValues("订单号|客户名称|产品代码|子件代码|子件名称|子件规格|下单日期|订单交期|订单数量|生产数量|单位|单位用量|材质")
For i As Integer = 0 To Vals.Count - 1
    Dim dr As DataRow = DataTables("MRP物料需求").find("订单号='" & Vals(i)(0) & "' and 客户名称='" & Vals(i)(1) & "'and 产品代码='" & Vals(i)(2) & "'and 子件代码='" & Vals(i)(3) & "'and 子件名称='" & Vals(i)(4) & "'and 子件规格='" & Vals(i)(5) & "'and 下单日期='" & Vals(i)(6) & "'and 订单交期='" & Vals(i)(7) & "'and 订单数量='" & Vals(i)(8) & "'and 生产数量='" & Vals(i)(9) & "'and 单位='" & Vals(i)(10) & "'and 单位用量='" & Vals(i)(11) & "'and 材质='" & Vals(i)(12) & "'")
If dr Is Nothing Then
dr = DataTables("MRP物料需求").AddNew()
    dr("订单号") = Vals(i)(0)
    dr("客户名称") = Vals(i)(1)
    dr("产品代码") = Vals(i)(2)
    dr("子件代码") = Vals(i)(3)
    dr("子件名称") = Vals(i)(4)
    dr("子件规格") = Vals(i)(5)
    dr("下单日期") = Vals(i)(6)
    dr("订单交期") = Vals(i)(7)
    dr("订单数量") = Vals(i)(8)
    dr("生产数量") = Vals(i)(9)
    dr("单位") = Vals(i)(10)
    dr("单位用量") = Vals(i)(11)
    dr("材质") = Vals(i)(12)
End If
Next
主要问题是,点多少次按钮,就会重复填充多少次所有内容,我要的是”填充过的内容“,不论点击多少次都不会重复填充。
请指教!谢谢

 回到顶部
帅哥,在线噢!
有点蓝
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/18 10:44:00 [只看该作者]

表达式中的日期用符号#括起来,数值则不需要任何符号括起来,这些和代码中的格式是一样的,唯一不同的是字符串用单引号括起来。

例如:

Tables("订单").Filter = "[产品] = 'PD01'"  '字符用单引号括起来
Tables("订单").Filter = "[日期] = #3/17/1999#"  '日期用#括起来
Tables("订单").Filter = "[折扣] = 0.1"  '数值直接使用


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


加好友 发短信
等级:幼狐 帖子:164 积分:1377 威望:0 精华:0 注册:2018/7/18 18:48:00
查询表条件设置  发帖心情 Post By:2021/6/20 9:53:00 [只看该作者]

查询表如何在“条件”内设置按[下单日期]=系统日期,自动生成当天的查询表?

 回到顶部
帅哥,在线噢!
有点蓝
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/20 20:22:00 [只看该作者]

access:http://www.foxtable.com/webhelp/topics/0692.htm

Date

返回系统日期

例如查询当天的订单:

SELECT * FROM {订单} WHERE 日期 = Date()


SqlServer:http://www.foxtable.com/webhelp/topics/1827.htm


GetDate

返回系统日期,含时间。

例如查询当天的订单:

SELECT * FROM {订单} WHERE convert(nvarchar(10),日期,120) = convert(nvarchar(10),GetDate(),120)


 回到顶部
总数 18 上一页 1 2