Agile PLM: Folder结构与Query、Report的层次关系

 

 

本文内容

Agile PLM中Folder用来保存Query、Report或者一些具体的Object。它的概念和Windows的资源管理器完全相同:文件夹内可以包含子文件夹和文件,子文件夹内可以再包含其他子文件夹。通过用户登录后Agile加载Folder的过程,我们可以了解Folder与Query, Report和其他Object的关系。

用户admin (ID=704)登录后,Agile会首先加载4个Folder,Query的最上层Folder(界面上显示为Searches),Report的最上层Folder(界面显示为Reports and Analytics),Recently Visited Folder, My Bookmarks Folder。其中Searches folder再加载Personal Searches和公共的folder,如Global Searches, Workflow Routings等等。而Reports and Analytics会再次加载Personal Reports和公共的folder。

 

通过如下SQL,可以观察一下admin用户所拥有的最外层Folder结构:

 

select id, is_public, description from folder where owner=704;

IS_PUBLIC用来标识此Folder的类型。将此结果和UI做一下匹配:


在上图的SQL结果中,没有列出诸如Global Searches,PLM Analytics等等的Folder,是因为这些Folder都是公共的,不专属于某个用户。可以通过owner=0的条件来查找这些公共的Folder。

select id, name, is_public, description from folder where owner=0;

一个Folder下可以包含其他的Folder和Query、Report或者Object,他们的包含关系保存在Foldering表中。当一个Folder同时包含Folder和Query、Report或者Object时候,是如何区别他们的呢?在Foldering表中有个CLASSID字段,不同的值类型代表了不同的含义。其中CLASSID=4表示当前的子内容为Folder,CLASSID=5表示当前的子内容为Query,如果CLASSID为一个具体的Class的值,比如10000,则表示子内容是一个具体的Object。

举例如下:Personal Searches的目录下含有4个Query和一个子Folder,如下图所示。同时查询Foldering表有如下结果:

 

再如:Global Report的目录下含有四个Report,查询Foldering并同界面结合起来查看:

 

又如:My Bookmarks目录下有5个不同的对象,比较界面和数据库,清晰的对应如下:

 

Query的数据存放在Query数据表中,包含Quick Search, Parametric Search和Advanced Search。这些查询有的可以编辑,有的预定义,差别很大。Query在定义的时候可选择显示哪些栏位,具体数据则保存在Select_List表。Report的数据存放在Report表中。Report和Search有一定的联系性,他们各自的查询条件均是保存在Criteria数据表中。

用户在使用Query的时候常常发现原先版本的Query在新版本中不存在或者Criteria完全错乱了,这个时候就需要详细的分析以上涉及到的所有表,之间的逻辑关系较为复杂。具体的Query和Report的技术细节,请咨询。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值