机构下的定制表格

定制表格的主要作用,是定义和收集系统外的参数数据,或者快速的数据展示,如系统外的考试成绩查询。

快速数据展示(考试成绩查询)实现思路:

  • 准备好查询表,一般为Excel文件,数据需要从第一行,第一列开始,上传到网络硬盘。
  • 在SmartERP后台,“机构”-> “机构设置”->“定制表格”->“添加”,区别于扩展表,点击“数据文件”,从网络硬盘选择上传的Excel文件。
    image.png
  • 选择“必填项”字段,作为前台查询必须提供的字段信息,可以拖动进行排序。
  • 选择“浏览”字段,作为前台查询结果显示的字段信息,可以拖动进行排序。
  • “编辑”“查询”界面定义,不仅定义在SmartERP查询数据时的显示,也是前台查询结果的显示,点击“自动填充数据”,系统会给出基本配置。
  • “查询”界面定义包括的字段,必须在“浏览”字段中全部勾选,否则程序会报错。
  • 前台页面,参考网站下的“custom_table.aspx”,通过参数 table_id=* 传递定制表格编号。TableTitle输出后台定义的标题,TableDescription 输出后台定义的“备注”,CreateSearchFields() 方法创建必填查询字段,CreateListFields() 创建列表字段,CreateListData(Container) 创建列表数据,其他样式控制,通过自定义样式控制即可。

在SmartERP内扩展表,需要获得管理员支持,操作步骤如下:

一、按照客户需求创建表

  1. 必须定义关键字段,可以为整数或者字符串类型,长度不要超过30个字符。
  2. 必须定义标签字段,显示的名字或者标题。
  3. 表格名称,请按照 e_custom(机构编号)_*,如:e_custom1_product_color。
  4. 授予 SmartERP 运行账号对该表的查询、添加、修改和删除权限: GRANT SELECT, INSERT, UPDATE, DELETE ON [table] TO [user]

二、手工写入配置

  1. 向 e_organization_custom_table 表中写入该定制表格的以下五个字段的内容,其他内容通过界面配置。
  2. 字段 organization_id: 该扩展表所属机构编号。
  3. 字段 title: 描述该定制表格的内容。
  4. 字段 table_name: 表格名称。
  5. 字段 id_field: 定制表格的唯一编号字段名。
  6. 字段 label_field: 定制表格的标签字段名。

三、界面配置

  1. 配置权限组机构下的 浏览定制表格可以查询和浏览定制表格数据;修改定制表格可以添加、修改、删除定制表格数据。
  2. 配置权限组系统下的 修改参数可以修改定制表格的界面定义,为了防止被随意改动,一般不允许普通用户随意操作。
  3. 进入系统 机构和用户下的 定制表格模块下,进行相关操作。
  4. 在修改定制表格时,点击提交按钮左侧的 自动填充数据可以快速获得界面定义的模板数据,然后在此基础上进行修改即可。
  5. 对于一个只有编号(id,自动编号)和名称(name)两列的扩展表,界面配置如下:
  6. 查询(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>
  7. 添加: <root><item>
    <display_id>0</display_id>
    <name>name</name>
    <description>名称</description>
    <required>true</required>
    <max_length>128</max_length>
      </item></root>
  8. 批量添加<columns>
      <column dataField="name" headerText="名称" editable="true"/>
    </columns>
  9. 如果为空,按照添加定义来生成界面,如果有不需要修改的内容,参照添加定义则可。

四、应用

  1. 在扩展属性中,可以通过 tiplist 引用该数据,在配置时,数据类型和编号字段id的数据类型一样,存储过程设置为:epd_list_custom_table,在参数处配置:table_id=***,***为定制表格编号。
  2. 通过 ep_search_configurations  读取列表项目是,可以通过 t:***,***为定制表格编号,该方法适合读取小数据量的列表。