BPM实例分享:玩转数据字典新技能-字典库排序

简介:

有童鞋问到字典库的排序问题这里简单介绍一个新技能

数据字典使用场景:请假流程里的请假类型,有病假、事假、调休等。
定义数据字典,并且在流程中使用SheetDropDownListSheetRadioButtonList展现由用户来选择,如图:

wKiom1jcdiziEihdAABCIthxOMc436.png-wh_50 

数据字典


使用SheetDropDownList,并且设置该控件的属性MasterDataCategory为“请假类型”,其代码可能如下:

<SheetControls:SheetDropDownListID="SheetDropDownList1"runat="server"DataField="请假类型"MasterDataCategory="请假类型"></SheetControls:SheetDropDownList>
在表单中显示的效果如下:

wKiom1jcdk-R_yNqAAAkwSakA-E193.png-wh_50

SheetDropDownList使用数据字典


表单设计器中使用

wKioL1jcdl7QWCxWAACD8SH0qG0337.png-wh_50


对于SheetDropDownListSheetCheckBoxList、SheetRadioButtonList控件,可以直接绑定数据字典显示选项。

数据字典固然方便,一不小心就建多了,字典库多了用起来也是有点麻烦。

wKiom1jcdnLyQW5VAAEZ74gMaEU365.png-wh_50


下面教给大家一个简单实用的排序技能.
首先找到

 

\Portal\Admin\MvcDesigner\MvcDesignerService.ashx

 

下面的这个函数

 

#region 获取数据字典

   

        public void GetMasterDataCategory(HttpContext context)

        {

            List<string> items = new List<string>();

            Dictionary<string, string> table = OThinker.H3.WorkSheet.AppUtility.Engine.MetadataRepository.GetCategoryTable();

            foreach (string key in table.OrderBy(s=>s.Value).Select(x=>x.Key))

            {

                items.Add(table[key]);

            }

            context.Response.Write(JSSerializer.Serialize(items));

        }

   

        #endregion

 

把原来的 table.Keys 改成

 

table.OrderBy(s=>s.Value).Select(x=>x.Key)

 

可以任意改成喜欢的排序都可以。











本文转自 lwl_BPM  51CTO博客,原文链接:http://blog.51cto.com/12438115/1911658,如需转载请自行联系原作者
目录
相关文章
|
7天前
|
存储
平台设计-字典管理
先定义两个概念:字典类和字典项。
|
2月前
|
测试技术 项目管理 数据库
3、软件项目组织过程——所有表集合
3、软件项目组织过程——所有表集合
14 0
|
2月前
|
测试技术 API 数据格式
5、软件产品集成过程——所有表集合
5、软件产品集成过程——所有表集合
20 0
|
4月前
|
NoSQL 算法 Redis
【Redi设计与实现】第四章:字典
【Redi设计与实现】第四章:字典
|
6月前
|
存储 程序员 C语言
c++ 如何做出实现一组数据的实际索引
c++ 如何做出实现一组数据的实际索引
|
10月前
|
数据库
数据库系统概论第三章示例数据库表建立与插入代码
数据库系统概论第三章示例数据库表建立与插入代码
70 0
|
10月前
|
存储 程序员 C语言
c++ 如何做出实现一组数据的实际索引
C++是一种计算机高级程序设计语言, 由​​C语言​​​扩展升级而产生 , 最早于1979年由​​本贾尼·斯特劳斯特卢普​​在AT&T贝尔工
|
11月前
|
存储 SQL 数据库
如何创建合适的索引
如何创建合适的索引
【SQL开发实战技巧】系列(二十五):数仓报表场景☞结果集中的重复数据只显示一次以及计算部门薪资差异高效的写法以及如何对数据进行快速分组
本篇文章讲解的主要内容是:***如何使用lag函数让结果集重复数据只显示一次、用行转列pivot写法优化部门之间计算工资差异类似需求、如何通过ceil函数对已有数据进行分组打印、放假安排团队分组值班,如何通过ntile()over(order by )快速进行人员分组***
【SQL开发实战技巧】系列(二十五):数仓报表场景☞结果集中的重复数据只显示一次以及计算部门薪资差异高效的写法以及如何对数据进行快速分组
|
存储 自然语言处理 算法
【MySQL从入门到精通】【高级篇】(十九)索引的分类&创建索引的三种方式&删除索引的两种方式
MySQL中的索引包括普通索引、全文索引、单列索引、多列索引和空间索引等。
200 0
【MySQL从入门到精通】【高级篇】(十九)索引的分类&创建索引的三种方式&删除索引的两种方式