数据窗口中按字段的显示值排序

排序|数据|显示

一个数据窗口中有字段 :人员编码,现在用ddw的方法把它显示为人员的姓名。问题是怎么在排序的时候是按姓名排序而不是按编码排序。

pb的帮助中Syntax for sort order中说明setsort有两种排序的语法:  columnname order          eg.  "emp_lname A"     "emp_lname A, dept_id D"  # columnnumber order   eg.  "#3 A"

不过经过测试发现可以按计算列排序的:

因此,新加一个计算列compute_1,表达式为LookUpDisplay( emp_id ),然后将其隐藏掉

string newsort

newsort = "compute_1 D"

dw_1.SetSort(newsort)

dw_1.Sort( )

我抱着试试看的态度直接用表达式排序,居然发现也可以!真没有想到pb还留了这么一手:)

string newsort

newsort = "LookUpDisplay( emp_id ) D"

dw_1.SetSort(newsort)

dw_1.Sort( )

此外,有网友说在PFC中有現成的服務.在數據窗口開啟排序服務的後邊加上inv_sort.of_SetUseDisplay(TRUE)就可以了。这个我没有使用过,供大家参考。

注:该文章原载自本人在pdriver.com的blog。

时间: 2024-11-02 14:14:15

数据窗口中按字段的显示值排序的相关文章

在PowerScript脚本中访问数据窗口中的数据

访问|脚本|数据 在PowerScript脚本中访问数据窗口中的数据张健姿 01-6-22 下午 03:50:25 在4.0 以 前 的 版 本, 如 果 您 想 在PowerScript 脚 本 中 访 问数 据 窗 口 中 的 数 据, 方 法 只 有 一 种, 那 就 是 使 用SetItem 和GetItem 系 列 的 函 数, 指 定 您 所 要 访 问 的 某 一 行 列 的 值, 这 一 方 法的 局 限 性 在 于 您 一 次 只 能 访 问 到 一 个 数 值. 而 在5.0

在数据窗口中检索数据

数据 在数据窗口中检索数据 我们往往需要数据窗口仅显示我们需要的数据.在数据窗口中检索数据的方法很多,常用的是设置SetFilter和使用SQL语句来实现. 1.使用SetFilter进行数据过滤 首先需要构造条件语句.如数据窗口中有一列名为xyh,我们需要检索xyh等于"叶秋枫"的数据.那么可写语句如下: string bl;bl="xyh='叶秋枫'";dw_1.setfilter(bl)//数据窗口的名为dw_1dw_1.retrieve()//重新检索数据

pb-PB的数据窗口中怎样选中一列?

问题描述 PB的数据窗口中怎样选中一列? 我做的是一个图书馆信息管理系统,我想在数据窗口中把读者信息中的"在校"的一列都变成"毕业" 的字样,这怎么实现啊! 解决方案 用sql语句,直接指定列名就可以了. 解决方案二: [PB]-数据窗口其他PB数据窗口中多行选中程序PB 数据窗口对象

如何将数据表中某个字段的内容选出来插入到另一个数据表中,并显示到Gridview中,用一次数据库连接可否?(用代码实现)

问题描述 如何将数据表中某个字段的内容选出来插入到另一个数据表中,并显示到Gridview中,用一次数据库连接可否?(用代码实现) 解决方案 解决方案二:建个临时表,存放Table1的全部数据和Table2的某个字段的数据临时表的字段为Table1的字段+Table2的某个字段GridView的DataSource设置为这个临时表就可以了解决方案三:LZ,你说的这种情况肯定是可以实现的.但是你的意思没有表达的很清楚啊.你是希望从第一个表中哦啊选出来的数据怎么插入第二个表中呢?说清楚你的要求,兄弟

在ITemChanged事件中对数据窗口中的数据进行校验

作者:达通兴电脑科技公司(www.study01job.com) 郭宝利 对用户录入的数据进行校验,这是数据窗口控件本身就具备的功能.但是,我们希望做更多的处理,并且错误信息显示界面更友好一些.为此,我们编写一个全局函数,在数据窗口的ItemChanged事件中调用,并且使用MessageBox显示该函数返回的错误信息.另外,还需要在数据窗口的ItemError事件中return 1来阻止数据窗口本身的错误提示窗口的显示. 当然,对下面的函数进行扩充,可以加入对更多类型数据的校验,以及基于业务要

在数据窗口中进行行选择操作

数据        我 们 在 数 据窗 口 中 需 要 进 行 行 选择 操 作. 如 用 户 为 了 修 改 数 据 或看 到 更 详 细 的 内 容 而 选 择 了 某 一 行: 在 另 一 些 情 况下, 用 户 可 能 要同 时 删 除 或 修 改 多 行, 这 时, 我 们 需要 有 使 用 户 在 一 个 数 据 窗 口 中 同 时 选 择 多 行 的 功 能.这 在PowerBuilder 中 是 相 当 容 易 做 到 的, 但 是, 如 果 您 在 一个 数 据 窗 口 祖

深入了解PB数据窗口数据录入的处理机制

作者:达通兴电脑科技公司(www.study01job.com) 郭宝利 和数据窗口控件打交道都是通过编辑控件进行的.在数据窗口中录入数据.修改数据,实际上是在修改单元上的编辑控件中的内容.当编辑控件移动到另外单元上之前,要对编辑控件中的数据进行校验,如果能通过字段的校验规则,就保存到字段中.编辑控件是可以移动的,需要编辑哪个单元,编辑控件就移动到哪个单元上,接受输入或者修改. 对于熟悉Microsoft Excel的人来说,编辑控件可以看成是Excel网格中的单元格.当用户在一个单元格中输入一

pb中这个字段的含义是什么啊

问题描述 pb中这个字段的含义是什么啊 这几句话的含义是什么啊 string ls_sf ls_sf = this.getitemstring(row,'c_prvo_no') stru_parm lstru_p lstru_p.any_parm[1]=ls_prvo_no 解决方案 单纯贴出一点来,只能说,实在赋值... 解决方案二: //定义变量 string ls_sf //从数据窗口里取出c_prvo_no这个字段的值 ls_sf = this.getitemstring(row,'c_

pb数据窗口编程技巧十则

Pb(PowerBuilder)取得巨大成就的原因就是有Datawindow对象,DataWindow是具有功能强大和灵活多变的特点,本人用PowerBuilder开发过一段时间后,总结出一些技巧,以供广大的PB开发者借鉴使用. 一.如何创建一个报表,如下形式 Quantity Running Total 5,000 5,000 2,500 7,500 3,000 10,500 12,000 22,500 对于Running Total列,我们可使用计算列:CumulativeSum(Quant