Mendix Excel导出介绍

news2024/11/15 9:34:59

一、前言

之前我们聊到企业实现应用现代化是一项长期的任重道远的工作,通过Excel导入组件可以作为一个好的起点把企业的业务从线下迁移到线上,当把应用迁移之后,最终结果会有各种的报表展示,这时基于实际业务的需求,我们同样需要把这些数据通过Excel导出,比如存储归档,比如分享给别的部门的同事处理等等,那么Excel导出也是必不可少的功能。接下来让我们看看两种导出方式:通过导出到Excel按钮导出和通过Excel导出组件导出。

二、Excel导出按钮

使用 Excel 导出数据的最简单方法是使用数据网格中的“导出到 Excel”按钮。但是,这有几个限制

  • 只能导出数据网格可访问的数据。
  • 不能操纵要导出的数据。
  • 如果数据网格具有 XPath 数据源,则只能使用“导出到 Excel”按钮。

数据网格上的“导出到 Excel”按钮

  1. 打开Product Overview页面并将数据网格数据源更改为XPath。
  2. 右键单击网格控制栏并添加导出到 Excel按钮。

    Picture1.png

  3. 运行应用程序,使用MxAdmin登录,打开“产品概览”页面并单击“导出到 Excel ”按钮。
  4. 将看到正在下载一个 excel 文件。打开文件,将看到您在数据网格中看到的所有数据。(提示:如果您想导出列而不向用户显示它们,您可以使用 CSS将列设置为Display: none 。)

    Picture2.png

    Picture23.png

三、Excel导出组件

1 简

通过导出到 Excel”按钮以 Excel 格式从Mendix应用程序中的数据网格导出项目是标准的Mendix功能。但是,在需要更多自定义 Excel 文档的情况下,应用程序可以利用Mendix Marketplace内容基于可配置模板创建自定义 Excel 文档。

2 下载所需的Marketplace模

此过程所需的模块是Mx Model Reflection和Excel Exporter 。

Mx 模型反射模块使您的应用程序能够在运行时获取有关其域模型(实体和属性)和微流定义的信息。要下载模块,请执行以下步骤:

  1. 从Studio Pro中打开Mendix Marketplace
  2. 搜索关键字reflection,选择Mx Model Reflection

    Picture3.png

  3. 单击下载以将该模块包含在应用程序中。它将被导入到App Explorer中的AppMarketplace模块中。
  4. 搜索关键字Excel,选择Excel exporter ,然后将该模块下载到您的应用程序中:

    Picture4.png

根据创建应用程序时选择的布局, Studio Pro中可能会因新模块的默认布局而出现错误。要更正此问题,请打开每个有错误的页面并将布局更新为应用程序中所需的布局。

3 添加导航项以允许用户配置设

在本部分中将了解如何在应用程序的导航中添加配置 Mx 模型反射和将在应用程序中使用的 Excel 导出模板所需的页面。

  1. 在App Explorer中,转到Navigation
  2. 向导航添加一个新项目以打开页面MxObjects_Overview

    Picture5.png

  3. 将新项目添加到导航以打开页面Excel_Document_Overview

    Picture6.png

  4. 打开App Security并将这两个模块分配给 Administrator 用户角色:

    Picture7.png

4 创建输入对象实

创建一个用于导出 Excel 工作簿的实体。这将与用于填充 Excel 电子表格的数据的实体相关联。此操作指南将使用Policy实体来保存数据。

  1. 打开应用程序的域模型并添加一个实体作为“主要导出”实体,它是FileDocument的继承。
  2. 在新创建的实体与希望用作 Excel 导出基础的实体(或多个实体)之间创建关联。

    Picture8.png

5 配置Mx模型反

要运行 MxModelReflection 同步,请执行以下步骤:

  1. 运行您的应用程序。
  2. 查看应用程序。
  3. 单击MxReflection导航项以打开 MxReflection 概览页面。
  4. 选择应用需要同步的各个模块,点击Click to refresh 。
  5. 在左侧Synchronize all entities and microflows of checked modules下,点击Click to refresh 。

6 创建 Excel 导出模

Excel 导出器有许多选项,允许配置根据用户的需要简单或复杂。构建所需模板将根据要求而有所不同。模板的具体定义请参考Excel Exporter | Mendix Documentation

6.1 配置基本模板设置

要设置模板,请执行以下步骤:

  1. 运行应用程序。
  2. 查看应用程序。
  3. 单击Excel 导出器以打开导出器概览页面。
  4. 单击新建以创建新模板。
  5. 文件名(不带扩展名)配置为使用模板时的默认文件名。这是可以识别模板的名称。当模板在微流中使用时,文件名总是可以改变的。
  6. 输入对象配置为与要导出的实体关联的文件文档实体。
  7. 提供说明以识别和记录此模板的用途:

    Picture9.png

  8. 指定日期时间导出格式,该格式定义日期和时间在导出后应如何出现在 Excel 文件中。

6.2创建工作表布局

要创建工作表布局,请执行以下步骤:

  1. 在模板的工作表部分下,选择新建以创建新的工作表模板:

    Picture10.png

  2. 指定导出文件时将为工作表提供的名称

如果使用上传的 Excel 文件作为模板,将使用您的 Excel 模板文件中定义的工作表名称,而不会使用您在此处输入的名称。有关详细信息,请参阅使用上传的 Excel 文件作为模板

  1. 配置要导出的行对象并设置对模板输入对象的引用(如果使用输入对象)。此实体类型的每个对象都将保存为工作表中的一行。
  2. 配置Start retrieved data at row以设置应导出数据的序号。

此设置可能会修剪正在导出的结果集,因为导出将从该值转到数据列表的末尾

  1. 选择导出是否应仅导出不同的数据或允许重复数据
  2. 指定列默认宽度行默认高度(或将它们保留为默认值)。
  3. 指定提取是否将使用静态数据

如果使用静态数据,将在下面进行配置。

  1. 指定是否将表示要应用于导出数据的预定义样式的默认文本样式
  2. 指定默认标题文本样式是否将表示要应用于标题数据的预定义样式:

指定样式将在下面的部分中讨论。

6.4 配置动态列数据

要配置动态列数据,请执行以下步骤:

  1. 在“列数据”选项卡上,选择新建以创建新的导出列:

    Picture11.png

  2. 列号将自动设置,但可以覆盖为所需的序号。
  3. 为列定义名称。这将是导出时的列标题
  4. 指定检索类型以确定此列是属性还是引用。
  5. 指定Select 属性以标识将存储在此列中的行对象的属性。
  6. 指定列是否应生成聚合。请注意,只能聚合十进制、整数和长整数类型。

6.5 配置Sheet中的静态数据

要配置工作表中的静态数据,请执行以下步骤:

  1. 打开静态数据选项卡并选择新建以创建新的导出列。

    Picture12.png

  2. 指定应放置静态值的
  3. 名称字段中输入单元格的名称。
  4. 通过选择单元格是静态文本、对象数据还是聚合函数来指定类型。此示例使用静态文本(在选择时将名称字段更改为Excel 文本)。
  5. 指定应用于单元格的样式

6.6 配置自定义单元格格式和样式

要为单元格配置自定义格式和样式,请执行以下步骤:

  1. 返回新模板的主页,单击样式部分中的新建以创建可应用于 Excel 导出中的任何数据的新样式:

    Picture13.png

  2. 指定将应用于单元格的样式的属性。

如果您使用上传的 Excel 文件作为模板,您在此处选择的背景颜色(如果该值不是none )将覆盖模板中的背景颜色。

  1. 单击Save以使样式可用于动态列、静态列和标题。

7 通过微流调用 Excel 导出模

在应用程序中调用新创建的 Excel 导出模板。要检索模板并生成文档,请执行以下步骤:

  1. 创建一个微流,它采用需要导出的对象的入站参数,或者将该对象检索到微流中。
  2. 在微流中,检索一个对象,它是之前设置的用于导出的模板。

    Picture14.png

  3. 在微流中,调用GenerateExcelDocJava 操作(可从模块的JavaActions文件夹中获得)以将所需的对象传递给模块。

    Picture15.png

  4. 在微流中,下载生成的 FileDocument 对象。微流应与此类似:

    Picture16.png

8 运行微流

目前该应用程序现在缺少两件事:没有数据可以下载和没有办法运行微流

请参阅以下部分以添加这些缺失的内容。

8.1 创建数据

为了允许输入一些数据,需要生成一些页面,然后按照以下步骤在其中输入一些数据:

  1. 右键单击域模型中的Policy实体并选择Generate overview pages… 。
  2. 选择Policy并单击确定
  3. 通过主页或应用导航将生成的概览页面链接到应用。
  4. 运行应用程序并输入一些数据以创建策略对象。

8.2 运行微流

要运行在上面创建的微流,需要创建另一个添加到导航中的微流。这个微流应该创建一个PolicyDoc对象并使用循环将其与现有的Policy对象相关联,确保所有关联在循环之后提交,并将这个 PolicyDoc 作为参数传递给微流。这将导出与PolicyDoc关联的所有 Policy 对象。

新微流应类似于以下内容:

Picture17.png

四、应用展示

创建实体如下

Picture18.png

创建模板

Picture19.png

创建微流生成和下载Excel

Picture21.png

下载的文档如下

Picture22.png

五、参考资料

  1. Excel导出组件 Marketplace介绍https://marketplace.mendix.com/link/component/726
  2. MX Model Reflection组件MarketPlace介绍https://marketplace.mendix.com/link/component/69
  3. Excel导出具体文档参考Excel Exporter | Mendix Documentation和Export to Excel | Mendix Documentation

关于Mendix公司

Mendix公司,a Siemens business,正在迅速成为企业数字化转型的推动者。其业内领先的低代码平台和全方位的生态系统整合最先进的技术,帮助企业创造出提高互动性、简化操作和克服IT瓶颈的解决方案。Mendix公司是权威行业分析师眼中的领导者和远见者,也是一个云原生、开放、可扩展、敏捷和饱经考验的平台。从人工智能和增强现实,到智能自动化和原生移动,Mendix公司已成为数字化先行企业的骨干。Mendix公司企业低代码平台已被全球4000多家领先的公司采用。

           

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/835671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot jekins打包

新建Item 选择freestyle 配置下拉框 This project is parameterized 配置git 构建shell脚本 脚本 BUILD_IDDONTKILLME . /etc/profile export PROJ_PATHpwd export TOMCAT_APP_PATH/root/local/apache-tomcat-8.5.45 export BASE_PATH/root/localecho $PROJ_PATH echo $TO…

ESP32-C2开发板 ESP8684芯片 兼容ESP32-C3开发

C2是一个芯片采用4毫米x 4毫米封装,与272 kB内存。它运行框架,例如ESP-Jumpstart和ESP造雨者,同时它也运行ESP-IDF。ESP-IDF是Espressif面向嵌入式物联网设备的开源实时操作系统,受到了全球用户的信赖。它由支持Espressif以及所有…

IDEA的实用快捷键大全

目录 1.常规快捷键 1.1通用类 1.2注释类 1.3操作类 1.4展开与关闭 2.智能补全类快捷键 3.程序结构类快捷键 4.统一操作快捷键 1.常规快捷键 1.1通用类 像 Ctrl C 复制, Ctrl V 粘贴, Ctrl S保存文件, Ctrl X剪切,这种…

HCIP 打破BGP水平分割-反射器、联邦

打破IBGP的水平分割的条件 IBGP水平分割---避免IBGP环路---从一个IBGP邻居处学习到的路由条目不能传递给本地的其他IBGP邻居; 因为BGP可以非直连建邻,故正常一台运行了BGP协议的路由器,均存在EBGP邻居,需要从其他AS学习路由条目…

MySQL数据库如何实现AX规范

本文我们来讨论 MySQL 的 XA 规范有哪些应用相关的内容。 MySQL 为我们提供了分布式事务解决方案,在前面的内容中 聊一聊分布式事务的解决方案 提到过 binlog 的同步,其实是 MySQL XA 规范的一个应用,那么 XA 规范是如何定义的,具…

2023牛客暑期多校训练营4

A.Bobo String Construction s取全0串或者全1串,至少有一者满足题述条件 大致感受一下 随便举几个例子: t s t 0000|0000|0000 s为全0不符合,但s为全1符合 1001|00|1001 s为全0不符合,但s为全1符合 101|000000|101 s为全0或为全1均符合 所以只需判断全0串或者全1串哪个符合题述…

redis原理 3:未雨绸缪 —— 持久化

redis原理 3:未雨绸缪 —— 持久化 Redis 的数据全部在内存里,如果突然宕机,数据就会全部丢失,因此必须有一种机制来保证 Redis 的数据不会因为故障而丢失,这种机制就是 Redis 的持久化机制。 Redis 的持久化机制有两种…

超越年龄限制:保持体能与积极心态的重要性(AI)

机器人和人工智能,没有年龄限制,并且越来越强,代表了最先进的生产力方向。 AI: 机器人和人工智能的发展代表了最先进生产力的方向,它们可以帮助人们更高效地完成各种任务,从而推动经济和社会的发展。机器人…

SpringDataJPA框架使用笔记

SpringDataJPA框架使用笔记 什么是JPA jpa概念 JPA是Java中用于实现对象关系映射ORM的API标准, JPA提供了一种将JAVA对象映射到关系数据库的方式, 使开发人员可以使用面向对象的方式操作数据库,而不需要编写繁琐的SQL语句。 jpa中的一些概…

牵手科瑞物业,合合信息智能文字识别技术助力企业沉淀数据资产

名片是商务场景中信息传递的重要载体。比起传统的纸质名片,可动态化呈现个人及企业信息,洞察访客偏好的数字名片已成为企业对外展示、拓展客户的重要工具。近期,合合信息旗下名片全能王与科瑞物业达成合作。通过推动企业数字名片在科瑞物业各…

【若依管理系统】开发功能流程总结

1.在菜单管理中,新增需要创建的菜单,如图 并添加查询、新增、修改、删除等按钮和对应的权限和路径 例如如果没有添加查询按钮,那么在修改的时候,会存在报错:没有权限。上图对应后台代码 2.domain中创建设计的表结构及操…

优化全域广告投放效果的方法与技巧

好久不见!不少读者催更的《企业广告投放逻辑精讲》系列继续更新啦!感谢各位忠实读者的支持! 经过前两章的学习,想必你已经了解了广告投放的正确方式,但事实上,掌握方法只是基础,相当于你要学习…

【计算机视觉】干货分享:Segmentation model PyTorch(快速搭建图像分割网络)

一、前言 如何快速搭建图像分割网络? 要手写把backbone ,手写decoder 吗? 介绍一个分割神器,分分钟搭建一个分割网络。 仓库的地址: https://github.com/qubvel/segmentation_models.pytorch该库的主要特点是&#…

Python web实战之Django用户认证详解

关键词: Python Web 开发、Django、用户认证、实战案例 概要 今天来探讨一下 Django 的用户认证吧!在这篇文章中,我将为大家带来一些有关 Django 用户认证的最佳实践。 1. Django 用户认证 在开发 Web 应用程序时,用户认证是一个…

Android系统APP之SettingsProvider

前言 SettingsProvider顾名思义是一个提供设置数据共享的Provider,SettingsProvider和Android系统其它Provider有很多不一样的地方,如: SettingsProvider只接受int、float、string等基本类型的数据;SettingsProvider由Android系…

喜讯!箱讯AnyCase荣获“2023年度苏州市服务型制造示范平台”

近日,苏州市工业和信息化局公示了“2023年度苏州市服务型制造示范企业(平台)”名单。箱讯科技(上海)有限公司子公司苏州箱讯供应链管理有限公司荣耀上榜。 ​ 添加图片注释,不超过 140 字(可选…

IFC纹理及着色器研究

最近,yorgunkirmizi 讨论了纹理、着色器、纹理坐标以及所有此类内容在 IFC 中的工作原理。 我们在破译什么是可能的、什么是不可能的方面已经取得了一些重大进展,所以我想我应该打开这个线程,以便其他人也可以参与其中,或者至少密…

恒运资本:货币调控精准有力 8月流动性合理充裕

8月3日,中国人民银行以利率投标方式展开30亿元逆回购操作,由于当日有1140亿元逆回购到期,公开商场完成净回笼1110亿元。 专家表示,为坚持流动性合理富余,估计央即将根据流动性供求和商场利率改变,灵敏运用多…

【雕爷学编程】MicroPython动手做(39)——机器视觉之图像基础

MixPY——让爱(AI)触手可及 MixPY布局 主控芯片:K210(64位双核带硬件FPU和卷积加速器的 RISC-V CPU) 显示屏:LCD_2.8寸 320*240分辨率,支持电阻触摸 摄像头:OV2640,200W像素 扬声器&#…

阿里云平台WoSignSSL证书应用案例

沃通CA与阿里云达成合作并在阿里云平台上线WoSign品牌SSL证书。自上线以来,WoSignSSL证书成为阿里云“数字证书管理服务”热销证书产品,获得阿里云平台客户认可,助力阿里云平台政府、金融、教育、供应链、游戏等各类行业客户实现网站系统数据…