跳转至

Apps#

Note

此功能仅在凯睿德制造MES的容器化安装中可用。

Apps是可包含在凯睿德制造框架/MES系统顶层的定制包。

Apps还定义要安装的自定义项,该自定义项可用于所有层(数据模型、业务逻辑、UI或分析)。

  • Apps可以通过包括实体类型、关系和表来定义自己的数据模型。可以通过添加属性来扩展现有系统实体的数据模型。
  • Apps可以通过包含自定义服务来定义自己的API。
  • Apps可以通过包括DEE操作来扩展现有服务的逻辑。
  • Apps可以通过完全自定义的页面/组件或将UI页面用作低代码UI框架来包含自己的UI。
  • Apps可以包括自己的主数据-通常包括静态配置数据,例如配置表、查找值或其他设置。

可扩展性工件可以打包并分布在部署框架包中。部署框架包是有版本控制的,可以包括它们之间的依赖关系,以实现可重用性和组合。有关更多信息,请参阅部署概述部分。

然后,系统在凯睿德制造MES的实例上部署这些包,而无需重新编译或重新打包应用程序。

Apps包格式#

与部署框架包类似,App包是压缩包,包括强制清单(称为“Manifest.xml”)文件,还可能包括其他资源文件,如图标和许可证文件。

App呈现#

App程序包强制清单列明了应用程序必需的元数据,如Id和版本,以及其他可选字段,如图像和UI入口点。

manifest.xml 文件样例:

<?xml version="1.0" encoding="utf-8"?>
<App id="Cmf.Example.EquipmentSupport"
     version="0.0.1"
     author="CMF"
     name="Equipment Support"
     description="Detailed information on equipment status"
     xmlns:metadata="urn:cmf:dp:xml:ns:app-metadata-v1">
    <metadata:Framework version="^8.3.0"/>
    <metadata:Domain name="MES"/>
    <metadata:License file="license.txt"/>
    <metadata:Image file="icon.png"/>
    <metadata:EntryPoint name="EqpSupportUIPage"/>
    <metadata:Package id="Cmf.Example.EquipmentSupport.Package" version="1.0.0"/>
</App>

字段说明:

字段 强制性 描述
id App的唯一标识符
version App版本
author App 作者
name App的友好名称,由用户界面使用,以显示更为用户友好的名称;如果未定义,将显示“id”
description 应用程序的描述,由UI显示
Framework version 凯睿德制造框架版本(已安装或将在安装过程中安装)必须满足的版本或版本范围
Domain name App的业务领域:如 MES, DataPlatform, 或 IoT
License file 包含App许可证的App程序包内文本文件的路径
Image file 应用程序包内图像文件的路径,该文件将用作UI中的应用程序图标
EntryPoint name 将用作应用程序UI中App入口点的 UI 页面名称;如果未定义,应用程序将不会显示在App页面
Package id, Package version 将要安装的部署包id和版本,包含使用应用程序所需的任何自定义项(例如,包括由“入口点名称”引用的UI页面

App安装#

Apps在环境安装或升级期间由系统安装。

与部署包类似,应用程序包必须放在其中一个包的源地址中。

要指定要安装的应用程序,必须创建一个文件,定义要安装的App列表。此文件必须放在其中一个包的源地址中。在安装过程中,系统将在包的源地址所有位置内搜索名为<SystemName>.App.json(<SystemName>具有系统名称变量的值),并相应地安装应用程序和部署包。

安装文件的格式必须类似于以下示例:

{
  "install": [
    {
      "name": "Cmf.Example.App",
      "version": "1.0.0"
    },
    {
      "name": "Cmf.Another.App",
      "version": "2.0.0"
    },
    {
      "name": "Cmf.Example.EquipmentSupport",
      "version": "0.0.1"
    }
  ]
}

包含App、部署包和定义了需要安装的App的文件的包源地址文件夹,必须具有如下所示的类似结构。

Package Source Folder Content

App程序包(上一个示例中的App.zip)必须具有如下所示的类似结构。

Package Source Folder Content

Note

每个包源地址中可能有几个这样的文件,它们都将被处理。

App包搜索位置#

系统将搜索App程序包以及<SystemName>.app.json文件,位于与自定义部署包相同的位置,并由“--packageSource”和“--packageSources”执行参数指定。T

Apps 执行#

A安装后,将列出声明入口点的应用程序,并可以使用Apps页面.

Apps管理#

Apps管理,例如列出所有已安装的应用程序(包括旧版本)并访问应用程序详细信息,可以通过Apps 管理.