显示属性、导航属性

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4293923.html

导航属性查询效率低,因为是Join之后根据非关键字段进行查询,如果考虑性能方面的问题,则需要将此属性直接作为特征维度即可

特征与导航属性的区别:

我们是将客户名称做成导航属性还是直接做成特征的区别:

特征查询效率高(由于特征的值就在Fact表时在,不需要到特征的主属性P表里去读取了,所以效率高),但灵活性差

导航属性效率低,但灵活性高(同一数据只存储在主数据表里,如果客户名称变化了,则只需要修改主数据表里的数据,则所有引用该主数据的报表显示时全部更新,所以灵活性高)

显示属性仅只起显示作用,没有什么任何功能:如通过它时行过滤、分组汇总等,但导航属性就具有特征的一切的功能,在Query 设计界面里导航属性会显示在与它所对应特征的同一维度下面,供设计时使用

将某个特征的属性做成导航属性则需要通过以下两步:

如果要将某个属性作成过滤条件,如这里需要根据客户的地址来过滤,则需要在BW里将客户地址属性设置成导航属性即可。操作如下:

首先去掉客户地址所对应的“仅属性Attribute Only”:

再在客户InfoObject界面中,对客户地址属性进行导航属性设置:

当设置好后,可以去Cube里看到该导航属性,并将导航属性的勾勾上:

时间: 2024-10-09 00:48:47

显示属性、导航属性的相关文章

关于Entity Framework自动关联查询与自动关联更新导航属性对应的实体注意事项说明

一.首先了解下Entity Framework 自动关联查询: Entity Framework 自动关联查询,有三种方法:Lazy Loading(延迟加载),Eager Loading(预先加载),Explicit Loading(显式加载),其中Lazy Loading和Explicit Loading都是延迟加载. (注:由于Entity Framework版本的不同,以及采用不同的模式(DB First,Model First,Code First)来构建的Entity,最终导致可能自

EF Code First 导航属性 与外键

一对多关系 项目中最常用到的就是一对多关系了.Code First对一对多关系也有着很好的支持.很多情况下我们都不需要特意的去配置,Code First就能通过一些引用属性.导航属性等检测到模型之间的关系,自动为我们生成外键.观察下面的类: public class Destination { public int DestinationId { get; set; } public string Name { get; set; } public string Country { get; s

关系与导航属性

关系与导航属性 本主题概述实体框架如何管理实体间的关系.还对如何映射和操作关系提供了一些指南. 关系.导航属性和外键 在关系数据库中,表之间的关系(也称为关联)是通过外键定义的.外键 (FK) 是用于在两个表的数据之间建立并强制链接的一列或列组合.有三种关系类型:一对一.一对多和多对多.在一对多关系中,外键是在表示关系多端的表上定义的. 多对多关系涉及定义第三个表(也称为接合或联接表),主键由来自两个相关表的外键组成.在一对一关系中,主键还用作外键,两个表都没有单独的外键列. 下图显示的两个表存

MVC3+EF4.1学习系列(五)----- EF查找导航属性的几种方式

通过上一篇的学习 我们把demo的各种关系终于搭建里起来 以及处理好了如何映射到数据库等问题 但是 只是搭建好了关系 问题还远没有解决 这篇就来写如何查找导航属性 和查找导航属性的几种方式 已经跟踪生成的SQL来检测是否满意 通过这节学习 来明白什么时候用哪个~~ 一.三种加载 1.延迟加载 这是原文中的图 大家可以去看下  我模仿上面的做了个测试  出现了  已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭. 我的解决办法是    var departments

《Entity Framework 6 Recipes》中文翻译系列 (28) ------ 第五章 加载实体和导航属性之测试实体是否加载与显式加载关联实体

翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-11  测试实体引用或实体集合是否加载 问题 你想测试关联实体或实体集合是否已经加载到上下文中,另外你想使用Code-First来管理数据访问. 解决方案 假设你有如图5-26所示的概念模型 图5-26 一个包含projects,managers和contractors的模型 在Visual Studio中添加一个名为Recipe11的控制台应用,并确保引用了实体框架6的库,NuGet可

《Entity Framework 6 Recipes》中文翻译系列 (22) -----第五章 加载实体和导航属性之延迟加载

翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第五章 加载实体和导航属性 实体框架提供了非常棒的建模环境,它允许开发人员可视化地使用映射到数据库中的表.视图.存储过程以及关系中的实体类型.本节将向你展示如何控制查询操作中的关联实体的加载. 实体框架的默认行为是只加载应用程序直接需要的实体.通常情况下,这正是你需要的.如果实体框架通过一个或多个关联积极地加载关联实体,最终,你很有可能得到超过你需求的实体.这不但增加了内存占用,而且还影响了

《Entity Framework 6 Recipes》中文翻译系列 (27) ------ 第五章 加载实体和导航属性之关联实体过滤、排序、执行聚合操作

翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-9  关联实体过滤和排序 问题 你有一实体的实例,你想加载应用了过滤和排序的相关实体. 解决方案 假设你有如图5-24所示的概念模型 图5-24 一个酒店预定系统的模型 假设我们有一个酒店(Hotel)实体,使用代码清单5-22,获取酒店的商务套房(executive suite),查看是否被预定,并按房价排序. 代码清单5-22.通过方法Entry()和Query()显式加载实体集合,

EF--主外键关系导航属性

数据准备公司表Company和员工表Employee两张表创建主外键强关系,员工表Employee的Company_ID是公司表Company的外键,如下图所 解读主外键生成的实体特殊性 Company实体--主外键关系的话,EF生成的实体,主表Company实体有个子表Employee的集合,注意这个集合是virtual虚拟的 Employee实体--子表里面还有个主表Company的实例,引用属性,注意主表实体Company也是virtual虚拟的 导航属性是延迟查询 我们看到我们只查询公司

EF导航属性

其实有个小问题困扰了我好久,在年前一个项目的时候 当我使用EF向数据库添加一条数据并SaveChanges()之后,立即根据主键再查询出这条数据的时候,发现所有的导航属性竟然都没有值. 直接上测试项目,我们要创建两个对象,分别是Users和Orders,Users和Order的关系是一对多的关系.先补充一个小知识(我非常小白)_codeFitst.Orders.Add(order);如果order主键是自动增加的,当_codeFitst.SaveChanges();执行之后,order对象中的i