public override void ExecuteQuery()
        {
            string query = GenerateQuery();

            try
            {
                WriteQueryToLog(query);

                ResultDatatable = DatabaseUtils.ExecuteQuery(query);
                Application.Current.Dispatcher.Invoke(new Action(delegate()
                {
                    //if (PbStatus != null)
                    //{
                    //   PbStatus.Maximum = ResultDatatable.Rows.Count;
                    //   PbStatus.Maximum *= 1.1;
                    //   PbStatus.Value = 0;
                    //}
                }));
            }
            catch (Exception e)
            {
                Application.Current.Dispatcher.Invoke(new Action(delegate()
                {
                    CustomMessageBox.Show("Error \r\n" + e.Message, Cons.TOOL_NAME, MessageBoxButton.OK, MessageBoxImage.Error);
                }));
            }
        }