• 【自然框架】元数据的数据库结构的详细说明和示例(一):项目描述部分


    自然框架在线演示:  http://pthuanyu.com/

    【自然框架】PowerDesigner 格式的元数据的表结构

    自然框架的源码、Demo、数据库、说明文档的下载,还是老地方:自然框架的源代码、Demo、数据库、配置信息管理程序下载(2010.02.21更新)

     1、 Manage_Function(节点信息

      

    字段名 中文名 类型 大小 默认值 说明
    FunctionID 节点ID int 4 1 主键
    ParentID 父节点ID int 4 1 员工姓名
    ParentIDPath 父节点ID的路径 nvarchar 30 _ 添加、修改时使用
    NoteTitle 节点名称 nvarchar 100 _ 节点名称
    PowerMark 权限标识 nvarchar 50 _ 一般情况下等于FunctionID
    NoteLevel 级数 int 4 1 第几级节点
    IsShowNote 节点是否显示 bit 1 1 功能节点里面是否显示
    IsShowPower 角色是否显示 bit 1 1 角色选择是否显示
    Sort 排序 int 4 1 排序。全部节点的总排序
    WebURL 网址 nvarchar 100 _ 打开网页的网址
    Target 目标 nvarchar 10 _ 目标

        这个表就是元数据的“支柱”了。记录了一个项目里都有哪些功能,功能对应的页面,功能的分级,权限标识等。在线演示的那个Demo为例,表里的数据如下图:

    为了便于查看,用了一个SQL语句美化了一下

    SELECT TOP 100 PERCENT FunctionID, NoteLevel, IsShowNote,
          REPLACE(SPACE(NoteLevel), ' ', ' ') + NoteTitle AS NoteTitle,
          ParentIDPath + ',' + CAST(FunctionID AS nvarchar(5)) AS ParentIDPath, Sort, WebURL,
          Target
    FROM dbo.Manage_Function
    ORDER BY Sort

    2、 Manage_Function_Info (节点的详细信息)

     

    字段名 中文名 类型 大小 默认值 说明
    FunctionID 节点ID int 4 1 主键
    FunctionTitle 列表标题 nvarchar 30 _ 列表标题
    TableID_List 列表用的表名 int 4 _ 列表用的表名、视图名
    TableID_List 选择表 int 4 _ 做选项用。数据库里不用设置这个字段
    ForeignColumnID 外键的字段ID int 4 1 外键的字段ID,从表的列表的时候用,作为过滤条件
    SQLKindID 分页算法 int 4 0 分页算法
    PKColumnID 主键名 int 4 _ 主键名
    ShowColumns 显示的字段 nvarchar 50 * 显示的字段
    OrderColumns 排序字段 nvarchar 50 _ 排序字段
    PageSize 一页记录数 int 4 20 一页记录数
    QueryAlways 固定的查询条件 nvarchar 300 _ 固定的查询条件
    Query 第一次的查询条件 nvarchar 300 _ 第一次的查询条件
    NaviCount 页号数量 int 4 10 页号数量
    TableIDs_Add 添加数据用表 nvarchar 100 _ 添加数据用的表,如果是多个表的话主表在前。必须是一对一的表,且从表的外键名和主表的主键名一致。
    TableIDs_Update 修改数据用表 nvarchar 100 _ 修改数据用表的表。必须是一对一的表,且从表的外键名和主表的主键名一致。
    TableID_View 查看数据用表 int 4 0 查看数据用的表或者视图
    TableID_Delete 删除数据用表 int 4 0 删除数据用表
    DelKindID 删除方式 int 4 1 外键,关联删除方式
    RepeatColumnsForm 表单列数 int 4 1 表单控件的列数
    RepeatColumnsFind 查询列数 int 4 4 查询控件的列数

    这个表里的字段比较多,主要是记录一些“一对一性质”的信息,比如页面的名称、表单的列数、查询的列数、分页控件需要的属性(表名、排序字段等)、添加数据的表、修改数据的表等。

    以前涉及到表名、字段名的地方是直接写的名称,现在改成了使用 主键进行关联,所以在下面的实例里面,您会看到一大堆的数字,这些都是关联到Manage_Table或者Manage_Columns表的。用关联的方式强制,这样不容易出现表名、字段名写错的情况了。

    3、Manage_ButtonBar(列表里的按钮)

    ButtonID 序号 int 4 1 0 主键
    FunctionID 节点ID int 4 1 0 外键,关联节点
    BtnTitle 按钮标题 nvarchar 50 _ 0 按钮上面显示的文字
    BtnID 按钮ID nvarchar 50 _ 0 按钮的ID
    BtnTypeID 按钮类型 int 4 1 0 按钮类型
    URL 打开的网址 nvarchar 240 _ 0 单击按钮后打开的网页
    WebWidth 打开窗口宽度 int 4 1 0 打开窗口宽度
    WebHeight 打开窗口高度 int 4 1 0 打开窗口高度
    IsNeedSelect 是否需要选中数据 int 4 0 0 0:不需要;1:需要
    Sort 排序 int 4 1 0 同一节点下的排序

    这个表是记录列表页面的里操作按钮的,比如添加、修改、删除等。一个按钮就是一条记录,一个按钮只能在一个节点的列表里,不能在多个列表里出现。即使两个列表页面都有一个叫做“添加”的按钮也不能共用一个。

    也许您会觉着这么做有点浪费,但是从综合的角度来看,这么做是有利于管理和维护的。对于权限判断也是很有帮助的。

    下图就是“角色管理”节点里的操作按钮的记录(Function=101的记录)

  • 相关阅读:
    c#爬虫-从内存中释放Selenium chromedriver.exe终极杀
    领域驱动设计-从贫血模型到充血模型
    推荐:.Net 5开源免费的内容管理系统
    Exceptionless服务端本地化部署
    Chrome扩展程序开发
    SqlSugar+SqlServer+NetCore3.1 入门案例
    Linux Qt5 一. 开发环境安装
    Boost Mutex详细解说
    Y7000 2020 安装ubuntu 16.04.3双系统后无法识别无线网卡问题
    《视觉SLAM十四讲》第三讲习题7
  • 原文地址:https://www.cnblogs.com/jyk/p/1670938.html
Copyright © 2020-2023  润新知