Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:婴狐 帖子:43 积分:364 威望:0 精华:0 注册:2018/10/10 13:21:00
[求助]  发帖心情 Post By:2019/4/19 17:25:00 [只看该作者]

有这样一个字典组,Dim xzbjs As New Dictionary(Of String,Double)
请问如何获取字典中的最大值和它对应的键???



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/19 17:38:00 [只看该作者]

比较麻烦,如

 

Dim zd As New Dictionary(Of String, Integer)
zd.Add("苹果",5)
zd.Add("香蕉",9)
zd.Add("波罗",2)
zd.Add("桔子",1)

Dim mval As Double = 0
Dim mkey As String = ""
For Each key As String In zd.Keys
    If zd(key) > mval Then
        mval = zd(key)
        mkey = key
    End If
Next

msgbox(mkey & " " & mval)


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


加好友 发短信
等级:婴狐 帖子:43 积分:364 威望:0 精华:0 注册:2018/10/10 13:21:00
  发帖心情 Post By:2019/4/28 13:28:00 [只看该作者]


'计算每个供应商的小宗商品总金额,并将“供应商,总金额”的组合添加到字典
Dim xzbjs As New Dictionary(Of String,Double)
Dim gyss As New List(Of String)
gyss = DataTables("报价表").GetValues("供应商")
Dim sum As Double
For Each gys  As String In gyss
    sum = DataTables("报价表").Compute("sum(金额)","菜品属性 = '小宗'and 供应商 = 'gys'")
    xzbjs.Add(gys,sum)
Next

'比较各供应商的总金额,并找出总金额最低的供应商

Dim mval As Double = 0
Dim mkey As String = ""
For Each key As String In xzbjs.Keys
    If  xzbjs(key) > mval Then
        mval =  xzbjs(key)
        mkey = key
    End If
Next

‘将总金额最低的供应商对应的商品报价信息复制到一个新的表格中

Dim xzsps As List(Of String)
xzsps = DataTables("报价表").GetValues("菜品编号","菜品属性 = '小宗' and 供应商 = 'mkey'")
For Each xzsp As String In xzsps
    Dim  dr As DataRow =  DataTables("报价表").Find("菜品编号 = xzsp and 菜品属性 = '小宗' And 供应商 = mkey")
    Dim bjdr As DataRow = DataTables("比价表").AddNew()
    bjdr("日期") = dr("日期")
    bjdr("菜品编码") = dr("菜品编码")
    bjdr("菜品名称") = dr("菜品名称")
    bjdr("品类") = dr("品类")
    bjdr("单位") = dr("单位")
    bjdr("规格") = dr("规格")
    bjdr("数量") = dr("数量")
    bjdr("单价") = dr("单价")
    bjdr("金额") = dr("金额")
    bjdr("供应商") = dr("供应商")
    bjdr("菜品属性") = dr("菜品属性")

Next


请问老师 上述代码 哪里出错了吗  试了好久都没有找出问题???


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/28 14:40:00 [只看该作者]

比如

 

xzsps = DataTables("报价表").GetValues("菜品编号","菜品属性 = '小宗' and 供应商 = '" & mkey & "'")

 

http://www.foxtable.com/webhelp/scr/1284.htm

 


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


加好友 发短信
等级:婴狐 帖子:43 积分:364 威望:0 精华:0 注册:2018/10/10 13:21:00
  发帖心情 Post By:2019/4/28 17:22:00 [只看该作者]


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

老师,您好 上面编写的代码总是出现这种报错,这是回事呀???

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


加好友 发短信
等级:婴狐 帖子:43 积分:364 威望:0 精华:0 注册:2018/10/10 13:21:00
  发帖心情 Post By:2019/4/28 17:24:00 [只看该作者]

还要请问老师如何获取字典中的最小值,以及其对应的键???

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/28 17:28:00 [只看该作者]

请具体做一个实例发上来,说明你要做的功能。

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


加好友 发短信
等级:婴狐 帖子:43 积分:364 威望:0 精华:0 注册:2018/10/10 13:21:00
  发帖心情 Post By:2019/4/28 19:46:00 [只看该作者]




 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:供应商比价系统.foxdb

老师 这是我做的实例











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


加好友 发短信
等级:婴狐 帖子:43 积分:364 威望:0 精华:0 注册:2018/10/10 13:21:00
  发帖心情 Post By:2019/4/28 19:49:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:供应商报价.png
图片点击可在新窗口打开查看

老师,我需要从报价表中根据  金额  列  筛选出每个商品报价最低的供应商  并把该行的全部信息复制到 比价表   中   



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/29 11:37:00 [只看该作者]

Dim xzsps As List(Of String)
xzsps = DataTables("报价表").GetValues("菜品编号","菜品属性 = '小宗'")
For Each xzsp As String In xzsps
    Dim  dr As DataRow =  DataTables("报价表").Find("菜品编号 = '" & xzsp & "' And 菜品属性 = '小宗'", "金额")
    Dim bjdr As DataRow = DataTables("比价表").AddNew()
    bjdr("日期") = dr("日期")
    bjdr("菜品编号") = dr("菜品编号")
    bjdr("菜品名称") = dr("菜品名称")
    bjdr("品类") = dr("品类")
    bjdr("单位") = dr("单位")
    bjdr("规格") = dr("规格")
    bjdr("数量") = dr("数量")
    bjdr("单价") = dr("单价")
    bjdr("金额") = dr("金额")
    bjdr("供应商") = dr("供应商")
    bjdr("菜品属性") = dr("菜品属性")
   
   
Next

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