unit ConstUnit; interface uses SysUtils, MySQLUniProvider, Uni, DBAccess, MemDS, Classes, Dialogs, Graphics, dateUtils; const SAVE_ACTION_ADD = 'add'; SAVE_ACTION_UPDATE = 'update'; DEFAULT_PAIENT_BIRTH_DATE = '01.01.1940'; report_error = 1; //1 - ошибки sql не показываются //2 - ошибки sql показываются Begin_conn_login_prompt = false; Begin_conn_username_root = 'root'; Begin_conn_server = 'localhost'; Begin_conn_pass_root = ''; database_name = 'rd'; user_name = 'rd'; user_pass = 'rd_pass'; priv_y_count = 9; //количество привелегий у пользователя базы table_izm_name = 'rd_izmerenia'; table_patient_name = 'rd_patient'; table_param_name = 'rd_param'; table_znacheniya_name = 'rd_znacheniya'; table_points_name = 'rd_points'; MEASURE_FORM_NAME = 'Проведение измрения'; MEASURE_DEVICE_READY = 'Прибор готов к измерению'; MEASURE_GETTING_DATA = 'Получаем данные...'; MEASURE_DECODING_MESSAGE = 'Декодирование посылки...'; begin_caption_error = 'Ошибка при инициализации программы'; Begin_mes_check_first = 'Проверка на первый запуск программы....'; Begin_mes_root_connected = 'Соединение с сервером баз данных установлено!'; begin_mes_fail_connect = 'Невозможно найти сервер базы данных или подключиться к нему.'+#13+ 'Проверьте параметры подключения и запущен ли сервер'; begin_mes_terminate = 'Программа прекращает свою работу...'; begin_mes_second_connect_false = 'Подключение не установлено. Программа завершает свою работу...'; Begin_mes_check_database = '1. Проверяем наличие базы данных...'; Begin_mes_exist_database = ' База данных "'+database_name+'" существует'; Begin_mes_notexist_database = ' База данных "'+database_name+'" не существует!!!'; Begin_mes_create_database = ' Попытка создать базу данных "'+database_name+'"...'; Begin_mes_create_database_sucsess = ' База данных "'+database_name+'" успешно создана!'; Begin_mes_check_user = '2. Проверяем наличие пользователя...'; Begin_mes_check_user_sucsess = ' Пользователь "'+user_name+'" обнаружен'; Begin_mes_check_user_notsucsess = ' Пользователь "'+user_name+'"не обнаружен!!!'; Begin_mes_user_create = ' Попытка создать пользователя "'+user_name+'"...'; Begin_mes_user_create_suc = ' Пользователь "'+user_name+'" успешно добавлен!'; Begin_mes_check_user_priv = '3. Проверяем пользователя "'+user_name+'" на предмет достаточности прав для работы с программой'; Begin_mes_check_user_priv_suc = ' Права пользователя подтверждены!'; Begin_mes_check_user_priv_notsuc = ' Права пользователя не соответствуют заданным. Попытка изменить права...'; Begin_mes_check_user_priv_change = ' Права пользователя успешно изменены!'; Begin_mes_first_stage_complete = 'Первый этап проверки успешно завершен!!!'; Begin_mes_reconnect = 'Устанавливаем повторное соединение с базой данных...'; Begin_mes_reconnect_sucsess = 'Соединение успешно установлено'; Begin_mes_table_pat_exist = ' Таблица '''+table_patient_name+''' для пациентов существует'; Begin_mes_table_izm_exist = ' Таблица '''+table_izm_name+''' для измерений существует'; Begin_mes_table_param_exist = ' Таблица '''+table_param_name+''' для параметров существует'; Begin_mes_table_znach_exist = ' Таблица '''+table_znacheniya_name+''' для значений измерений существует'; Begin_mes_table_points_exist = ' Таблица '''+table_points_name+''' для описания точек существует'; Begin_mes_table_not_pat_exist = ' Таблица '''+table_patient_name+''' для пациентов не существует'; Begin_mes_table_not_izm_exist = ' Таблица '''+table_izm_name+''' для измерений не существует'; Begin_mes_table_not_param_exist = ' Таблица '''+table_param_name+''' для параметров не существует'; Begin_mes_table_not_znach_exist = ' Таблица '''+table_znacheniya_name+''' для значений измерений не существует'; Begin_mes_table_not_points_exist = ' Таблица '''+table_points_name+''' для описания точек не существует'; Begin_mes_table_pat_create = ' Попытка создать таблицу '''+table_patient_name+''' для пациентов... '; Begin_mes_table_izm_create = ' Попытка создать таблицу '''+table_izm_name+''' для измерений...'; Begin_mes_table_param_create = ' Попытка создать таблицу '''+table_param_name+''' для параметров...'; Begin_mes_table_znach_create = ' Попытка создать таблицу '''+table_znacheniya_name+''' для значений измерений...'; Begin_mes_table_points_create = ' Попытка создать таблицу '''+table_points_name+''' для описания точек...'; Begin_mes_table_pat_create_sucsess = ' Таблица '''+table_patient_name+''' для пациентов успешно создана'; Begin_mes_table_izm_create_sucsess = ' Таблица '''+table_izm_name+''' для измерений успешно создана'; Begin_mes_table_param_create_sucsess= ' Таблица '''+table_param_name+''' для параметров успешно создана'; Begin_mes_table_znach_create_sucsess= ' Таблица '''+table_znacheniya_name+''' для значений измерений успешно создана'; Begin_mes_table_points_create_sucsess= ' Таблица '''+table_points_name+''' для описания точек успешно создана'; Begin_mes_keys_create = ' Попытка создания внешних ключей...'; Begin_mes_table_sucsess = 'Второй этап проверки пройден!'; Begin_mes_check_passed = 'ПРОВЕРКА НА КОРРЕКТНОСТЬ ПАРМЕТРОВ СОЕДИНЕНИЯ С БАЗОЙ ДАННЫХ ПРОЙДЕНА!!!'; Begin_mes_program_start = 'Запуск программы...'; ///////////////////////////////////////////////////////////////// /// Сообщения программы /// ///////////////////////////////////////////////////////////////// mess_caption = 'RD Project. БМТ1'; image_size_label = 'Текущий размер: '; add_point_to_database_mes = 'Точка успешно записана в базу данных!'; add_param_to_database_mes = 'Параметр успешно записан в базу данных!'; red_point_in_database_mes = 'Точка успешно отредактирована!'; red_param_in_database_mes = 'Параметр успешно отредактирован!'; del_param_from_database_mes = 'Параметр успешно удален из базы данных.'+#13+ 'Также удалены все измерения этого параметра'; del_point_from_database_mes = 'Точка успешно удалена из базы данных'+#13+ 'Также удалены все измерения, связанные с этой точкой'; add_pat_to_database_mes = 'Информация о новом пациенте успешно записана!'; del_pat_from_database_mes = 'Информация о пациенте удалена из базы данных!'+#13+ 'Также удалена информация о всех измерениях с участием этого пациента'; red_pat_in_database_mes = 'Информация о пациенте успешно отредактирована!'; izm_data_lost = 'Вы уверены, что хотите закрыть окно измерений?'; izm_izm_end = 'Измерение закончилось. Все точки замерены'; izm_caption_message = 'RD_project. Измерение сопротивления БАТ'; del_point_question_mes = 'Вы выбрали удаление точки. При будет удалена '+ 'вся информация об измерениях и значениях параметров, '+ 'связанных с этой точкой. Вы хотите продолжить?'; del_param_question_mes = 'Вы выбрали удаление параметра. При будет удалена '+ 'вся информация об измерениях и значениях параметров, '+ 'связанных с этим параметром. Вы хотите продолжить?'; del_measure_question_mes = 'Вы уверены что хотите удаить всю информацию об измерении?'; del_patient_question_mes = 'Вы уверены что хотите удалить информацию о пациенте. '+ 'Также будет удалена вся информация о его измерениях'; make_defaut_message = 'ВНИМАНИЕ! Все данные после выполнения этой операции будут Уничтожены! Вы уверены в продолжении?'; make_default_dll_error = 'Не найдена библиотека pictures.dll!!!'; ///////////////////////////////////////////////////////////////// /// МЕТКИ и ТЕКСТ В ПРОГРАММЕ /// //////////////////////////////////////////////////////////////// //////////////////////// /// MAIN UNIT // //////////////////////// status_bar_database_connection_exisits = 'Подключение к базе данных: Есть'; status_bar_database_connection_not_exisits = 'Подключение к базе данных: НЕТ'; status_bar_device_connected = 'Состояние прибора: Подключен'; status_bar_device_not_connected = 'Состояние прибора: НЕ ПОДКЛЮЧЕН'; status_bar_number_of_measurments = 'Проведено исследований: '; //Закладка выбора измерений MAIN_UNIT_MEASURE_CHOISE_NOT_SELECTED = 'Измерение не выбрано...'; //Закладка графики main_unit_graphics_compress = 'сжато в '; main_unit_graphics_compress_unit = ' раз'; main_unit_graphics_title_R = 'Сопротивление БАТ, МОм'; main_unit_graphics_title_G0 = 'Проводиость БАТ, 1/Ом*10^6'; main_unit_graphics_title_G1 = 'Проводиость БАТ, 1-ая гармоника, 1/Ом*10^6'; main_unit_graphics_title_G2 = 'Проводиость БАТ, 2-ая гармоника, 1/Ом*10^6'; main_unit_graphics_title_G3 = 'Проводиость БАТ, 3-ая гармоника, 1/Ом*10^6'; main_unit_graphics_title_C = 'Емкость БАТ, нФ'; main_unit_graphics_title_Usm = ''; main_unit_graphics_title_Ism = ''; //// Закладка диагноза summ_left_hands = 'Сумма левой='; summ_right_hands = 'Сумма правой='; summ_hands = 'Сумма рук='; summ_left_legs = 'Сумма левой='; summ_right_legs = 'Сумма правой='; summ_legs = 'Сумма ног='; summ_all = 'Сумма ='; diagnoz_table_unit = 'МОм'; //////////////////////// /// ADMIN UNIT // //////////////////////// params_default_name_opisnie_1 = 'Значения напряжения'; params_default_name_opisnie_2 = 'Значения тока'; params_default_name_opisnie_3 = 'Сопротивление'; params_default_name_opisnie_4 = 'Проводимость'; params_default_name_opisnie_5 = 'Первая гармоника проводимости'; params_default_name_opisnie_6 = 'Вторая гармоника проводимости'; params_default_name_opisnie_7 = 'Третья гармоника проводимости'; params_default_name_opisnie_8 = 'Емкость'; params_default_name_opisnie_9 = 'Напряжение смещения'; params_default_name_opisnie_10= 'Ток смещения'; params_default_name1 = 'U'; params_default_name2 = 'I'; params_default_name3 = 'R'; params_default_name4 = 'G0'; params_default_name5 = 'G1'; params_default_name6 = 'G2'; params_default_name7 = 'G3'; params_default_name8 = 'C'; params_default_name9 = 'Uсм'; params_default_name10= 'Iсм'; point_label_name = 'Точка №:'; param_label_name = 'Параметр №:'; image_size_label_name = 'Текущий размер: '; //////////////////////// /// IZM UNIT // //////////////////////// IZM_STOP_MEASUREMENT = 'Досрочно закончить измерение'; izm_unit_end_measurment_btn_label = 'Закончить измерение'; IZM_UNIT_MEASUREMENT_LABEL = 'Измерение '; //////////////////////// /// DeviceRD UNIT // //////////////////////// devicerd_device_just_connected = 'Прибор подключен. Перезапустите программу'; ///////////////////////////////////////////////////////////////// /// Названия колонок в таблицах // ///////////////////////////////////////////////////////////////// /// Таблицы точек и параметров point_param_num_name = ' Номер'; point_param_name_name = ' Название'; point_param_opis_name_param = ' Описание параметра'; point_param_opis_name_point = ' Описание точки'; /// Таблица пациентов new_izm_num_name = ' №'; new_izm_fam_name = ' Фамилия'; new_izm_name_name = ' Имя'; new_izm_otch_name = ' Отчество'; new_izm_day_name = ' Число'; new_izm_mon_name = ' Месяц'; new_izm_year_name = ' Год'; new_izm_opis_name = ' Примечание'; function mysql_query(used_query:TUniQuery; zapros:String; mode:byte):boolean; function BytesToStr(const i64Size: Int64): string; function GetFileSize(namefile: string): string; function Rounder(Value: extended; Decimals: Integer): extended; function strtst(var Input: string; EArray: string; Action: integer): string; function convert_day(day:integer):string; function convert_month(month:integer):string; function make_date(day,month,year:string):string; procedure ShowMessage(const value : string) ; overload; procedure ShowMessage(const value : integer) ; overload; procedure ShowMessage(const value : extended) ; overload; procedure ShowMessage(const value : boolean) ; overload; implementation uses DataUnit; function make_date(day,month,year:string):string; begin result:=day+'.'+month+'.'+year+'г.'; end; function convert_day(day:integer):string; begin if (day<10) then result:='0'+inttostr(day) else result:=inttostr(day); end; function convert_month(month:integer):string; begin if (month<10) then result:='0'+inttostr(month) else result:=inttostr(month); end; function strtst(var Input: string; EArray: string; Action: integer): string; begin case Action of 1: begin while length(Input) <> 0 do begin if pos(Input[1], EArray) = 0 then delete(Input, 1, 1) else begin result := result + Input[1]; delete(Input, 1, 1); end; end; end; 2: begin while length(Input) <> 0 do begin if pos(Input[1], EArray) <> 0 then delete(Input, 1, 1) else begin result := result + Input[1]; delete(Input, 1, 1); end; end; end; end; end; function Rounder(Value: extended; Decimals: Integer): extended; var j: Integer; A: extended; begin A := 1; case Decimals of 0: A := 1; 1: A := 10; else for j := 1 to Decimals do A := A * 10; end; Result := Int((Value * A) + 0.5) / A; end; function mysql_query(used_query:TUniQuery; zapros:String; mode:byte):boolean; begin used_query.Connection:=SQL_DM.mysql_con; used_query.Active:=false; used_query.SQL.Clear; used_query.SQL.Append(zapros); try if mode=1 then used_query.Active:=true else if mode=2 then used_query.Execute; except // end; if (used_query.Active) or (not used_query.Executing) then result:=true else result:=false; end; function BytesToStr(const i64Size: Int64): string; const i64GB = 1024 * 1024 * 1024; i64MB = 1024 * 1024; i64KB = 1024; begin if i64Size div i64GB > 0 then Result := Format('%.2f GB', [i64Size / i64GB]) else if i64Size div i64MB > 0 then Result := Format('%.2f MB', [i64Size / i64MB]) else if i64Size div i64KB > 0 then Result := Format('%.2f KB', [i64Size / i64KB]) else Result := IntToStr(i64Size) + ' Byte(s)'; end; function GetFileSize(namefile: string): string; var InfoFile: TSearchRec; AttrFile: Integer; ErrorReturn: Integer; begin AttrFile := $0000003F; {Any file} ErrorReturn := FindFirst(namefile, AttrFile, InfoFile); if ErrorReturn <> 0 then Result := '' {в случае, если файл не найден} else Result := BytesToStr(InfoFile.Size); {Размер файла в байтах} FindClose(InfoFile); end; //displays a string in a dialog box procedure ShowMessage(const value : string) ; begin Dialogs.ShowMessage(value) ; end; //displays an integer in a dialog box procedure ShowMessage(const value : integer) ; begin ShowMessage(IntToStr(value)) ; end; //displays a float in a dialog box procedure ShowMessage(const value : extended) ; begin ShowMessage(FloatToStr(value)) ; end; //displays a boolean in a dialog box procedure ShowMessage(const value : boolean) ; begin ShowMessage(BoolToStr(value, true)) ; end; end.