示例#1
0
 /// <summary>
 ///		Graba la dimensión
 /// </summary>
 public void SaveDetails(bool newName)
 {
     if (ValidateData())
     {
         // Asigna las propiedades a la dimensión
         Dimension.Id          = Key;
         Dimension.Description = Description;
         // Si es nuevo se añade a la colección
         if (_isNew)
         {
             // Añade la dimensión
             Dimension.DataSource.DataWarehouse.Dimensions.Add(Dimension);
             // Indica que ya no es nuevo
             _isNew = false;
         }
         // Asigna las relaciones
         Dimension.Relations.Clear();
         Dimension.Relations.AddRange(ListRelationsViewModel.GetRelations());
         // Graba la solución
         ReportingSolutionViewModel.SaveDataWarehouse(Dimension.DataSource.DataWarehouse);
         // Indica que no ha habido modificaciones
         IsUpdated = false;
         ListRelationsViewModel.IsUpdated = false;
     }
 }
示例#2
0
 /// <summary>
 ///		Graba la dimensión
 /// </summary>
 public void SaveDetails(bool newName)
 {
     if (ValidateData())
     {
         // Añade el origen de datos si es nuevo
         if (DataSource.DataWarehouse.DataSources[DataSource.Id] == null)
         {
             DataSource.DataWarehouse.DataSources.Add(DataSource);
         }
         // Asigna las propiedades
         DataSource.Id  = Key;
         DataSource.Sql = Sql;
         // Asigna las columnas
         DataSource.Columns.Clear();
         DataSource.Columns.AddRange(ColumnsViewModel.GetColumns());
         // Asigna los parámetros
         DataSource.Parameters.Clear();
         DataSource.Parameters.AddRange(ParametersViewModel.GetParameters());
         // Graba la solución
         ReportingSolutionViewModel.SaveDataWarehouse(DataSource.DataWarehouse);
         // Cambia la cabecera
         Header = DataSource.Id;
         // Indica que no ha habido modificaciones
         IsUpdated = false;
     }
 }
 /// <summary>
 ///		Graba la solución
 /// </summary>
 internal void Save(string path)
 {
     // Graba la solución
     Manager.SaveSolution(Solution, GetSolutionFileName(path, "DbStudio"));
     // Carga la solución de informes
     ReportingSolutionViewModel.SaveSolution();
 }
 /// <summary>
 ///		Graba el archivo de esquema del dataWarehouse
 /// </summary>
 private void SaveDataWarehouse(DataWarehouseModel dataWarehouse)
 {
     // Graba la solución
     ReportingSolutionViewModel.SaveDataWarehouse(dataWarehouse);
     // Actualiza el árbol
     Load();
 }
 /// <summary>
 ///		Graba la solución y actualiza el árbol
 /// </summary>
 private void SaveSolution()
 {
     // Graba la solución
     ReportingSolutionViewModel.SaveSolution();
     // Actualiza el árbol
     Load();
 }
示例#6
0
 public DataSourceSqlViewModel(ReportingSolutionViewModel reportingSolutionViewModel, DataSourceSqlModel dataSource)
 {
     // Inicializa los objetos
     ReportingSolutionViewModel = reportingSolutionViewModel;
     DataSource = dataSource;
     // Inicializa las propiedades
     InitViewModel();
 }
 public DataWarehouseViewModel(ReportingSolutionViewModel reportingSolutionViewModel, DataWarehouseModel dataWarehouse)
 {
     // Inicializa las propiedades
     ReportingSolutionViewModel = reportingSolutionViewModel;
     DataWarehouse = dataWarehouse;
     // Inicializa el viewModel
     InitViewModel();
 }
 public ListItemDataSourceParameterViewModel(ReportingSolutionViewModel reportingSolutionViewModel, DataSourceSqlParameterModel parameter, bool isUpdatable)
 {
     // Asigna las propiedades
     ReportingSolutionViewModel = reportingSolutionViewModel;
     Parameter = parameter;
     Updatable = isUpdatable;
     // Inicializa el ViewModel
     InitViewModel();
 }
 public ListItemDataSourceColumnViewModel(ReportingSolutionViewModel reportingSolutionViewModel, DataSourceColumnModel column, bool isUpdatable)
 {
     // Asigna las propiedades
     ReportingSolutionViewModel = reportingSolutionViewModel;
     Column    = column;
     Updatable = isUpdatable;
     // Inicializa el ViewModel
     InitViewModel();
 }
示例#10
0
 public ReportViewModel(ReportingSolutionViewModel reportingSolutionViewModel, ReportModel report) : base(false)
 {
     // Asigna las propiedades
     ReportingSolutionViewModel = reportingSolutionViewModel;
     QueryViewModel             = new QueryViewModel(ReportingSolutionViewModel.SolutionViewModel, string.Empty, string.Empty, true);
     Report = report;
     Header = report.Id;
     // Inicializa el árbol de campos
     TreeColumns = new TreeQueryReportViewModel(this);
     // Apunta al manejador de eventos de la consulta
     QueryViewModel.ExecutionRequested += async(sender, args) => await ExecuteQueryAsync();
 }
示例#11
0
 public ListDataSourceColumnsViewModel(ReportingSolutionViewModel reportingSolutionViewModel, BaseDataSourceModel dataSource, bool updatable)
 {
     // Asigna las propiedades
     ReportingSolutionViewModel = reportingSolutionViewModel;
     DataSource = dataSource;
     Updatable  = updatable;
     // Inicializa el viewModel
     InitViewModel();
     // Asigna los comandos
     NewColumnCommand    = new BaseCommand(_ => CreateColumn());
     DeleteColumnCommand = new BaseCommand(_ => DeleteColumn(), _ => SelectedItem != null)
                           .AddListener(this, nameof(SelectedItem));
 }
示例#12
0
 /// <summary>
 ///		Graba la dimensión
 /// </summary>
 public void SaveDetails(bool newName)
 {
     if (ValidateData())
     {
         // Asigna las columnas
         DataSource.Columns.Clear();
         DataSource.Columns.AddRange(ColumnsViewModel.GetColumns());
         // Graba la solución
         ReportingSolutionViewModel.SaveDataWarehouse(DataSource.DataWarehouse);
         // Indica que no ha habido modificaciones
         IsUpdated = false;
     }
 }
 public TreeReportingViewModel(ReportingSolutionViewModel reportingSolutionViewModel)
 {
     ReportingSolutionViewModel = reportingSolutionViewModel;
     NewDataWarehouseCommand    = new BaseCommand(_ => NewDataWarehouse(), _ => CanExecuteAction(nameof(NewDataWarehouseCommand)))
                                  .AddListener(this, nameof(SelectedNode));
     NewDataSourceCommand = new BaseCommand(_ => OpenDataSource(null), _ => CanExecuteAction(nameof(NewDataSourceCommand)))
                            .AddListener(this, nameof(SelectedNode));
     NewDimensionCommand = new BaseCommand(_ => OpenDimension(null), _ => CanExecuteAction(nameof(NewDimensionCommand)))
                           .AddListener(this, nameof(SelectedNode));
     NewReportCommand = new BaseCommand(_ => OpenReport(null), _ => CanExecuteAction(nameof(NewReportCommand)))
                        .AddListener(this, nameof(SelectedNode));
     QueryCommand = new BaseCommand(_ => OpenQuery(), _ => CanExecuteAction(nameof(QueryCommand)))
                    .AddListener(this, nameof(SelectedNode));
 }
示例#14
0
 public ReportViewModel(ReportingSolutionViewModel reportingSolutionViewModel, ReportModel report, bool isNew)
 {
     // Inicializa los objetos
     ReportingSolutionViewModel = reportingSolutionViewModel;
     Report = report;
     // Inicializa las variables
     _isNew = isNew;
     // Inicializa las propiedades
     InitViewModel();
     // Asigna los comandos
     NewDataSourceCommand    = new BaseCommand(_ => CreateDataSource());
     DeleteDataSourceCommand = new BaseCommand(_ => DeleteDataSource(), _ => SelectedDataSource != null)
                               .AddListener(this, nameof(SelectedDataSource));
 }
示例#15
0
 public ListRelationViewModel(ReportingSolutionViewModel reportingSolutionViewModel, BaseDataSourceModel dataSource, List <DimensionRelationModel> relations)
 {
     // Asigna las propiedades
     ReportingSolutionViewModel = reportingSolutionViewModel;
     DataSource = dataSource;
     Relations  = relations;
     // Prepara la lista
     ListRelations = new ObservableCollection <DimensionRelationViewModel>();
     // Asigna los comandos
     NewRelationCommand  = new BaseCommand(_ => OpenRelation(null));
     OpenRelationCommand = new BaseCommand(_ => OpenRelation(SelectedItem), _ => SelectedItem != null)
                           .AddListener(this, nameof(SelectedItem));
     DeleteRelationCommand = new BaseCommand(_ => DeleteRelation(), _ => SelectedItem != null)
                             .AddListener(this, nameof(SelectedItem));
 }
示例#16
0
 public DimensionRelationViewModel(ReportingSolutionViewModel reportingSolutionViewModel, BaseDataSourceModel dataSource, DimensionRelationModel relation)
 {
     // Inicializa los objetos
     ReportingSolutionViewModel = reportingSolutionViewModel;
     DataSource = dataSource;
     Relation   = relation;
     // Inicializa las propiedades
     InitViewModel();
     // Inicializa el manejador de eventos sobre el combo
     ComboDimensions.PropertyChanged += (sender, args) => {
         if (args.PropertyName.Equals(nameof(ComboDimensions.SelectedItem)))
         {
             LoadListForeignKeys();
         }
     };
 }
示例#17
0
 /// <summary>
 ///		Carga un archivo de solución
 /// </summary>
 public void Load(string path)
 {
     // Guarda el directorio
     PathData = path;
     // Carga la solución
     Solution = Manager.LoadConfiguration(GetSolutionFileName(path, "DbStudio"));
     // Carga los exploradores
     TreeConnectionsViewModel.Load();
     ConnectionExecutionViewModel.Load();
     TreeStoragesViewModel.Load();
     // Carga la solución de informes
     if (!string.IsNullOrWhiteSpace(Solution.FileName))
     {
         ReportingSolutionViewModel.Load(GetSolutionFileName(path, "Reporting"));
     }
 }
示例#18
0
 public DimensionViewModel(ReportingSolutionViewModel reportingSolutionViewModel, DimensionModel dimension, bool isNew)
 {
     // Inicializa los objetos
     ReportingSolutionViewModel = reportingSolutionViewModel;
     Dimension = dimension;
     // Inicializa las variables
     _isNew = isNew;
     // Inicializa las propiedades
     InitViewModel();
     // Asigna los manejadores de eventos
     ListRelationsViewModel.PropertyChanged += (sender, args) => {
         if (args.PropertyName.Equals(nameof(ListRelationsViewModel.IsUpdated)))
         {
             IsUpdated |= ListRelationsViewModel.IsUpdated;
         }
     };
 }
 public ReportDataSourceViewModel(ReportingSolutionViewModel reportingSolutionViewModel, ReportModel report, ReportDataSourceModel reportDataSource)
 {
     // Inicializa los objetos
     ReportingSolutionViewModel = reportingSolutionViewModel;
     Report           = report;
     ReportDataSource = reportDataSource;
     // Inicializa las propiedades
     InitViewModel();
     // Inicializa el manejador de eventos sobre el combo
     ComboDataSources.PropertyChanged += (sender, args) => {
         if (args.PropertyName.Equals(nameof(ComboDataSources.SelectedItem)))
         {
             // Carga las relaciones
             LoadRelations();
             // Indica que se ha hecho alguna modificación
             IsUpdated = true;
         }
     };
 }
示例#20
0
 /// <summary>
 ///		Graba el informe
 /// </summary>
 public void SaveDetails(bool newName)
 {
     if (ValidateData())
     {
         // Asigna las propiedades a la dimensión
         Report.Id          = Key;
         Report.Description = Description;
         // Si es nuevo se añade a la colección
         if (_isNew)
         {
             // Añade el informe
             Report.DataWarehouse.Reports.Add(Report);
             // Indica que ya no es nuevo
             _isNew = false;
         }
         // Añade los orígenes de datos
         Report.ReportDataSources.Clear();
         Report.ReportDataSources.AddRange(GetDataSources());
         // Graba la solución
         ReportingSolutionViewModel.SaveDataWarehouse(Report.DataWarehouse);
         // Indica que no ha habido modificaciones
         IsUpdated = false;
     }
 }