华为云用户手册
-
用户任务 用户任务用来表示,业务流程中由用户参与完成的工作。当引擎处理到该节点时,给指定的用户(参与者)或者一组用户(如某泳道的工作队列)创建待处理的任务项,等待用户的处理。 用户任务配置:在用户任务配置界面,配置任务接收人和活动界面。 图1 用户任务配置页面 任务标题:显示在任务界面的标题。 任务描述:显示在任务界面的任务描述。 优先级:在下拉框中,选择任务的优先级,如正常、高和低等。 渲染类型:用户处理的界面,可以是标准页面、标准表单或高级页面。当配置为标准表单时,需要配置用户可执行的动作(例如同意或拒绝)。如何创建标准表单,请参见创建标准表单。 类型:待处理任务的用户类型。 当前泳道:设置为“当前泳道”,将泳道和工作队列绑定,则处于该泳道的用户任务图元,由该泳道对应工作队列中的成员去处理。工作队列中的成员可以是多个用户、业务用户、公共组中成员、角色或带有下属的角色中成员。 流程发起人的主管:设置为“流程发起人的主管”时,需要配置“部门经理层级”,即主管所属的部门。 名称和表达式:设置为“名称和表达式”时,可以通过“表达式”、“用户”和“组”三种方式分配该任务的参与者。这时,泳道中的工作队列配置不起作用。 基于规则:当配置为该类型时,需要配置具体的“规则”。 参与者:当类型为“名称和表达式”时,该参数才会显示。参与者类型可以是用户、业务用户、组或者表达式。 用户:在“取值”中,选择接收该任务的用户,不包括业务用户。 业务用户:在“取值”中,选择接收该任务的业务用户。 组:在“取值”中选择公共组,则该任务由公共组的成员去处理。公共组的成员可以是用户、业务用户、其他公共组的成员、角色或带有下属的角色中成员。如何创建公共组,请参见管理应用中的公共组。 表达式:将参与者类型配置为“表达式”时,实际是一个变量。在“取值”中,可设置变量的值,变量值支持以下几种: 用户的用户名或用户ID,其中用户名前需要加“user:”前缀。 业务用户的用户名或业务用户ID,其中业务用户名前需要加“puser:”前缀。 公共组名称或者公共组ID,其中公共组名称前需要加“group:”前缀。 角色名称或者角色ID,其中角色名称前需要加“role:”前缀。 例如,分配任务接受者为用户名为“PortalUser1”的业务用户、用户名为“User1”的用户、用户ID为“10XX000000XXXXXXX”的用户、公共组名称为“group1”和角色名称为“role1”的合集,则取值为“"puser:PortalUser1,user:User1,10XX000000XXXXXXX,group:group1,role:role1"”。多个取值之间用英文逗号“,”分隔,取值外加英文双引号。 规则:接收人满足的规则。类型为“基于规则”时,该参数才会显示。 审批类型:选择审批的类型。 如果选择了“或签:任一个分配人均可审批”,则只需要接收人中的某一用户完成了审批,即可推动任务流程,走向下一个任务。 如果选择了“会签:每个分配人都需要审批”,则需要接收人中的用户群体满足您设置的审批条件才可推动任务流程,走向下一个任务。 如果审批人中包含群组,则群组中任意一人审批即认为该群组已经审批。当审批类型为“会签:每个分配人都需要审批”时,该参数才会显示。 勾选,表示如果审批人中包含群组,则群组中任意一人第一个审批即认为该群组已经审批,不需要其他用户再进行审批,该群组只算一个有效审批人数。 不勾选,表示如果审批人中包含群组,则群组中每个人都需要审批,都计算在有效审批人数内。 投票结果门槛:该参数取值表示百分比,如果达到设置的百分比,审批结果中最高的得票结果将覆盖 “$BP.TaskOutcome”系统变量,即将执行最高得票的审批结果。 默认结果:审批百分比(已审批的人数/总的有效审批人数)未达到“投票结果门槛”百分比时,默认的审批结果。当审批类型为“会签:每个分配人都需要审批”时,该参数才会显示。 结果触发方式:当审批类型为“会签:每个分配人都需要审批”时,该参数才会显示。 当最小百分比满足时,立即触发投票结果。 等待所有投票完成,触发投票结果。 审批动作:设定一些候选的动作,作为默认审批结果。 当存在以下动作时立即终止任务:当存在设定的某个或者某些动作时,立即终止任务。 自动审批:AstroZero支持用户任务自动审批功能,例如设置“主管审核”任务自动审批。在用户任务配置界面,指定该任务具体接收人,可使用表达式的形式将任务指派给某一用户,在自动审批中进行设置。 图2 自动审批设置 流程触发人自动通过:如果勾选该选项,任务接收人是流程触发人时,该用户任务会被自动审批。 已审批过该流程的审批人自动通过:如果勾选该选项,任务接收人在当前工作流实例中已审批过其他用户任务,则该用户任务会被自动审批。 当任务接收人设置为“当前泳道”对应的工作队列或用户组时,将无法使用自动审批功能。只有任务接收人设置为某一用户时,才可以进行自动审批。 自动审批时默认选择的动作:勾选自动审批时,可以设置自动审批默认选择的动作。 动作配置:为该用户任务配置前置或者后置动作。 图3 动作配置 前置动作:流程执行该用户任务前执行的动作。 触发条件:触发该动作的条件表达式。 动作类型:满足触发条件时,执行的具体动作。 通知经理:发邮件通知经理。 通知分配人:发邮件通知任务分配人。 调用服务编排:调用已启用的服务编排。 调用脚本:调用已激活的脚本。 发送事件:发送某一事件。 转移:将该用户任务转移给其他用户或工作队列中的用户处理。 设置状态:设置该用户任务的状态。 完成任务:完成某一任务,超期会自动完成任务。 后置动作:流程执行该用户任务后,执行的动作,请参考“前置动作”进行配置。 数据映射:对该用户任务的输入输出参数,进行数据映射。 图4 数据映射 SLA:为用户任务设置定时器,时间逾期可增加紧急程度并执行相应动作。 图5 启用SLA定期器 开始时间:定时器的开始时间。 任务创建后:设置任务创建的时间作为定时器开始的时间。 由变量指定:通过指定时间变量,来确定开始时间。 由表达式指定:通过表达式指定开始时间,例如支持特定时间的相对时间,设置为“STRING2TIME('yyyy-MM-dd hh:mm:ss.S', {!variable1})”。动态指定时间的相对时间,设置为“TIMEADD({!$Flow.CurrentDateTime}, 100)”。 目标期限:任务在目标期限内且即将过期时,满足触发条件后触发一个指定的动作。 截止限期:任务过期,满足触发条件后触发一个指定的动作。 紧急程度:定时器的紧急程度。 动作:时间逾期后执行的相应动作。单击“添加”,可以新增动作。 触发条件:触发该动作的条件表达式。 动作类型:满足触发条件时,执行的具体动作。 通知经理:发邮件通知经理。 通知分配人:发邮件通知任务分配人。 调用服务编排:调用已启用的服务编排。 调用脚本:调用已激活的脚本。 发送事件:发送某一事件。 转移:将该用户任务转移给其他用户或工作队列中的用户处理。 设置状态:设置该用户任务的状态。 赋值:给用户的任务赋值。 完成任务:完成某一任务,超期会自动完成任务。
-
记录创建 “记录创建”图元用于新增平台对象的实例记录,类似于数据库中的INSERT INTO命令。系统提供了以下两种模式,新增对象实例记录: 对象模式:需要先单击,在“对象变量”中定义一个对象变量或者对象变量数组,将该对象变量或对象变量数组拖拽到“变量”输入框中,使用该对象变量或对象变量数组的值,创建实例记录。 图6 对象模式创建 条件模式:需要先指定对象并为对象的字段赋值,来创建记录。如下图所示,为“Account”对象新增实例记录,在变量“id”中保存新建的记录ID。 图7 条件模式创建
-
记录更新 “记录更新”图元用于更新平台对象的实例记录,类似于数据库中的UPDATE命令。系统提供了以下两种模式,更新对象实例记录: 对象模式:需要先单击,在“对象变量”中定义一个对象变量或对象变量数组,并将该对象变量或对象变量数组拖拽到“变量”输入框中,即可根据对象变量中的记录ID将对象变量更新到数据库中,更新的值来源于对象变量中的值。如下图所示,根据对象变量数组“account”中的记录ID,将对象变量中的值更新到数据库中。 图10 对象模式 条件模式:需要指定对象并在条件中设置指定对象部分字段的值,在赋值中设置需要更新的目标字段及更新值,最后根据条件查找符合条件的对象记录并将赋值中的值更新到数据库中。 图11 条件模式
-
调用脚本 当流程到达“调用脚本”任务时,系统自动执行脚本,执行完成后继续执行后续路线。使用该图元时,需要选择具体调用的脚本,配置输入输出参数。 图14 调用脚本配置页面 工作流中只允许调用当前应用工程下的资源(例如脚本、服务编排),即调用脚本中可供选择的脚本和该工作流都处于同一应用下。 例如,工作流A中需要调用脚本B,请确保A和B处于同一应用中。如果需要调用的资源不在同一应用中,请在工作流A所在的应用中新建脚本B,或选择“使用已有脚本”导入脚本B。再在工作流A中,使用“调用脚本”图元调用该脚本。 图15 使用已有脚本
-
了解AstroZero中预置权限 在AstroZero中,通过权限配置(Profile)来控制用户、业务用户等的操作权限。AstroZero当前预置了如下几种Profile标准配置文件: System Administrator Profile:系统管理员,拥有AstroZero全部权限。 Developer Profile:开发者权限,一般给用户使用,拥有此权限的用户可以在AstroZero进行开发,例如新增一个对象、为对象增加一个字段、新增一个流程等。 Portal User Profile:业务用户的权限,一般给业务用户使用,拥有此权限的业务用户可以登录和使用AstroZero中创建的应用。 Anonymous User Profile:游客用户的访问权限,无需登录即可访问AstroZero中创建的应用。 Standard User Profile:运行态权限,开通AstroZero服务时自带的权限,拥有这个权限可以运行系统中的流程、对系统已有对象进行记录的增删改查操作,但没有开发权限,如新增一个对象或新增一个流程等。 NoCode Developer Profile:零代码应用开发权限,只有运行环境才会预置该权限。 NoCode Manager Profile:零代码应用数据管理权限,只有运行环境才会预置该权限。 一种权限配置可以分配给多个用户,但每个用户只能属于某一个权限配置。权限配置(Profile)中,各权限项详细介绍,请参见表1。 除了默认的权限配置外,用户还可以在默认权限配置的基础上,自定义权限配置,具体操作请参见创建AstroZero扩展权限集。 图6 用户开发者权限 图7 业务用户权限 图8 游客用户访问权限 表1 权限项说明 权限项 权限项说明 查看系统元数据 用户访问元数据的必要权限,仅用于界面提示作用,无法取消。 开发应用 系统最高的权限,拥有此权限可定制系统所有可定制的地方,默认拥有其他权限。 查看所有用户 查看用户列表和用户详情的权限。 查看角色 查看角色列表和角色详情的权限。 查看权限管理 查看权限配置列表和权限配置详情的权限。 查看扩展权限集 查看扩展权限集列表和扩展权限集详情的权限。 查看组 查看组列表和查看组详情的权限。 查看队列 查看队列列表和查看队列详情的权限。 查看业务用户 查看业务用户列表和查看业务用户详情的权限。 查看业务权限凭证 查看业务权限凭证列表和查看业务权限凭证详情的权限。 查看告警 查看告警列表和告警详情的权限。 管理告警 新增、修改告警定义的权限。 查看BPM 查看BPM定义列表和详情的权限,包括BPM关联的决策表、触发器等。 管理BPM实例 修改BPM实例详情的权限。 查看服务编排 查看服务编排定义列表和详情的权限。 查看脚本 查看脚本列表和详情的权限。 查看定时任务 查看定时任务列表和详情的权限。 查看报表 查看报表列表和详情的权限。 运行报表 查看报表运行实例的权限。 查看仪表板 查看仪表板列表和详情的权限。 运行仪表板 查看仪表板运行实例的权限。 查看所有数据 查看所有数据的权限,勾选此选项后,会忽略单个对象的权限。 运行SQL 执行SQL的权限。 查看加密数据 查看加密数据明文的权限。 查看租户跟踪日志 查看租户跟踪日志的权限。 查看敏感隐私数据 控制是否允许,以数据对象的形式,查看部分敏感数据对象的权限,例如权限配置、连接器定义等。 管理数据 在数据控制台操作任意对象的权限。 管理公告 控制开发者在工作台页面,是否有管理公告(新增、删除和编辑)的权限。
-
用户(User) 用户是由AstroZero系统管理员添加并赋予Developer Profile权限的 IAM 用户或 WeLink 用户,可以使用AstroZero开发应用,即应用的开发者。更多关于用户和业务用户的介绍,可参见图解AstroZero中用户那些事。 将IAM用户添加到AstroZero并赋予Developer Profile权限时,请确保待添加的IAM用户没有被添加到任何用户组或者添加到拥有Astro Zero Instance ViewAccess权限的用户组中。 图4 为用户添加开发者权限 在AstroZero中,用户可以执行如下操作: 使用AstroZero创建应用 使用AstroZero开发应用后端 使用AstroZero开发应用前端 使用AstroZero进行应用集成开发 使用AstroZero对应用进行个性化设置 发布并部署AstroZero开发的应用
-
操作场景 AstroZero低代码平台为组件设计了事件-动作机制,实现组件与组件、组件与页面之间的交互。 事件是应用在运行时,页面内发生的动作或者用户执行的操作(例如单击组件、组件加载等)。 动作是响应事件后,按照设定的方式,对事件做出回应(如页面跳转)。例如,用户在网页上单击一个按钮,通过显示一个信息框来响应这个动作。 本章节将向您介绍AstroZero低代码平台预置的常用事件及动作,以及在高级页面中如何为组件配置事件。
-
操作场景 当AstroZero低代码平台提供的预置高级组件无法满足您的开发需求时,开发者可以自定义组件包,并上传到AstroZero中。自定义组件包上传到AstroZero中后,可在高级页面中使用。自定义组件的开发流程如下: 下载组件模板 将AstroZero系统预置的模板到本地。 开发自定义组件 基于下载的模板,在本地根据自身业务需求开发组件。 上传组件到组件库并使用组件 将开发完的自定义组件上传到组件库,并在高级页面中使用。
-
异常处理 当数据源类型选择ROMA Connect时,配置完数据接入后,MQS平台收不到消息,业务设置的EventTrigger没有拉起服务编排。 问题现象:ROMA Connect消息轨迹是灰色的,可能是MQS服务地址配置错误或没有配置。 解决方法:检查iotgateway容器的“roma-server”参数是否配置。若没有配置,请配置该参数或联系运维添加正确的“roma-server”地址(端口为“9776”),确认网络正常以及MQS服务器正常,兼容客户端版本。 问题现象:ROMA Connect消息轨迹是红色的,可能是MQS的source定义错误。 解决方法:在ROMA Connect平台,查看应用ID和对应的密钥是否一致,查看该应用是否订阅了主题。配置错误时,会导致鉴权失败。 问题现象:ROMA Connect消息轨迹是绿色的, 表示MQS接收成功,并成功发送到Kafka,AstroZero也收到了对应的消息,但是可能没成功拉起服务编排。 解决方法:查看iotgateway的“flume.log”日志,确认MQS是否接收成功。通过“kafka-console-cumer”确认消息是否转换成功,通过AstroZero的日志跟踪功能或AstroZero后台日志确认(日志关键字为“OnEvent”)平台是否收到事件。如果没有对应的服务编排或事件日志,可以确定服务编排未拉起,请联系华为工程师解决。
-
使用预置模板创建标准页面 参考登录AstroZero新版应用设计器中操作,进入应用设计器。 在应用设计器的左侧导航栏中,选择“界面”。 单击“页面”后的“+”,在添加标准页面中选中“基于模板”。 设置页面的标签和名称,单击“下一步”。 图1 设置标准页面基本信息 表1 标准页面参数说明 参数 说明 标签 输入标准页面的标签名,用于在页面显示,创建后可修改。 取值范围:1~64个字符。 名称 输入标准页面的名称,名称是标准页面在系统中的唯一标识,创建后不可修改。命名要求如下: 长度不能超过64个字符,包括前缀命名空间的长度。 说明: 名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。 必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。 在选择模板页面,选中所需的模板,单击“添加”。 图2 选择所需模板 单击页面上方的,保存标准页面。 保存成功后,单击,预览标准页面。 您可以基于模板,进行二次开发。
-
使用自定义模板创建标准页面 参考登录AstroZero新版应用设计器中操作,进入应用设计器。 在应用设计器的左侧导航栏中,选择“界面”。 单击“页面”后的“+”,在添加标准页面中选中“基于模板”。 设置页面的标签和名称,单击“下一步”。 表2 标准页面参数说明 参数 说明 标签 输入标准页面的标签名,用于在页面显示,创建后可修改。 取值范围:1~64个字符。 名称 输入标准页面的名称,名称是标准页面在系统中的唯一标识,创建后不可修改。命名要求如下: 长度不能超过64个字符,包括前缀命名空间的长度。 说明: 名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。 必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。 在“我的模板”中,选中自定义模板,单击“添加”。 图3 选中自定义模板 单击页面上方的,保存标准页面。 保存成功后,单击,预览标准页面。 您也可以基于模板,进行二次开发。
-
操作场景 系统预置了一些典型场景的标准页面模板,如果业务场景贴合已有模板,建议选择“基于模板”来快速创建标准页面。页面模板包括预置模板(通用模板)和自定义模板两大类。 预置模板(通用模板) 基础表单:基本的表单页面。 多区域表单:有间隔区域的多区域表单页面。 基础表格:单张表生成表格模板,包含增、删、改、查。 基础详情页面:基础的详情页面。 自定义模板(我的模板) 用户自定义的页面模板,开发好页面后,单击上方的另存为,即可创建自定义页面模板。创建后,该开发者用户、注册AstroZero的账号、账号下其他AstroZero用户都可直接使用该页面模板来创建标准页面。
-
基本属性 流式布局 容器组件默认弹性布局未开启,处于流式布局的状态,如图5所示。 图5 流式布局 在流式布局中,组件默认为块级(Block)元素,即不论组件宽度是多少,默认占据全部父级元素的宽度。如图6所示,向画布中拖拽一个“容器”组件,再向“容器”组件中拖入两个“标题”组件,“标题”组件为块级元素,默认占据全部父级元素宽度,即外层“容器”的宽度,第二个“标题”组件会在第一个“标题”组件的下方。 图6 流式布局中组件为块级元素 流式布局中,组件由上至下依次排布,可以通过“水平对齐方式”对容器内组件进行水平位置调整,如图7、图8所示。 图7 居中水平对齐 图8 靠右水平对齐 弹性布局 将“容器”组件属性面板中的“弹性布局”开启后,布局由流式布局切换到弹性布局。在弹性布局的属性配置中,会出现“排列方向”、“水平对齐方式”和“垂直对齐方式”,如图9所示。 图9 弹性布局 为了方便说明弹性布局,向画布中拖拽一个“容器”组件,再向“容器”组件中拖入五个“容器”组件,将每个“容器”组件的宽度和高度设置为100px,并为每个“容器”组件设置不同的背景颜色,在每个“容器”中加入一个“标题”组件,分别显示A、B、C、D、E。 默认弹性布局下,排列方向为“行”,水平对齐方式为“起点对齐”,垂直对齐方式为“起点对齐”,如图10所示。 图10 弹性布局默认效果 排列方向属性决定了容器内组件的排列方向。当排列方向为“行”时,容器内组件从左到右排布。排列方向为“列”时,容器内组件从上到下排布,如图11。 图11 排列方向“列” 水平排列方式属性,决定了容器主轴方向排列方式。当容器排列方向为“行”时,水平排列方式属性作用于水平方向。当容器排列方向为“列”时,水平排列方式属性作用于垂直方向。排列方向为行时起点为左,水平对齐方式选择“中间对齐”和“终点对齐”时,如图12、图13所示。 图12 水平对齐方式选择“中间对齐” 图13 水平对齐方式选择“终点对齐” 垂直排列方式属性决定了容器交叉轴方向排列方式。当容器排列方向为“行”时,垂直排列方式属性作用于垂直方向。容器排列方向为“列”时,垂直排列方式属性作用于水平方向。当容器排列方向为行时起点为上,垂直对齐方式选择“中间对齐”和“终点对齐”时,如图14、图15所示。 图14 垂直对齐方式选择“中间对齐” 图15 垂直对齐方式选择“终点对齐” 通过对弹性布局属性的不同组合配置,实现用户想要实现的布局效果。例如,将排列方向设置为“行”,水平对齐方式和垂直对齐方式设置成“中间对齐”,实现居中布局的效果,如图16所示。 图16 弹性布局实现居中
-
数据绑定 将容器组件的某个属性,如隐藏、样式、弹性布局等与具体的模型字段相绑定,绑定后组件的属性随模型字段的值变化而变化,类似Vue的v-bind。 在“数据绑定”中,单击“属性值绑定”后的“+”。 图2 单击添加图标 在“属性”下拉框中,选择容器的某个属性。 在模型字段中,单击,进入选择模型页面。 图3 选择设置图标 单击“新增模型”,进入新增模型页面。 设置模型名称与来源,单击“下一步”。 图4 定义模型 AstroZero支持自定义、对象、服务和事件四类模型,每类模型都包含参数定义和方法定义。方法是在模型上定义的API,通常会在前台组件关联的事件脚本(例如页面加载事件、鼠标单击事件)中调用这些API,以实现某些功能。 表1 模型来源说明 分类 模型说明 模型参数的定义 模型方法的定义 API调用方法 自定义 开发者自行定义的模型。 由开发者自定义,可以添加子节点。 开发者自定义方法。 $model.ref("modelName").actionName(); 对象 由Object对象表映射生成,关于对象模型的详细介绍,请参见对象。 系统自动获取Object所有的字段,开发者可以从中选择部分字段作为参数。 系统自动生成查询、保存、删除和统计四个方法。 $model.ref("modelName").query(param); $model.ref("modelName").save(); $model.ref("modelName").delete(); $model.ref("modelName").count(); 服务 服务模型由后台服务映射生成,当前支持与服务编排或脚本映射。关于服务模型的详细介绍,请参见服务编排和脚本。 参数根据后台服务的入参、出参,映射生成为inputParam和outputParam节点。 系统自动生成run方法 ,用于执行模型关联的服务编排或脚本。 $model.ref("modelName").run(); 事件 事件模型由后台事件的字段映射生成,并且支持websocket刷新模型数据。 参数根据后台事件的字段映射生成。 直接使用 直接使用 除了在模型中定义的方法,低代码平台还提供了如下标准API,适用于所有的模型。 获取模型数据:$model.ref("modelName").getData(); 设置模型数据:$model.ref("modelName").setData(); 设置模型字段值:$model.ref("modelName").setValue(key,value); 在新建模型“设置”页面,执行如下操作。 如果上一步来源选择“自定义”,需要添加子节点自定义参数及类型。 如果上一步来源选择“对象”,需要配置模型关联的对象以及字段。 如果上一步来源选择“服务”,需要配置模型关联的后台服务,可以是脚本、服务编排或者公共接口。 如果上一步来源选择“事件”,需要配置模型关联的事件以及事件字段。 单击“下一步”,设置方法。 方法一般无需添加,如需添加或修改,可参考对象和服务默认生成的方法。 设置完成后,单击“确定”。
-
创建自定义事件 参考登录AstroZero新版应用设计器中操作,登录应用设计器。 在左侧导航栏中,选择“数据”。 (可选)单击事件后的,为事件添加目录。 事件默认存放在根目录下,在创建事件前,您可以先创建事件存放的目录,也可以在事件创建后将其拖拽到指定目录。 将鼠标放在已创建的事件目录上,单击,进入添加事件页面。 如果未创建事件目录,请直接单击事件后的,进入添加事件页面 选择“创建新事件”,设置基本信息,单击“添加”。 图1 添加事件 表1 新建事件参数说明 参数 说明 标签 新建事件的标签名,用于在页面展示。 取值范围:1~64个字符。 名称 输入事件的名称,名称是事件在系统中的唯一标识,创建后不可修改。命名要求如下: 长度不能超过64个字符,包括前缀命名空间和后缀的长度。 说明: 标识前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。 名称必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。 描述 请根据需要在文本框中,输入对该事件的描述信息。 取值范围:1~255个字符。 如果系统中已有事件,可选择“导入已有事件”,基于选中的事件,添加一个新事件。 图2 导入事件 在事件详情页面的“自定义参数”中,新增自定义参数。 自定义参数用于记录有意义的事件状态变化,可以根据需要自行创建。例如,在本章节中创建的是记录应聘者是否被录用状态变化的事件,需要新增应聘者姓名“EmployName”和招聘结果“Result”两个参数字段。 在自定义参数中,单击“新建”,进入新增参数页面。 标签和名称设置为“EmployName”,字段类型选择“文本”,单击“保存”。 图3 设置参数 表2 新建EmployName参数说明 参数 说明 标签 新建参数的标签名,用于在页面中展示。 取值范围:1~80个字符。 名称 新增参数在系统中的唯一标识,创建后不可修改。要求如下: 长度范围为1~64个字符。 名称必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以单下划线结尾。 字段类型 请在下拉列表中,选择新建参数的字段类型,支持数字、日期、日期/时间、布尔和文本。 描述 请根据需要,在文本框中输入对该参数的描述信息。 取值范围:1~255个字符。 是否必填 参数是否必填,勾选后,表示该参数为必填字段。 默认为不勾选,即该参数为非必填参数。 参考上述操作,新增标签和名称为“Result”,字段类型为“布尔”的“Result”参数。 图4 新建Result参数 图5 自定义参数列表 在“基本信息”页签,单击“启用”,启用该事件。 事件启用后,才能在服务编排、工作流等中使用,否则选择不到该事件。
-
常见问题 是否拥有执行触发器设定的操作权限,取决于触发器的创建人还是触发人? 回答:是否有执行触发器设定的操作权限,取决于触发者本人是否有相关权限,和触发器创建人无关。例如,某个触发器关联了对象“D__ CS T”,触发类型是“插入或更新记录时”,触发时执行事件C,即对象“D__CST”数据有新增或更新时,会触发该触发器,从而执行事件C。用户A是触发器的创建人,没有对象“D__CST”的操作权限和事件C的执行权限,用户B有“D__CST”的操作权限和事件C的执行权限,当用户B更新“D__CST”对象数据时,会触发该触发器,执行事件C。
-
创建触发器 参考登录AstroZero新版应用设计器中操作,登录应用设计器。 在左侧导航栏中,单击“逻辑”。 (可选)单击触发器后的,为触发器添加目录。 触发器默认存放在根目录下,在创建触发器前,您可以先创建触发器存放的目录,也可以在触发器创建后将其拖拽到指定目录。 将鼠标放在已创建的触发器目录上,单击,进入增加触发器页面。 如果未创建触发器目录,请直接单击触发器后的,进入增加触发器页面。 设置触发的对象、标签、名称和触发类型,单击“添加”,即可进入触发器编辑页面。 图1 创建一个新的触发器 表1 新建触发器参数说明 参数 说明 对象 在下拉框中,选择关联的对象,支持选择当前应用中已有的对象,或其他应用中创建的对象。 标签 输入触发器的标签,用于在页面展示,创建后可修改。 取值范围:1~64个字符。 名称 输入触发器的名称。名称是触发器在系统中的唯一标识,系统根据标签取值自动生成,创建后不可修改。命名要求如下: 长度不能超过64个字符,包括前缀命名空间的长度。 说明: 名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。 必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。 描述 根据实际需求,在输入框中输入触发器的描述信息。 取值范围:1~255个字符。 触发类型 在下拉框中,选择触发器的启动类型。 仅在插入记录时:当系统创建某条记录时。 仅在更新记录时:当系统更新某条记录时。 插入或更新记录时:当系统创建或更新某条记录时。 被别的触发器调用时:被其他触发器所调用时。 收到平台事件时:被事件(event)触发时。选中该条件时,请在“事件”中配置具体事件。 单击“添加条件”,设置规则条件,并单击“保存”。 图2 创建规则条件 条件名称:新建条件规则的名称。 执行操作条件:进入该条件规则的条件。例如,设置为“当条件满足时”。 设置条件:“字段”配置为“name”,“操作符”配置为“等于”,“类型”配置为“常量”,“值”配置为“"zhangsan"”。 单击“添加操作”,设置满足规则条件后执行的动作,单击“保存”。 图3 创建动作 操作类型:设置动作类型,例如设置为“邮件告警”。 操作名称:新建动作的名称。 电子邮件告警:选择配置好的邮件告警。 单击触发器编辑页面上方的,启用触发器。 结果验证。 基于“Employee__CST”对象,创建一条记录,对象“name”字段取值为“zhangsan”。用户“test123@qq.com”成功收到邮件通知,表明触发器创建成功。
-
步骤2 创建WebSocketAlarmFlow告警服务编排 创建WebSocketAlarmFlow告警编排以触发事件,并在服务编排中配置全局变量和系统(日期/时间)变量为事件传递参数。 如果想快速了解和验证WebSocket使用,可不必创建WebSocketAlarmFlow告警服务编排,采用消息事件的测试功能进行简单验证。您可以直接跳过该步骤,直接执行步骤3 开发alarmDisplayWidget告警展示组件,并在方法一:直接触发事件验证中采用方法1(直接触发事件验证)进行效果验证。 创建编排。 参考登录AstroZero新版应用设计器中操作,登录应用设计器。 在左侧导航栏中,选择“逻辑”。 单击编排的,进入添加服务编排。 选择“创建一个新的服务编排”,输入标签“WebSocketAlarmFlow”,单击“添加”。 单击名称对应的输入框,系统会根据标签自动生成名称。 图5 创建服务编排WebSocketAlarmFlow 在服务编排画布左侧,单击“基本”,将“发送事件”图元拖入画布中。 图6 拖入“发送事件”图元 添加添服务编排变量。 选中“发送事件”图元,单击画布右侧。 单击“全局上下文”,进入上下文页面。 单击“变量”后的,添加表4中变量。 图7 配置全局变量 表4 告警服务编排的变量 名称 数据类型 AlarmTitle 文本 AlarmContent 文本 在“发送事件”图元中,配置1中创建的事件命名空间__WebSocketAlarmEvent__e(需替换为用户实际创建的事件名称)。 参考下图配置输入参数,通过全局变量AlarmTitle和AlarmContent及系统变量$Flow.CurrentDateTime为事件传参。 图8 事件图元的配置 连接所有图元。 图9 连接图元 选中“开始”图元,单击,参考下图配置服务编排的入参。 入参是从全局上下文的变量中拖入,告警服务编排的入参有AlarmTitle和AlarmContent两个。 图10 配置入参 单击页面上方的,保存服务编排。 单击,启用服务编排。 服务编排只有启用后,才会生效。服务编排在启用后,不可编辑,如果需要对其中的图元或参数进行修改,请先单击,禁用该服务编排。
-
步骤1 创建WebSocketAlarmEvent告警事件 创建事件。 参考登录AstroZero新版应用设计器中操作,登录应用设计器。 在左侧导航栏中,选择“数据”。 单击事件后的,进入添加事件页面。 选择“创建新事件”,输入标签“WebSocketAlarmEvent”,单击“添加”。 单击名称对应的输入框,系统会根据标签自动生成名称,系统实际创建的事件名称为“命名空间__WebSocketAlarmEvent__e”。 图2 添加WebSocketAlarmEvent事件 在事件详情页面,选择“自定义参数”页签,单击“新建”。 设置标签、名称和字段类型,单击“保存”,添加事件自定义参数AlarmTitle。 图3 添加事件自定义参数 重复3中操作,创建事件自定义参数AlarmContent、AlarmDate。 表3 事件自定义参数说明 标签 名称 字段类型 AlarmContent 单击名称对应的输入框,系统根据标签自动生成名称。 文本 AlarmDate 单击名称对应的输入框,系统根据标签自动生成名称。 日期/时间 启用告警事件。 在事件详情页面,选择“基本信息”页签。 单击页面右上方的“启用”,启用该事件。 启用成功后,“启用”按钮会变为“禁用”按钮,同时“是否启用”标签变为状态。 图4 启用告警事件 消息事件只有启用成功后,该事件在服务编排或WebSocket中,才会有效。事件启用后,不可编辑,如果需要对事件进行参数修改,请先单击“基本信息”下的“禁用”按钮,禁用该事件。
-
创建空白工作流 参考登录AstroZero新版应用设计器中操作,登录应用设计器。 在左侧导航栏中,选择“流程”。 (可选)单击工作流后的,为工作流添加目录。 工作流默认存放在根目录下,在创建工作流前,您可以先创建工作流存放的目录,也可以在工作流创建后将其拖拽到指定目录。 将鼠标放在已创建的工作流目录上,单击,进入添加工作流页面。 如果未创建工作流目录,请直接单击工作流后的,进入添加工作流页面。 设置工作流的标签和名称,单击“添加”。 图1 设置工作流标签和名称 表1 新建工作流参数说明 参数 说明 标签 根据实际需求,自定义工作流的标签名。标签名用于在页面展示,创建后可修改。 取值范围:1~80个字符。 名称 根据实际需求,自定义工作流的名称。名称是工作流在系统中的唯一标识,创建后不支持修改。命名要求如下: 长度不能超过64个字符,包括前缀命名空间的长度。 说明: 名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。 必须以英文字母开头,只能由英文字母,数字或下划线组成,且不能以下划线结尾。 描述 根据实际需要,在输入框中输入工作流的描述信息。 取值范围:1~255个字符。 根据自身业务需求,设计工作流。 参考创建AstroZero工作队列并定义泳道中操作,添加工作队列和泳道。 为工作队列添加所需的图元,各图元介绍请参见为AstroZero工作流添加图元。 连接图元并指定图元的逻辑关系。 根据实际业务场景,需要确定工作流中用到的图元和逻辑顺序。根据逻辑实现,需要在拖入并配置好所有图元后,将图元按照逻辑顺序有序的连接起来。在执行工作流时,系统会根据连线顺序有序执行图元任务,从而实现整个流程运转。 工作流设置完成后,单击页面上方的,保存工作流。 保存成功后,单击,启用工作流。 工作流启动后,才可以在其他流程中使用。如果未启用,在其他流程中将无法选择到该工作流。
-
前提条件 AstroZero对接 ModelArts Pro ,使用ModelArts Pro提供的 文字识别 套件、 自然语言处理 套件提供的能力。因此需要先申请文字识别套件和自然语言处理套件,具体操作请参见申请行业套件。 已参考获取AK/SK中操作,获取AK(Access Key ID)、SK(Secret Access Key),即访问密钥对。 本节场景是对行程码图片进行识别,需要在ModelArts Pro上创建并部署上线用于对行程码进行识别的模型。由于各省份行程码可能不一致,所以部署的为多模板,具体操作请参见使用多模板工作流开发应用。
-
在脚本中调用连接器 在脚本中,通过调用连接器,实现调用ModelArts Pro的接口。 参考创建空白AstroZero脚本中操作,创建一个空白脚本。 在脚本编辑器中,输入如下代码。 import * as modelartspro from 'modelartspro'; export class Input { @action.param({ type: "String", required: false, description: "the image url" }) url: string; @action.param({ type: "String", required: false, description: "the base64 coded image" }) image: string; @action.param({ type: "Boolean", required: false, description: "" }) isMultiTemplate: boolean @action.param({ type: "String", required: false, description: "" }) modelId: string } export class Output { @action.param({ type: "string" }) result: string; } export class testModelartsPro { @action.method({ input: "Input", output: "Output", description: "modelartspro test case" }) run(input: Input): void { // 填写实例化的modelartspro连接器名称 let client = modelartspro.newClient("custom_defined_ocr") let result = null result = client.customOCRWithURL(input.url, input.isMultiTemplate, input.modelId); console.log(result) } } 代码modelartspro.newClient("custom_defined_ocr")中“custom_defined_ocr”为连接器的名称,如果连接器名称带有命名空间前缀,代码中也要携带。 单击脚本编辑器页面上方的,保存脚本。 保存成功后,单击,运行脚本。 在页面底部“输入参数”中,设置输入请求参数,单击测试窗口右上角的。 { "url": "https://XXXXXXXX/testModelArtsPro.jpg", "isMultiTemplate": true, "modelId": "0b7f0f28-27e2-11ec-8f30-0255ac100057" } 其中,“url”为图片的URL。 在日志页签,可查看到识别结果,表示脚本执行成功。 图5 查看日志 单击脚本编辑器页面上方的,启用脚本。
-
AstroZero低代码平台管理中心 AstroZero低代码平台提供了一个平台管理功能,用于进行系统设置、管理用户、管理应用及应用中资源和监控系统业务配额、查看系统告警、日志等。 管理AstroZero中用户及权限:在AstroZero中,通过预置的权限(Profile)来控制用户、业务用户等的操作权限。如果默认的权限不能满足您的需求,即用户需要额外的权限时,支持对预置的权限进行修改。 管理AstroZero中已安装应用的资源:在AstroZero的环境配置中,管理AstroZero平台中已安装应用的资源,如服务编排、脚本、定时任务等。 AstroZero系统设置与运维监控:监控和设置AstroZero系统,如查看账号业务阈值、公司信息,设置系统参数、系统 域名 和应用支持的语言等。
-
使用AstroZero创建应用 在低代码平台中,您可以通过如下方式,开发各个场景的应用,以满足千行百业的各种需求。 使用AstroZero创建一个空白应用:从后端到前端,从零开始,一步步完成应用的开发。 使用AstroZero预置模板创建应用:当业务与应用模板中的场景相似度较高时,可以尝试使用应用模板创建,并在模板应用的基础上继续改造应用。 使用AstroZero创建扩展应用:当需要基于已有应用或解决方案(不是单一的应用,某一解决方案会涉及到多个应用)进行定制时,可选择创建扩展类型应用。 使用AstroZero创建应用资产:在AstroZero中,除了开发低代码应用外,还支持开发资产组件或安装已有的资产组件,供其它应用复用。在AstroZero中,支持创建业务对象和原生服务两种类型的应用资产。 使用AstroZero创建业务对象:通过创建业务对象(Business Object,简称BO),来封装领域服务,供上层应用使用。一个BO提供一个完整场景的服务,为上层应用提供特定服务。不同用户可以开发各自的BO,在BO中创建逻辑使其具有特定的业务功能,开发好后制作成用户包并进行发布。将用户包分享给其他用户,其他用户安装BO包后,在上层应用(需要使用该BO服务的应用)中导入发布好的BO,即导入特定的业务功能进行使用。 使用AstroZero创建原生服务:开发者在低代码平台外开发了一些服务,服务运行在Docker容器中。如果希望将这些服务集成到AstroZero中,供AstroZero内部应用或其他第三方系统调用时,可选择创建原生服务。本质上原生服务起到了一种桥接的作用,用于将原生服务的API集成到AstroZero,使得运行于AstroZero上的应用,更容易地使用原生服务的API。
-
发布并部署AstroZero开发的应用 根据实际业务需求,可以将应用一键打包发布到运行环境或沙箱环境,也可以生成应用安装包供其他用户在其他AstroZero环境中安装使用。 快速发布与部署AstroZero开发的应用:应用开发完成后,支持将应用一键打包发布到运行环境或沙箱环境。 发布与部署AstroZero开发应用的安装包或补丁包:将应用发布为安装包或补丁包。安装包/补丁包主要用于租户之间或者环境之间的资产复用,避免重复开发。 发布与部署AstroZero开发应用的源码包:源码包中的所有组件,都不受保护和限制。在其他开发环境安装后,可编辑包中组件,即在原有基础上可进行再开发。源码包主要用于同一租户内,在不同环境之间的资产迁移,以源环境的状态继续开发(类似自己的代码仓库),或者用于备份租户自己的代码,以便在需要恢复时使用。 跨账号或环境安装AstroZero低代码应用:AstroZero默认为每个账号分配了“我的仓库”,开发者开发好应用后,可将应用发布到“我的仓库”,供同账号下其他用户在沙箱环境或者运行环境“我的仓库”中进行安装,以便于测试或者使用该应用。AstroZero也支持自定义“我的仓库”,即支持将账号私仓配置为某个OBS仓,当其他账号或者其他运行环境配置了相同的OBS仓时,可实现跨账号或跨环境安装应用。 将AstroZero开发的应用发布成移动端小程序:将应用发布为移动端小程序,如Welink-We码、WeLink轻应用和微信等。
-
管理AstroZero中已安装的应用 使用AstroZero完成应用的开发后,您还可以在AstroZero中对已开发或安装的应用进行管理。 为AstroZero开发的应用添加业务用户:业务用户(即PortalUser)是指登录并使用在AstroZero中开发的业务应用的用户账号。您可以在业务配置中心创建、删除和编辑业务用户,并为业务用户配置相应的权限。 个性化设置AstroZero中已安装的应用:在AstroZero的环境配置中心,对已安装的应用进行个性化设置。此处的设置仅对当前的应用有效且不会更改应用包中原有的设置。如果需要更改应用包中原有的设置,请参考使用AstroZero对应用进行个性化设置。 个性化设置AstroZero中开发应用的工作台:在AstroZero的环境配置中,设置个人工作台的企业外观、应用导航和应用标签等。 查看AstroZero中已安装的应用:在AstroZero环境配置的应用列表中,可查看当前账号已安装的所有应用。 卸载AstroZero中已安装的应用:应用不再使用或者账号可创建应用的配额不足时,可将应用从AstroZero中删除。
-
使用AstroZero开发应用 在AstroZero中开发应用没有严格的顺序要求,可按照个人习惯进行,建议先进行后端开发,再进行页面组装、页面流程编排。AstroZero开发架构主要分为后端开发、前端开发、集成开发和个性化设置四层,如图3所示。 图3 AstroZero开发架构 使用AstroZero开发应用后端 对象:AstroZero中的对象(也可以称为Object)相当于传统方式开发业务系统时,数据库中创建一个表。每个对象对应一张数据库表,用于保存业务系统需要的配置数据和业务数据。 事件:在业务流程中,有意义的状态变化都可称为事件。自定义好事件后,可基于该事件实现事件发送、事件订阅,对发送的事件数据进行分析处理等功能。 脚本:针对业务逻辑比较复杂的场景,AstroZero平台提供了脚本(Script)能力,支持用户在线开发TypeScript脚本,完成灵活复杂的业务逻辑。 服务编排:服务编排是一种通过简单的拖拉拽式流程编排以及参数配置的方式来进行服务开发的能力,并支持对已开发的服务重新进行组合编排。 触发器:触发器以图形表示的方式将业务流程呈现给用户,触发器配置好后,用户不必手动执行这些操作,系统会自动执行。 工作流:工作流即业务流程管理,源自业界BPMN 2.0标准。低代码平台基于该规范实现了自己的业务流程管理系统,由于工作流本身已成为了业界一套行业规范,因此在低代码平台中称实现此类流程的引擎为工作流。 定时任务:通过创建定时任务,让系统自动执行某脚本、服务编排完成业务功能。例如,系统中存在一个定时任务,在每天凌晨3点,定时将到期的商品进行下架处理。 使用AstroZero开发应用前端 标准页面:标准页面是一种将一个或多个通用基础组件拖进画布,进行低代码或无代码的配置,即可快速完成业务功能的前端页面。对于一般的业务应用系统,例如请假电子流、出差报销、在线投票等企业常见业务场景,其功能主要是针对业务数据的增、删、改、查,且前端界面的样式相对简单的页面,可以使用AstroZero提供的标准页面。 高级页面:高级页面也是由一个或多个组件拼装而成,但是高级页面的组件是一个通用性强、功能丰富、可视化效果好的页面组成元素,因此高级页面主要用于对呈现效果要求比较高的场景,而标准页面主要用于后台管理类的表格表单类的开发。 报表:报表是AstroZero对内部数据提供的一种汇总方式的视图。利用报表,可以让数据进行可视化的展示。 使用AstroZero进行应用集成开发 使用连接器对接云服务:通过连接器将第三方系统集成到AstroZero中,供应用中创建的服务编排或脚本使用。 通过数据接入将消息类数据接入AstroZero:当需要从外部数据源获取数据,并按照需求对数据进行一系列处理后,转化成内部事件,输出给Kafka或者ROMA,这时可以通过配置“数据接入”,来实现整个流程。 开放接口供第三方系统调用:将AstroZero应用中开发的脚本、服务编排等包装成自定义REST接口,供第三方系统进行调用。 使用AstroZero对应用进行个性化设置 使用AstroZero设置应用的外观:设置应用的导航框架布局、元素和样式。 使用AstroZero管理应用中标准页面的主题:对标准页面的主题进行管理。 使用AstroZero设置应用的导航栏菜单:自定义应用的主导航菜单树、应用的设置菜单和应用右上角的用户菜单。 使用AstroZero设置应用的依赖与开放关系:建立应用与应用之间的依赖关系,可模块化构建复杂的解决方案,实现资产复用。 使用AstroZero设置应用的兼容性:如果应用中包含一些在早期平台版本中开发的内容,而当前版本已经发生了变更,此时需要通过设置兼容性开关来恢复原来的功能。
-
授权用户使用AstroZero并购买实例 注册华为云后,系统会自动创建一个账号,账号是资源的归属以及使用计费的主体,对其所拥有的资源具有完全控制权限,可以访问所有云服务。为了保证您的账号安全,建议您创建一个或多个IAM用户并赋予系统管理员权限,用于购买AstroZero实例。AstroZero实例是一个独立的资源空间,所有的操作都是在实例内进行,不同实例间的资源相互隔离。 创建用户并授权使用AstroZero:根据企业的业务组织,在您的华为账号中,给企业中不同职能部门的员工创建IAM用户,让员工拥有唯一安全凭证,并使用AstroZero资源。 申请AstroZero免费试用:AstroZero支持申请免费试用,试用版可以使用的资源有限。AstroZero免费试用版本不限制使用时间,不涉及AstroZero退订及资源释放。 购买AstroZero商用实例:AstroZero免费版可使用的资源有限,标准版、专业版和专享版更适用于个人或企业的商用开发。 购买AstroZero沙箱实例:在应用正式发布上线前,需要在测试环境进行测试和数据配置。在AstroZero中,以沙箱(Sandbox)环境来作为测试环境,您也可以直接在开发环境进行测试。在沙箱环境测试的优势是不影响开发环境的配置,沙箱环境(Sandbox)是与开发环境完全隔离的。
-
添加AstroZero开发者用户 在账号下添加用户,可实现多人协助开发。为了方便同一个开发团队成员之间,能够更好的配合开发项目,在AstroZero中同一个账号下的所有用户开发的内容都可以互相查看,配合开发。 为IAM用户添加AstroZero开发者权限:将IAM用户添加到AstroZero中,并赋予开发者权限。 为WeLink用户添加AstroZero开发者权限:将WeLink用户添加到AstroZero中,并赋予开发者权限。
-
创建报表 参考登录AstroZero新版应用设计器中操作,登录应用设计器。 在左侧导航栏中,选择“界面”。 (可选)单击报表后的,为报表添加目录。 报表默认存放在根目录下,在创建报表前,您可以先创建报表存放的目录,也可以在报表创建后将其拖拽到指定目录。 将鼠标放在已创建的报表目录上,单击,进入添加报表页面。 如果未创建报表目录,请直接单击报表后的,进入添加报表页面。 设置报表主对象、标签等,单击“新建”。 图1 添加报表 表1 创建报表参数说明 参数 说明 主对象 选择前提条件中创建的主对象,该对象定义了报表的汇总主体。例如,如果报表想展示图书的作者,数据来源于“Author__CST”,即“Author__CST”作为主对象。 标签 报表的标签名,用于在页面展示。 取值范围:1~64个字符。 名称 报表的名称,名称是报表在系统中的唯一标识。 命名要求如下: 长度不能超过64个字符,包括前缀命名空间的长度。 说明: 名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。 必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。 文件夹 在下拉框中选择文件夹,对报表进行分类管理。 PublicReports:公共报表。 PrivateReports:私有数据报表。 WanrData:告警数据报表。 默认值:PublicReports。 描述 根据实际需求,在输入框中输入报表的描述信息。 对象连接关系 定义报表中,要展现对象的连接关系。例如图2,将两个对象数据的交集,作为报表展示的数据范围,也可以只选用一个主对象。 每个'A' 对象的记录至少关联一条'B'的记录:为内连接,表示取连接双方的交集。 'A' 对象的记录可以关联或不关联'B'的记录:为左连接,表示取左方的全集以及双方的交集数据。 图2 选取对象交集作为报表展示范围 编辑报表要展示的信息。 选择报表要展示的字段,即在报表编辑页面左侧“可选字段”中,拖拽所需的字段到右侧“报表预览”页面。 图3 选择字段 单击某个字段后的,选择“按该字段分组”,设置分组字段。 图4 按该字段分组 设置报表数据过滤条件。 通过设置过滤条件,可以挑选出希望获得的数据。如下图所示,展示了创作时间在2019-02-01至2019-03-28之间的图书情况。 编辑状态的报表,仅显示前20条数据。 图5 设置报表数据过滤条件 单击报表编辑页面上方的,保存报表。 保存成功后,单击,显示运行态报表页面。 图6 运行态报表页面
共100000条
- 1
- ...
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- ...
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333
推荐文章