PDA

View Full Version : Slowly Changing Dimensions + Dynamic Closure



eliss
02-11-2008, 12:02 PM
Hola!

Tengo un pequeño problema con el tratamiento de históricos en mis dimensiones.

He creado una dimensión EstructuraOrganizativa que contiene un conjunto de objetos organizados en una estructura de árbol, y quiero usar una Closure para manipularlos. No obstante, la topologia del árbol varia con el tiempo y, evidentemente, los nodos cambian de padres...

Para ello, tengo la dimensión EstructuraOrganizativa con una surrogateKey autogenerada (identificador único), el identificador del objeto sobre el que mantenemos su historia y un timeID que nos permite identificar la versión!

Asi pues, tengo la siguiente definición en el xml:

<Dimension name="Organizational Unit" caption="%{sirocmro.dimension.orgunit.caption}">
<Hierarchy hasAll="true" allMemberName="All Organizational Units" allMemberCaption="%{sirocmro.dimension.orgunit.allmember.caption =All Organizational Units}" primaryKey="ORG_UNIT_SKEY" primaryKeyTable="SIRO_DM_D_ORG_UNIT">
<Table name="SIRO_DM_D_ORG_UNIT"/>

<Level name="Org Unit ID" table="SIRO_DM_D_ORG_UNIT" column="ORG_UNIT_SKEY" nameColumn="ORG_UNIT_NAME" parentColumn="ORG_UNIT_PARENT_ID" uniqueMembers="true" >

<Closure parentColumn="ORG_UNIT_CLOSURE_ANCESTOR_ID" childColumn="ORG_UNIT_CLOSURE_ELEMENT_ID">
<Table name="SIRO_DM_D_ORG_UNIT_CLOSURE"/>
</Closure>

<Property name="OrgUnit Time" column="ORG_UNIT_TIME_ID" type="Numeric" />

</Level>
</Hierarchy>
</Dimension>

No sé si mi enfoque es correcto o no, ¿Cómo puedo mantener esta estructura dinámica? ¿Cómo debo realizar las consultas MDX para filtrar las estructuras organizativas en un periodo concreto? ¿y si quiero extraer toda la evolución de una medida a lo largo del tiempo?

Muchas gracias por vuestra ayuda!

Elisenda.