Exemple #1
0
        private void AnalyzeQuery()
        {
            try
            {
                Cursor.Current = Cursors.WaitCursor;
                btnOK.Enabled  = false;

                OracleQuery oracleQuery = OracleQueryAnalyzer.Analyze(rtSQL.Text, tbConnectionString.Text, true);

                if (oracleQuery != null)
                {
                    if (oracleQuery.ParseErrors.Count == 0)
                    {
                        if (oracleQuery.ParseWarnings.Count > 0)
                        {
                            Cursor.Current = Cursors.Default;

                            foreach (string warning in oracleQuery.ParseWarnings)
                            {
                                MessageBox.Show(warning, "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            }
                        }

                        queryHelper.UpdateQuery(CurrentQuery, oracleQuery);

                        ShowQueryInformation();

                        if (IsEditable)
                        {
                            btnOK.Enabled = true;
                        }
                    }
                    else
                    {
                        Cursor.Current = Cursors.Default;

                        foreach (string error in oracleQuery.ParseErrors)
                        {
                            MessageBox.Show(error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Compile Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }

            System.Windows.Forms.Application.DoEvents();
        }
        public void CompileQuery()
        {
            IsQueryCompiled = false;

            try
            {
                OracleQuery oracleQuery = OracleQueryAnalyzer.Analyze(rtSQL.Text, tbConnectionString.Text);

                if (oracleQuery != null)
                {
                    if (oracleQuery.ParseErrors.Count == 0)
                    {
                        if (oracleQuery.ParseWarnings.Count > 0)
                        {
                            foreach (string warning in oracleQuery.ParseWarnings)
                            {
                                MessageBox.Show(warning, "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            }
                        }

                        MetaManagerServices.Helpers.QueryHelper.UpdateQuery(Query, oracleQuery);

                        ShowQueryInformation();
                    }
                    else
                    {
                        foreach (string error in oracleQuery.ParseErrors)
                        {
                            MessageBox.Show(error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }

                    IsQueryCompiled = true;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Compile Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }