定制表格的主要作用,是定义和收集系统外的参数数据,或者快速的数据展示,如系统外的考试成绩查询。
快速数据展示(考试成绩查询)实现思路:
- 准备好查询表,一般为Excel文件,数据需要从第一行,第一列开始,上传到网络硬盘。
- 在SmartERP后台,“机构”-> “机构设置”->“定制表格”->“添加”,区别于扩展表,点击“数据文件”,从网络硬盘选择上传的Excel文件。
- 选择“必填项”字段,作为前台查询必须提供的字段信息,可以拖动进行排序。
- 选择“浏览”字段,作为前台查询结果显示的字段信息,可以拖动进行排序。
- “编辑”“查询”界面定义,不仅定义在SmartERP查询数据时的显示,也是前台查询结果的显示,点击“自动填充数据”,系统会给出基本配置。
- “查询”界面定义包括的字段,必须在“浏览”字段中全部勾选,否则程序会报错。
- 前台页面,参考网站下的“custom_table.aspx”,通过参数 table_id=* 传递定制表格编号。TableTitle输出后台定义的标题,TableDescription 输出后台定义的“备注”,CreateSearchFields() 方法创建必填查询字段,CreateListFields() 创建列表字段,CreateListData(Container) 创建列表数据,其他样式控制,通过自定义样式控制即可。
在SmartERP内扩展表,需要获得管理员支持,操作步骤如下:
一、按照客户需求创建表
- 必须定义关键字段,可以为整数或者字符串类型,长度不要超过30个字符。
- 必须定义标签字段,显示的名字或者标题。
- 表格名称,请按照 e_custom(机构编号)_*,如:e_custom1_product_color。
- 授予 SmartERP 运行账号对该表的查询、添加、修改和删除权限: GRANT SELECT, INSERT, UPDATE, DELETE ON [table] TO [user]
二、手工写入配置
- 向 e_organization_custom_table 表中写入该定制表格的以下五个字段的内容,其他内容通过界面配置。
- 字段 organization_id: 该扩展表所属机构编号。
- 字段 title: 描述该定制表格的内容。
- 字段 table_name: 表格名称。
- 字段 id_field: 定制表格的唯一编号字段名。
- 字段 label_field: 定制表格的标签字段名。
三、界面配置
- 配置权限组机构下的 浏览定制表格可以查询和浏览定制表格数据;修改定制表格可以添加、修改、删除定制表格数据。
- 配置权限组系统下的 修改参数可以修改定制表格的界面定义,为了防止被随意改动,一般不允许普通用户随意操作。
- 进入系统 机构和用户下的 定制表格模块下,进行相关操作。
- 在修改定制表格时,点击提交按钮左侧的 自动填充数据可以快速获得界面定义的模板数据,然后在此基础上进行修改即可。
- 对于一个只有编号(id,自动编号)和名称(name)两列的扩展表,界面配置如下:
- 查询(conditions定义查询条件,name_part表示名称的模糊查询;columns定义显示列):<root>
<conditions>
<item>
<display_id>0</display_id>
<name>id</name>
<description>编号</description>
<max_length>10</max_length>
</item>
<item>
<display_id>0</display_id>
<name>name_part</name>
<description>名称</description>
<max_length>60</max_length>
</item>
</conditions>
<columns>
<column dataField="id" width="90" itemRenderer="com.etsoo.renderers.CenterGridItemRenderer"/>
<column dataField="name"/>
</columns>
</root> - 添加: <root><item>
<display_id>0</display_id>
<name>name</name>
<description>名称</description>
<required>true</required>
<max_length>128</max_length>
</item></root> - 批量添加<columns>
<column dataField="name" headerText="名称" editable="true"/>
</columns> - 如果为空,按照添加定义来生成界面,如果有不需要修改的内容,参照添加定义则可。
四、应用
- 在扩展属性中,可以通过 tiplist 引用该数据,在配置时,数据类型和编号字段id的数据类型一样,存储过程设置为:epd_list_custom_table,在参数处配置:table_id=***,***为定制表格编号。
- 通过 ep_search_configurations 读取列表项目是,可以通过 t:***,***为定制表格编号,该方法适合读取小数据量的列表。