数据窗口avg,sum

egceo 2009-03-30 06:04:40
问题1》想详细了解evaluate()书上说的太泛,help是英文的不能完全吃透。
问题2》这些画板函数能不能加条件,或将条件改成‘价格’以外的某个条件,象select语句一样。sum(价格 for "价格 > 100")
...全文
75 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
newease 2009-03-31
  • 打赏
  • 举报
回复
问题2》这些画板函数能不能加条件,或将条件改成‘价格’以外的某个条件,象select语句一样。sum(价格 for "价格 > 100")


sum(if 价格>100,价格,0)


all 是默认条件 表示该列中所有数据的合计值

group n 是第n组数据的合计值


建议E文好多看帮助,要么看看《PB9参考手册》等书箱收益
egceo 2009-03-31
  • 打赏
  • 举报
回复
5楼没听懂我的意思。
我问的是sum(价格 for "价格 > 100") 改成 sum(价格 for "单价>=100 and 单价<=100") 行不行?

你说‘group n 是第n组数据的合计值’我知道,书上有,一般书籍上有的东西不要告诉我,说出你的你理解和方法,注意的事项就谢之不尽了。

我身边有3套书,为此翻了一整天,理解不透或了解是不是有扩展功能。我不仅长了嘴巴还长了大脑。再次感谢1楼!
egceo 2009-03-30
  • 打赏
  • 举报
回复
明白了不少东西,但还是是是而非,想用到出神入化还得假以适日。
通过2我的理解是:设置或取属性用Describe(),要出数据一定要用Describe("Evaluate(....,row_x)")。
1我就不太明白了,"Evaluate('Page()'," + ls_rownum +")"根本没有发挥他的计算功能,只是把数据传递了一下而已。
谢谢了。

我是问题2无人回答!
dawugui 2009-03-30
  • 打赏
  • 举报
回复
数据窗口的Describe和Evaluate 

  在Describe中可以描述某个属性的取值,但是如果想获取数据窗口对象中由属性、函数等构成的表达式的取值时,必须在函数Describe中使用函数Evaluate。
  比如,dw_1为一个Freedom类型的数据窗口,每页显示一条记录。下面程序可以显示总页数:
  string ls_modstring, ls_rownum
  ls_rownum = String(dw_1.GetRow())
  ls_modstring = "Evaluate('Page()'," + ls_rownum +")"
  Parent.Title = "当前页: "+ dw_1.Describe(ls_modstring)
  上面的例子不见得有很大的实用性,但是对于理解函数Describe中使用Evaluate有很大的帮助,而这两个函数的搭配可以提供无与伦比的灵活性。


数据窗口的函数Evaluate 

  在使用Describe描述数据窗口对象中的相关信息时,有一个非常重要的函数不能不掌握,就是Evaluate。 虽然函数Describe可以获取对象的信息,但是表达式的取值就不能正常读取了,而这又是经常遇到的。所以,函数Evaluate非常重要,它可以使函数Describe获取表达式的取值。该函数的语法是:
  Evalute('expression',rowno)
  其中,expression是属性表达式,rowno是要描述的行号。该函数放置在Describe的属性列表中。例如,判断第3行的salary工资是否大于1 000,如果大于则返回1,否则返回0,可以使用下面的语句:
  dw_1.Describe("Evaluate('If(salary > 1000, 1, 0) ', 3)")
  而使用下面的语法就是错误的:
  dw_1.Describe("If(salary>1000,1,0) ")

egceo 2009-03-30
  • 打赏
  • 举报
回复

avg_resu = dec( ds_g1.Describe("Evaluate('sum("+values_zd+" for all )',0)"))

f_Resu=round(dec(ds_sf.DESCRIBE("Evaluate('" +excel_sf + "',0)")),2)

上面是我用的实例,只是囫囵吞枣。没吃透,不知道是不是还有其他功能,类似这样的函数(在函数集里没找到)。也不知道引申的用法(for all 可不可以以别的列做为条件?语法?),特别是语法。所以想‘详细’了解一下。发资料给我也行,链接也行。在这里先谢谢了。
zgz0@hotmail.com
dawugui 2009-03-30
  • 打赏
  • 举报
回复
[Quote=引用楼主 egceo 的帖子:]
问题1》想详细了解evaluate()书上说的太泛,help是英文的不能完全吃透。
问题2》这些画板函数能不能加条件,或将条件改成‘价格’以外的某个条件,象select语句一样。sum(价格 for "价格 > 100")
[/Quote]
针对某个列插入一个控件,自己改改.

1,076

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧