/// <summary>
        ///		Añade un nodo de dimensión (y sus hijos)
        /// </summary>
        private void AddDimensionNodes(NodeColumnViewModel root, DimensionModel dimension)
        {
            NodeColumnViewModel node = new NodeColumnViewModel(this, root, NodeColumnViewModel.NodeColumnType.Dimension,
                                                               dimension.Id, null);
            BaseReportingDictionaryModel <DimensionModel> childs = new BaseReportingDictionaryModel <DimensionModel>();

            // Asigna el código de dimensión
            node.DimensionId = dimension.Id;
            // Añade los campos de la dimensión
            AddColumnNodes(node, dimension.DataSource.Columns, NodeColumnViewModel.NodeColumnType.DimensionColumn, dimension.Id, string.Empty);
            // Crea la colección de dimensiones hija a partir de las relaciones
            foreach (DimensionRelationModel relation in dimension.Relations)
            {
                if (relation.Dimension != null)
                {
                    childs.Add(relation.Dimension);
                }
            }
            // Añade los nodos de dimensión hija
            foreach (DimensionModel child in childs.EnumerateValuesSorted())
            {
                AddDimensionNodes(node, child);
            }
            // Añade el nodo a la raíz
            root.Children.Add(node);
        }
        /// <summary>
        ///		Obtiene las dimensiones de un informe
        /// </summary>
        private BaseReportingDictionaryModel <DimensionModel> GetDimensions(ReportModel report)
        {
            BaseReportingDictionaryModel <DimensionModel> dimensions = new BaseReportingDictionaryModel <DimensionModel>();

            // Añade las dimensiones
            foreach (ReportDataSourceModel dataSource in report.ReportDataSources)
            {
                foreach (DimensionRelationModel relation in dataSource.Relations)
                {
                    if (dimensions[relation.Dimension.Id] == null)
                    {
                        dimensions.Add(relation.Dimension);
                    }
                }
            }
            // Devuelve las dimensiones
            return(dimensions);
        }