public void Execute()
        {
            #region "Creating and preparing the object to send to RavenDB"

            DataBaseBase dataBaseBase = new DatabaseSQLServer("Server=.\\SQLEXPRESS;Database=AdventureWorks2008;Trusted_Connection=True;",
                      "http://localhost:8080", "Test");
            dataBaseBase.LoadSchema();
            ProcessingQueueReports reports = new ProcessingQueueReports("http://localhost:8080",
                                                                        "",
                                                                        "Teste",
                                                                        DataBaseBase.BancoDados.MSSQLSERVER,
                                                                        dataBaseBase);
            ReportConfiguration rc = new ReportConfiguration();
            rc.Id = 1;
            rc.ReportName = "ReportTest";
            rc.MainTable = new DSTable(1,"Test","schema");
            rc.MainSchemaName = "schema";
            rc.Columns = new List<DSColumn>{new DSColumn(),new DSColumn()};
            reports.AddProcessReport(rc);
            #endregion

            using (var store = NewDocumentStore())
            {
                using (var session = store.OpenSession())
                {
                    session.Store(reports);
                    session.SaveChanges();
                }

            }
        }
        public void SendQueue()
        {
            ProcessingQueueReports processingQueueReports = new ProcessingQueueReports(
                base.ConnectionStringODDB,
                this.ConnectionStringRDB,
                base.DatabaseODDB, this._tipoBancoDados, this.DataBaseBase);
            processingQueueReports.LoadQueue();
            var exceptDiference = processingQueueReports.ReportConfigurations.Except(this.ReportConfigurations);
            int count = exceptDiference.Count();
            if (count > 0)
            {
                foreach (var reportConfiguration in exceptDiference)
                {
                    this.ReportConfigurations.Add(reportConfiguration);
                }
            }

            using (var documentStore = new DocumentStore())
            {
                documentStore.Url = ConnectionStringODDB;
                documentStore.Initialize();
                documentStore.DatabaseCommands.EnsureDatabaseExists(DatabaseODDB);
                using (IDocumentSession session = documentStore.OpenSession(DatabaseODDB))
                {
                    var existingInDatabase = session.Query<ProcessingQueueReports>();

                    if (existingInDatabase != null)
                    {
                        foreach (var dataBaseBase in existingInDatabase)
                        {
                            session.Delete(dataBaseBase);
                            session.SaveChanges();
                        }
                    }
                }
            }

            base.SaveToRavenDB();
        }