public void Test_DqlSchema()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder("dmadmin", "@vmware99", "ls_repos");
            DqlDataSource dql = new DqlDataSource(builder.ConnectionString);

            var model  = dql.GetSchemaModel("dm_cabinet");
            var fields = model.Fields.Select(s => s.Name);
        }
        public void Test_DqlSchemas()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder("dmadmin", "@vmware99", "ls_repos");
            DqlDataSource dql = new DqlDataSource(builder.ConnectionString);

            var model  = dql.GetSchemaModel();
            var fields = model.Where(w => w.TableName == "dm_cabinet").
                         FirstOrDefault().Fields.Select(s => s.Name);
        }
예제 #3
0
        /// <summary>
        /// Creates the documentum.
        /// </summary>
        private void CreateDocumentum()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder(txtUserId.Text, txtPassword.Text, btnDataSource.Text);

            builder["Extended Properties"] = txtExt.Text.Trim('\'', '\"');
            Model.DataSource = new DqlDataSource(builder.ConnectionString);
            Model.RefreshSchemaModel();

            Model.DataSource.ProviderName = "OpenText Documentum";
        }
        public void Test_DqlConnectionBuilderKeys()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder("dmadmin", "@vmware99", "ls_repos");
            DqlDataSource dql  = new DqlDataSource(builder.ConnectionString);
            var           Keys = dql.GetConnectionStringBuilder();

            //TODO need to repalce repositry with data source
            Assert.AreEqual((string)Keys["Data Source"], "ls_repos");
            Assert.AreEqual((string)Keys["User ID"], "dmadmin");
            Assert.AreEqual((string)Keys["Password"], "@vmware99");
        }
        public void Test_DqlQuery_EmtpyRecordset()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder("dmadmin", "@vmware99", "ls_repos");
            DqlDataSource dql = new DqlDataSource(builder.ConnectionString);
            var           x   = dql.GetConnectionStringBuilder();

            var query  = dql.GetQueryBuilder();
            var select = query.BuildSql("keywords", new string[] { "r_object_id", "keywords", "authors" }, "dm_cabinet", "left", "0", "r_object_id", new string[] { "0c0030188000010X" }, null);
            var table  = dql.ExecuteQuery(select);

            Assert.AreEqual(table.Tables.Count, 0);
            //  Assert.AreEqual(table.Tables[0].Rows.Count, 1);
        }
        public void Test_DqlQuery_AltKeys()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder("dmadmin", "@vmware99", "ls_repos");
            DqlDataSource dql = new DqlDataSource(builder.ConnectionString);
            var           x   = dql.GetConnectionStringBuilder();

            //TODO need to repalce repositry with data source
            var y = x["Data Source"];


            var query  = dql.GetQueryBuilder();
            var select = query.BuildSql("keywords", new string[] { "r_object_id", "keywords", "authors" }, "dm_cabinet", "left", "0", "r_object_id", new string[] { "0c00301880000104" }, null);
            var table  = dql.ExecuteQuery(select);

            Assert.AreEqual(table.Tables.Count, 1);
            Assert.AreEqual(table.Tables[0].Rows.Count, 1);
        }
        public void Test_DqlQueryBuilder_WithCancelToken()
        {
            CancellationTokenSource sourceToken = new CancellationTokenSource();
            CancellationToken       token       = sourceToken.Token;

            sourceToken.Cancel();

            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder("dmadmin", "@vmware99", "ls_repos");
            DqlDataSource dql = new DqlDataSource(builder.ConnectionString);

            QueryBuilder query  = dql.GetQueryBuilder();
            var          select = query.BuildSql("r_object_id", new string[] { "keywords", "authors" }, "dm_cabinet", "left", "0", "r_object_id", new string[] { "0c00301880000104" }, null);
            var          table  = dql.ExecuteQuery(select, token);


            Assert.AreEqual(table.Tables.Count, 1);
            Assert.AreEqual(table.Tables[0].Rows.Count, 1);
        }
예제 #8
0
        /// <summary>
        /// Texts the documentum.
        /// </summary>
        private void TestDocumentum()
        {
            DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder(txtUserId.Text, txtPassword.Text, btnDataSource.Text);

            builder["Extended Properties"] = txtExt.Text;

            DqlDataSource ds = new DqlDataSource(builder.ConnectionString);

            if (ds.UseExternalQueryEngine())
            {
                ds.TestConnection();
                return;
            }

            using (DqlConnection cn = new DqlConnection(builder.ConnectionString))
            {
                cn.Open();
            }
        }
예제 #9
0
        /// <summary>
        /// Handles the ButtonClick event of the btnDataSource control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="DevExpress.XtraEditors.Controls.ButtonPressedEventArgs" /> instance containing the event data.</param>
        private void btnDataSource_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            if (cbProviders.Text == "Microsoft Excel")
            {
                OpenFileDialog dlg = new OpenFileDialog()
                {
                    Filter = "Microsoft Excel (*.xlsx;*.xls)|*.xlsx;*.xls"
                };
                if (dlg.ShowDialog() == DialogResult.Cancel)
                {
                    return;
                }
                btnDataSource.Text = dlg.FileName;
            }
            if (cbProviders.Text == "Microsoft Access")
            {
                OpenFileDialog dlg = new OpenFileDialog()
                {
                    Filter = "Microsoft Access (*.mdb;*.accdb)|*.mdb;*.accdb"
                };
                if (dlg.ShowDialog() == DialogResult.Cancel)
                {
                    return;
                }
                btnDataSource.Text = dlg.FileName;
            }
            if (cbProviders.Text == "OpenText Documentum")
            {
                if (btnDataSource.Properties.Items.Count != 0)
                {
                    return;
                }

                var           builder = new DqlConnectionStringBuilder(txtUserId.Text, txtPassword.Text, btnDataSource.Text);
                DqlConnection cn      = new DqlConnection(builder.ConnectionString);
                btnDataSource.Properties.Items.AddRange(cn.Catalogs);
                btnDataSource.Text = cn.Catalogs.First();
            }
        }
예제 #10
0
        /// <summary>
        /// Defines the entry point of the application.
        /// </summary>
        /// <param name="args">The arguments.</param>
        static void Main(string[] args)
        {
            ExternalQueryModel model = new ExternalQueryModel(args[0]);

            try
            {
                Console.Write("Executing External Query...\r\n");

                DqlConnectionStringBuilder builder = new DqlConnectionStringBuilder(model.GetConnectionString());
                builder.Password = new string('*', builder.Password.Length);

                Console.Title = builder.ConnectionString;
                Console.WriteLine(builder.ConnectionString + Environment.NewLine);
                Console.WriteLine(model.GetQueryString());

                model.WriteQuery();
            }
            catch (Exception ex)
            {
                model.WriteError(ex);
            }
        }