1.业务需求:实现对短信分类的一个维护模块。短信分类表的逻辑结构和物理结构如下:
创建表的SQL为:
CREATE TABLE K_SMSClass
(
ClassID int IDENTITY ( 1,1 ) ,
ClassName varchar(30) NULL
)
go
ALTER TABLE K_SMSClass
ADD CONSTRAINT XPKK_SMSClass PRIMARY KEY NONCLUSTERED (ClassID ASC)
go
2.打开模块构件,新增一个模块,模块属性值设置如下:
模块名称: 短信分类维护
界面标题名:短信分类维护
模块类型 :表格型单表
使用模板:普通表格型单表(改版)
模块所属栏目:系统管理
主表用户ID字段名:(空)
图标文件名 :sjxmwh.gif
设备类型:个人电脑
模块说明:短信分类维护
是否调试:否
初始化Javascript脚本:(空)
界面皮肤:浅灰
界面元素是否进行权限控制:否
自定义表单是否进行权限控制:否
模块构件的属性设置界面如下:
3.打开界面元素构件,选中短信分类维护模块,新增一个界面元素,界面元素的属性设置如下:
其中查询SQL为:
select ceiling(count(*)/20.0) from CRMData.dbo.K_SMSClass;
select TOP 20 * from (select ROW_NUMBER() OVER(ORDER BY ClassID) as RowNumber_,
ClassID,ClassName from CRMData.dbo.K_SMSClass) as a_ where a_.RowNumber_>@pageNo_;
select RowNumber_ from (select ROW_NUMBER() OVER(ORDER BY ClassID) as RowNumber_,
ClassID from CRMData.dbo.K_SMSClass) as a_ where a_.ClassID=@ClassID_
查询SQL中共有三个SQL查询语句,之间用分号分开,第一个SQL用于计算页数;第二个SQL用于查询出某页的数据,参数@pageNo_必需要有,表示某页的开始行号,由系统自动把下页开始行号值传入SQL,从而实现翻页的功能,函数ROW_NUMBER() OVER(ORDER BY ClassID)表示以ClassID字段进行排序来生成行号,该函数也必须有,因为用SQL进行翻页性能最好。第三个SQL用于计算主键ClassID为@ClassID_值时的行号,用于新增或修改时进行行定位,刷新数据后选中行定位到当前新增行或当前修改行。
4.打开操作构件,选中短信分类维护模块中的短信分类信息界面元素,新增“新增、修改、删除、保存、取消”操作,这些操作的属性设置如下:
新增属性设置如下图:
修改属性设置如下图:
删除属性设置如下图:
保存属性设置如下图:
取消属性设置如下图:
5.打开字段构件,选中短信分类维护模块中的短信分类信息界面元素,新增“ClassID(编号),ClassName(短信分类名称)”两个字段,这些字段的属性设置如下:
6.打开操作SQL构件,选中短信分类维护模块中的短信分类信息界面元素的删除操作,属性设置如下图:
其中执行SQL为:
delete from CRMData.dbo.K_SMSClass
where ClassID=@ClassID_
选中保存操作,其中新增状态的属性设置如下图:
(ClassName )
values
(@ClassName_ )