Exemplo n.º 1
0
        private async void CheckDbConnection()
        {
            List <string> emptyStrings = new List <string>();

            if (string.IsNullOrEmpty(MisDbAddress))
            {
                emptyStrings.Add("Адрес БД МИС Инфоклиника");
            }
            if (string.IsNullOrEmpty(MisDbName))
            {
                emptyStrings.Add("Имя базы");
            }
            if (string.IsNullOrEmpty(MisDbUserName))
            {
                emptyStrings.Add("Имя пользователя");
            }
            if (string.IsNullOrEmpty(MisDbUserPassword))
            {
                emptyStrings.Add("Пароль");
            }

            if (emptyStrings.Count > 0)
            {
                string msg = "Для проверки подключения к БД необходимо заполнить:" + Environment.NewLine +
                             string.Join(Environment.NewLine, emptyStrings);
                MessageBox.Show(msg, string.Empty, MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }

            await Task.Run(() => {
                using (FirebirdClient firebirdClient = new FirebirdClient(
                           MisDbAddress,
                           MisDbName,
                           MisDbUserName,
                           MisDbUserPassword)) {
                    DataTable dt = firebirdClient.GetDataTable("select date 'Now' from rdb$database");

                    string msg = "Подключение к БД: ";
                    MessageBoxImage image;
                    if (dt.Rows.Count == 1)
                    {
                        msg  += "Успешно";
                        image = MessageBoxImage.Information;
                    }
                    else
                    {
                        msg  += "Ошибка";
                        image = MessageBoxImage.Error;
                    }

                    MessageBox.Show(msg, string.Empty, MessageBoxButton.OK, image);
                };
            }).ConfigureAwait(false);
        }
Exemplo n.º 2
0
        private static void LoadData(FirebirdClient firebirdClient)
        {
            parameters = new Dictionary <string, object>()
            {
                { "@dateBegin", dateBeginStr },
                { "@dateEnd", dateEndStr }
            };

            Logging.ToLog("Получение данных из базы МИС Инфоклиника за период с " + dateBeginStr + " по " + dateEndStr);

            try {
                dataTableMainData = firebirdClient.GetDataTable(itemReport.Query, parameters, true);
            } catch (Exception e) {
                Logging.ToLog(e.Message + Environment.NewLine + e.StackTrace);
                hasError = true;
            }

            Logging.ToLog("Получено строк: " + dataTableMainData.Rows.Count);
        }