# 织信知识库 **Repository Path**: chenjy1012/informat-wiki ## Basic Information - **Project Name**: 织信知识库 - **Description**: 织信知识库搭建案例文档 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-03-06 - **Last Updated**: 2023-03-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 织信低代码平台教程 `织信`致力于打造一款适用于企业级信息系统开发的低代码平台。通过`模型` 、`BPMN工作流`、 `自动化任务` 、`控件` 等概念将企业级系统开发过程中大量重复性 工作简化。极大的提高了开发效率。阅读此开发文档能帮助您快速的了解织信。 ### 概念和术语 在利用`织信`进行搭建应用之前,需要介绍一些基本概念。`织信`通过将程序开发中涉及到的`数据库设计`、`流程设计`、`界面设计`、`接口设计`、`程序设计`等工作抽象,使用界面配置的形式,用户可以通过拖放组件的形式实现同样的效果,这些功能在织信中称为`模块`,在您完成应用设计工作以后,织信支持将设计好的应用导出为安装包,使用安装包可以在不同的部署环境,不同客户之间进行应用分发,这一点和传统的开发模式是相同的。 织信搭建的每一个应用都以配置文件的形式存在,一个应用由多个模块组成。应用之间可以互相依赖,被依赖的应用可以设置可被外部模块访问的数据表。应用之间也可以通过`发送消息`进行通讯。 在应用搭建完毕后,需要对应用进行部署,在部署的过程中,织信会分析应用中的模块,在数据库中自动的创建应用需要的表、字段等。 ### 组织架构 织信提供了完善的组织架构管理,利用织信的`组织架构`功能定义系统的使用者,使用者所属的组织架构,组织架构的结构关系,使用者的角色权限。 ### 数据库设计 在织信中,数据库设计工作是通过`数据表`模块实现的,数据表中定了`文本`、`数字`、`控件`、`关联关系`、`静态展示`等五大类字段。需要注意的是这里的字段是和数据库字段不一样的,比如织信提供的`单行文本`字段最终会存储为`varchar`类型的数据库字段,但是`单行文本`额外提供了像格式检查等跟常用的业务功能。织信为了满足企业级开发中灵活性和专业性的需求,每一个`数据表`模块在部署后都会生成一张或多张数据库表格,对于高级用户可以直接读取这张表格的数据进行复杂的数据处理。 ### 流程设计 BPMN(Business Process Modeling Notation)指业务流程建模与标注。BPMN定义了业务流程图,其基于流程图技术,同时为创建业务流程操作的图形化模型进行了裁减。业务流程的模型就是图形化对象的网图,包括活动(也可以说工作)和定义操作顺序的流控制。在织信中可以使用BPMN作为建模语言很方便的构建出类似于`审批`,`待办任务`,`数据流转`等形式的流程。 ### 界面设计 在企业级开发中,用户界面相对固定,大部分的需求场景都是基于表格、表单进行操作。织信提供了包括`表格视图`、`卡片视图`、`看板视图`、`甘特图视图`、`日历视图`、`树形视图`、`文件夹视图`等多种展示形式。对于每一种展示形式都可以通过配置的方式设置界面元素。例如在`表格视图`中,通过配置可以设定表格显示的列、列宽、排序方式、表格分组、表尾聚合、单元格样式等功能。 对于界面上的操作按钮,织信提供`控件`功能实现,例如我们需要在表格上增加一个创建数据的按钮,就可以通过添加一个动作是`打开记录创建页面`的按钮。为了满足企业级开发中的各种复杂需求,每个控件都可以通过表达式设置禁用状态、显示状态。 在织信提供的界面不能满足需求的情况下,还可以通过`网站`模块进行自定义页面设计。`网站`模块允许用户上传静态资源。通过这些自定义的资源文件设计的界面,可以通过`自动化`或者`界面设计`中的配置项和织信组合在一起。 ### 接口设计 通过`API`模块,用户可以配置URL到`自动化`或者`脚本`的映射关系。基于此映射外部系统访问HTTP链接调用系统功能。 ### 程序设计 传统开发方式中,程序设计都是通过代码的形式开发。织信提供了基于DAG图的可视化程序开发`自动化`模块和基于`javascript`语言的`脚本`模块。 `自动化`模块提供分支选择,循环,终止等程序设计的基本结构,另外基于织信本身的功能提供了数百个和各个模块相关`功能函数`。在自动化中`功能函数`分为交互式函数和非交互式函数两种类型,通过这两种函数的组合,可以很方便的设计出非常复杂并且带有用户交互的逻辑。 `脚本`模块提供了基于`javascript`语言的脚本引擎,织信扩展了脚本引擎的能力,在`脚本`模块中可以使用`informat`对象访问各个模块提供功能函数。注意在脚本模块中是不可以使用交互式函数的。 ### 其它功能 除了上述的功能以外,织信还提供了`组织架构管理`、`应用成员管理`、`角色管理`、`定时任务`、`消息队列`、`搜索引擎`等其它模块,这些在后续的文档中都会详细介绍。