项目中经常用到Excel导入一些初始化的数据,Mendix也集成了相关的功能。我们来看看Mendix是怎么简化这个复杂的功能的。
目录
1. 准备
1.1 创建测试项目
1.2 向项目中导入Excel Importer
这个包用于实现Excel数据上传配置:
(1)Excel与Model的绑定
(2)数据上传
(3) 模板设置
1.3 向项目中导入Mx Model reflection
这个包是利用反射机制实现Excel数据与Domain Model之间的数据转换解析。
1.4 用于测试的数据模型与Excel数据
2. Excel 数据上传配置
2.1 页面导航设置
以上工作完成后,跑一下程序确保不报错。
创建导航菜单,链接到相关页面。
MX Model Reflection Config ->MxModelReflection.MxObjects_Overview
Excel Template Config->ExcelImporter.ExcelImportOverview
2.2 Modules配置
点击“MX Model Reflection Config”,打开Muodles配置页面。
如下,如果Module更新了,系统识别不到相关字段,需要点击刷新按钮,重新加载Modules。
2.3 Excel 模板配置
点击“Excel Template Config”,打开Template配置页面。
配置模板名称,从哪个sheet开始读取数据
从哪一行开始读取数据 ,以及读取数据的逻辑
最后点击 “Save & Next”,跳转至如下页面,
依次配置映射字段,
注意:
Column从0开始。
必须要有一个Key键,这里用的是UserID,用于判断记录是否已经存在。
最后点击“Connect matching attributes”,如果有错,这里会有提示,根据错误修改即可。
3.Excel数据上传
3.1数据展示页创建
在上传Excel数据之前我们先做一个页面展示上传的数据。
3.2 Excel数据上传
上传,提示3条记录上传。
3.3 测试页面查看数据
大功告成!
3.4 涉及到外键数据上传
模板配置页面"Type"->Reference 依次根据需要选择。
这里有一个Attendance表,表里面有Team这张表的外键TeamCode。
Excel表直接对应TeamCode字段即可。
4.总结
需要在单独的页面中上传数据有点不太方便,后期可以根据需要整合到相关需要上传数据的页面。