度量快速开发平台分页构建介绍

度量快速开发平台中,网格部件使用非常多,一般情况下,比如数据在1万以内的,都可以直接快速查询出来,如果数据量很大,考虑到一次性打开可能有效率影响,因此可能有网格部件显示数据的分页需求。
虽然数据量大后分页显示效率提高,但是查看数据还是不太方便。如果确实要分页,那么分页功能如何在度量快速开发平台中来实现呢?

对于mysql数据库,分页还很好实现,在sql中直接就提供了limit分页的功能。度量快速开发平台一般是sqlserver或者是oracle,我们同样可以利用sql语句来实现分页效果。

主要实现思路就是利用sql语句查询不同数据,再界面上构建类似上一页,下一页,指定页的数据,以下是实现步骤:

1、建立业务表
    业务表建立的时候,就需要考虑分页的功能,下面代码示例对oracle与sqlserver通用:

select * from 
(
select 
ROW_NUMBER() over(order by id ) as rownum,
COUNT(*) over() rowscount,

ID,TITLE,HEIGHT , WIDTH, CREATE_TIME,  CREATE_USER from form_list

) t 
where rownum>= ([:PAGE] -1) * [:ROW] +1 and rownum< [:PAGE] * [:ROW]+1

说明:
rownum表示每一行数据的序号,rowscount表示该查询的所有记录。
两个整数型的业务表变量 PAGE,ROW 分别表示页数,每页显示条数。

2、建立窗体
分别拖入一个网格部件,一个下拉选择(页选择),两个按钮(上页,下页)。
网格部件选择好上面建立的业务表。

2.1)窗体加载事件代码:

‘定义每页显示条数
dim PAGE_OF_ROW = 19

‘定义页数,默认查询第一页
dim PAGE_NUM = 1
Call("刷新")
‘------------------------配置页选项功能开始----------------------------
‘页选项刷新标志(0不刷新,1刷新)
dim RefreshGlag=0
‘总条数
dim allCount=网格部件1.GetFocusedRowValue("ROWSCOUNT")
dim ALL_PAGE=0
‘因为cint四舍五入了,为了保证有效行数,加0.4999,这样,小数点后有值的,就表示要多一页。
ALL_PAGE=cint(allCount/PAGE_OF_ROW+0.4999999)
dim stringset=""
for iLoop=1 to ALL_PAGE
stringset=stringset+cstr(iLoop)+","
next
if len(stringset)>0 then
    stringset=left(stringset,len(stringset)-1)

页选项.SetItems(stringset,false)
        页选项.Value=PAGE_NUM
else
        stringset="1"
        页选项.SetItems(stringset,false)
        页选项.Value=PAGE_NUM
end if
RefreshGlag=1
文本标签1.Text = "共计 "&allCount &" 条数据,每页 "&PAGE_OF_ROW&" 条。 "
‘------------------------配置页选项功能结束----------------------------

2.2)页选项与上页,下页代码:
 
‘页选项 的 值变化事件 事件代码:
if RefreshGlag=1 then
  PAGE_NUM = 页选项.Value
  Call("刷新")
end if

‘上页 的 单击事件 事件代码:
if cint(PAGE_NUM) > 1 then
  PAGE_NUM = cint(PAGE_NUM) - 1
  页选项.Value= PAGE_NUM
end if

‘下页 的 单击事件 事件代码:
if cint(PAGE_NUM) < ALL_PAGE then
  PAGE_NUM = cint(PAGE_NUM) + 1
   页选项.Value= PAGE_NUM
end if

2.3)刷新 功能代码:
‘刷新数据
网格部件1.SetVaribleValue("PAGE",PAGE_NUM)
网格部件1.SetVaribleValue("ROW",PAGE_OF_ROW)
网格部件1.RefreshData()

3、效果:

分页还有多种方式,其他的请google查询sql分页

原文地址:http://bbs.delit.cn/thread-979-1-1.html

转载请注明出处:

撰写人:度量科技http://www.delit.cn

时间: 2024-08-12 09:27:03

度量快速开发平台分页构建介绍的相关文章

度量快速开发平台中附件字段介绍

度量快速开发平台中,字段可以设置为附件类型,设置为附件类型的字段,在上传了数据后,字段中保存的数据格式是这样:   32位附件码|附件1名称  32位附件码|附件1名称\附件2名称   32位附件码|附件1名称\附件2名称\附件3名称 上面格式可以看到一个 附件 字段设置后,可以上传多个附件.根据存储数据格式情况,我们建议,附件这个字段长度尽量设置长,比如长度为1000或者2000,这样上传几个附件也不会提示字符超长. 度量快速开发平台中,附件字段是加密上传到服务器端的,数据库中实际上只记录了服

报表设计器报表结构介绍———度量快速开发平台

度量快速开发平台集成了报表设计工具,今天给大家普及哈报表设计器的报表结构:   打开报表设计器,可以看到整个报表是由多个绑定带区组成.                     那么每个带区各代表的是什么呢?如下:TopMarginBand(上边距):每个页面上面都显示的空白,在PageHeaderBand或者ReportHeaderBand上面:ReportHeaderBand(报表头):在报表起始位置, 此带区被设计用于显示某些概述信息,例如报表的封面:PageHeaderBand(页眉):在

快速开发平台ServerURL()使用介绍

度量快速开发平台中,有很多非常有意思的方法提供给二次开发人员使用,笔者从实际使用的案例中就使用过多个很不错的方法,本次重点给大家介绍一下ServerURL()方法的使用场景及用法. ServerURL() 方法,是度量快速开发平台中的窗体方法,直接使用,用于获取平台服务端的地址,使用示例: Msgbox( ServerURL() ) 度量快速开发平台中,一般来说,服务端的地址是确定的,二次开发人员都是能获取.为什么需要这么一个方法呢? 在实际的客户使用中,可能有不同的网络结构,例如在医院,医院存

度量快速开发平台:网格部件焦点行数据实现窗体功能的显示与隐藏控制

业务需求: 在窗体构建中,不乏需要系统根据某些数据自动判断来实现窗体菜单功能的是否可用.对于非专业开发人员来说这未必不是一件难于登天的事情, 针对此类问题,度量快速开发平台提供了一套小白都能使用自如的窗体构建智能向导.以下主要讲解如何实现网格部件焦点行数据对菜单功能的显示与隐藏控制. 应用场景: 事例:入库管理,当我们选中已经审核完成的商品入库单时,需要实现修改.删除.审核功能只读.如图: 反之,选中未审核数据,实现销审只读,其他可操作.如图: 以上就是界面显示效果,下面我们看看后台代码(没有想

关于度量快速开发平台(创建数据表,业务表)

转眼之间,我已在度量工作了20天,在这20天中,不多不少,有些收获. 前十天,在无尽的学习当中,熟悉快速开放平台,看文档,听同事讲解之后,做练习,十天下来, 对于这个平台已熟悉的差不多了,我不得不说这个平台的强大.一.平台简介 快速开发平台主要分为两种模式.一种是引擎模式,一种是生成源代码模式.在度量快速开发平台中,这两种模式都使用到了,但是生成源代码模式在度量快速开发平台里面得到了不一样的体现,更大幅度的提高了效率. 我们在平台中不管用什么方式构建(在平台中开发我们称之为构建)出来的应用(在平

度量快速开发平台网格勾选行(标识行),多选行获取方法

度量快速开发平台网格部件中勾选行与多选行都可以使用,我们向导中目前列出了勾选行的获取使用方法,多选行目前职能向导中没有列出,这里介绍一下.  勾选行获取,可以直接智能向导 "获取标识行" dim rows=网格部件1.GetMarkedDataRows()for each dr in rows   msgbox(dr["ID"])next 多选行获取效果: dim rows=网格部件1.GridView.GetSelectedRows()dim maxcount=0

度量快速开发平台系统介绍

度量快速开发平台(DelitPlatform)是业界第一个完全基于运行时设计思想实现的业务定制管理平台,Any where.Any Time 进行业务调整,业务修改,而不影响其它业务使用.它简化了软件整个开发周期,缩短开发时间.度量快速开发平台是领先的SOA应用开发平台,基于.Net技术,采用了衔进的SOA标准和规范,并通过部件化,图形化,一体化的开发平台产品为客户提供了完整覆盖软件开发生命周期,从软件设计,开发,调试,后期维护等方面进行优化,全面提升研发速度和稳定性.并达到低成本.高质量.灵活

关于度量快速开发平台(创建智能窗体)

上次提到创建数据表和业务表,这都是为创建智能窗体做准备,但也是不可缺少的一部分.现在,讲讲如何创建智能窗体. 一.概念及用途 概念:智能窗体,智能表现在代码少,操作方便,智能识别,智能提示等方面,所以称之为智能窗体,然后智能窗体里面具有这些特点的控件又被称之为智能部件. 用途:窗体的开发应用很广泛,这个就不用多说了,在平台中还可以利用窗体构建高级工作流 二.创建窗体(以学生信息为例) 我们需要创建2个窗体,一个是显示所有学生信息列表的主窗体(学生信息列表窗体),从这个窗体上可以打开另一个子窗体(

度量快速开发平台部署IIS服务端后提示不具备查看该目录和页的权限 ALC

今天在云虚拟机上部署度量快速开发平台服务端后,访问效果如下所示:  提示 不具备查看该目录或页面的权限,因为访问控制列表(ALC)对wrb服务器上的该资源进行了配置. 这个错误,主要是IIS上部署的服务端文件夹访问权限不够引起,只需要把服务端目录安全性设置为 network service用户完全控制即可.如果设置这个用户后仍然不行,则需要把everyone用户设置为完全控制才行.原文地址:http://bbs.delit.cn/thread-336-1-1.html 转载请注明出处: 撰写人: