Rambler's Top100

(c)2009-2017 openinfotech.ru

СУБД HyTech

Документация

/*------------------------------------------- [+] - Добавлено новое [-] - Исправлена ошибка [*] - Корректировки и изменения Известные проблемы: При вставке текста из буфера не всегда отрабатывает отрисовка текста. Проблема связана с новой версией стороннего компонента (редактора SynEdit). Если после вставки видим нечто странное - переключите закладки или сверните/разверните окно программы. --------------------------------------------*/ 15.09.2009 1.2.1.245 ---------- [+] Пункт "Preprocess and Exec Files" в меню папки. Парсинг и исполнение файлов только этой папки. 05.08.2009 1.2.0.242 ---------- [*] При закрытии закладки в редакторе активной становится предыдущая закладка. [+] Добавлен пункт контекстного меню закладки "Copy path to clipboard": копировать в буфер обмена полный путь к файлу, открытому на этой закладке. 15.05.2009 1.2.0.241 ---------- [*] Дополнен HTSQL.chm [*] Если даётся команда на выполнение запроса, и в это время отображается результат предыдущего запроса, то HTW запоминает ширину, видимость и положение столбцов текущего результата. После выполнения команды (если в запросе участвовали те же таблицы, что и в предыдущем) параметры отображения будут восстановлены. Это удобно, если после настройки столбцов нужно выполнить тот же запрос, но, например, с другими условиями. Если настройки сохранять не нужно, то сначала закройте текущий результат (Ctrl+Q), а потом выполняйте новый. [*] Если локальный комментарий (//# или /*#) начинается с начала строки, то пустая строка на его месте в результат не попадает; иначе строка сохраняется, а убирается только комментарий: //---------- select * from TABLE //# local comment order by NAME; //---------- будет преобразовано в: //---------- select * from TABLE order by NAME; //---------- и //---------- select * from TABLE //# local comment order by NAME; //---------- будет преобразовано в: //---------- select * from TABLE order by NAME; //---------- 15.05.2009 1.2.0.240 ---------- [*] Обновлён HTSQL.chm и редактор SQL теперь "понимает" новые ключевые слова. 30.04.2009 1.2.0.239 ---------- [*] Если текст на закладке не включён ни в какой проект, препроцессор использует определения текущего проекта. [+] Опция "Auto Scroll" в окне протокола. 02.04.2009 1.2.0.238 ---------- [*] При вставке списка полей в текст поля разделяются не только запятой, а запятой и пробелом. 02.04.2009 1.2.0.237 ---------- [*] Подчистки в интерфейсе. 23.03.2009 1.2.0.235 ---------- [-] В случае, если параметром одной прагмы, взятой в кавычки, указана другая, без кавычек: #"Name"(#Pragm) подставляемое тело не бралось в кавычки. 20.03.2009 1.2.0.234 ---------- [-] Открытый в редакторе "Global #use" (см. предыдущий комментарий) не менялся при смене текущей конфигурации проекта (Combobox на ToolBar'е). 18.03.2009 1.2.0.233 ---------- [+] Глобальные для проекта определения (Project->Options->Global #use) можно открыть на закладке редактора (Alt+F11 для текущего проекта). 13.03.2009 1.1.7.232 ---------- [+] На гриде результата и в таблице можно управлять видимостью столбцов. Вызов диалога - Ctrl+L. Также доступно быстрое перемещение по столбцам, вызов режима - Ctrl+G. [-] Исправлены ошибки в shortcuts.txt 10.03.2009 1.1.6.231 ---------- [*] Корректировка препроцессора. Препроцессор более не пытается убирать "лишние" пробелы и переводы строк вокруг прагм, так как использование управляющего символа "\" даёт более предсказуемый и управляемый результат. 06.03.2009 1.1.6.230 ---------- [*] Корректировка препроцессора. Ранее символ "\" использовался для определения многостроковых #def. Потом, для большего удобства, были введены операторные скобки для #def: #{ и #}, а "\" продолжал работать по-старому. Теперь символ "\" дополнительно выполняет операцию "пропустить все последующие пробельные символы", а, если до конца строки непробельных символов нет, то перевод строки также пропускается. Пример: //=============== #def A #{ \ 123\ \ 456 #} //--------- #A //=============== результат: //=============== //--------- 123456 //=============== 04.03.2009 1.1.6.228 ---------- [*] Подчистки интерфейса. 26.02.2009 1.1.5.225 ---------- [+] Предопределённые прагмы добавлены в список, выпадающий в редакторе по Ctrl+Space. [*] Модифицирован алгоритм работы по нажатию в редакторе Ctrl+Enter на идентификаторе. Теперь последовательность следующая: - если под курсором полное имя файла, файл (если существует) будет открыт. Иначе: - если под курсором идентификатор: файл с именем "идентификатор".(sql|mac) ищется в составе проекта текущего файла или (если текущий файл не в проекте) в составе текущего проекта. Если найден - открывается. Иначе: Если подключение к БД установлено, в БД ищется таблица с таким именем. Если найдена - открывается. Иначе (если ни одно условие не выполнено или ничего не найдено), открывается диалог выбора файла. Подробности относительно полного имени файла: если у файла не указано расширение, ищется сначала файл *.sql, затем - *.mac. Путь к файлу может быть указан как текстовая строка SQL или непосредственно. В последнем случае в пути и имени файла не должно быть пробелов и пр. запрещённых символов. Разделителями могут быть: одинарный слэш "/", обратный слэш "\" и двойной обратный слэш "\\". Можно произвольно смешивать разные разделители в одном имени. [*] Прагмы #include и #use, если у файла не указано расширение, сначала ищут файл с расширением *.mac, если такой не найден - с расширением *.sql. [+] Добавлена пакетная обработка препроцессором файлов, включённых в проект (*.mac и *.sql). Обработка вызывается через меню или горячей клавишей Ctrl+F9 (для активного проекта). По контекстному меню в дереве проекта можно вызывать пакетную обработку для какого-либо поддерева. Результаты обработки записываются в файлы с теми же именами, что и исходные, с расширением *.sql. В свойствах проекта можно указать корневой каталог для результатов. В этом каталоге будут созданы подкаталоги согласно пути исходного файла в виртуальном дереве проекта, и результаты сохранятся по соответствующим подкаталогам. Если в свойствах проекта каталог не указан, или такой каталог не существует, будет вызван диалог выбора каталога. Если указанный каталог не существует, он будет создан. Если в свойствах проекта указано "Очищать выходной каталог", то перед обработкой выходной каталог будет очищен от содержимого. Во избежание несчастных случаев рекомендуется указывать заведомо оригинальное имя выходного каталога. [+] Свойства проекта, опции пакетной обработки: - обрабатывать файлы "*.sql"; - обрабатывать файлы "*.mac"; - выполнять каждый результат обработки; - команда Shell, которую нужно выполнить после успешного окончания обработки. Используйте в этой строке макроподстановки: - $Home : каталог проекта; - $Prj : имя файла проекта; - $Out : выходной каталог. При пакетной обработке порядок обхода дерева проекта следующий: сначала обрабатываются сверху вниз все файлы в каталоге, затем (в том же порядке) обрабатываются подкаталоги. [+] Новая директива #NoUnit: файл, в котором встречается это выражение (в любом регистре), игнорируется при пакетной обработке. Выражение действует только на свой файл: если в файле "А" есть директива #NoUnit и этот файл включён в файл "В" (директивой #use или #include), то файл "В" будет обработан нормально (если, конечно, сам не содержит #NoUnit). [+] Новые пункты меню и кнопка на tool bar: - "Выполнить пакетную обработку (Ctrl+F9)"; - "Выбрать группу настроек пакетной обработки"; - "открыть каталог проекта (Ctrl+H)"; - "открыть выходной каталог пакетной обработки (Shift+Ctrl+H)". Внешняя программа для открытия каталогов задаётся в общих настройках. Если ничего не задано, вызывается проводник Windows. 09.02.2009 1.0.5.219 ---------- [*] В подсветку синтаксиса добавлены новые функции сервера: - int htIsDba(string user) - void htTerminateSession() 23.01.2009 1.0.5.218 ---------- [*] Мелкие подчистки. [+] В просмотре представлений PROCEDURES и TRIGGERS можно вызвать декомпиляцию процедуры (триггера) или поиск соответствующего SQL в каталогах "Library Path" (F3 и Ctrl+F3 соответственно). [*] Если текст на закладке редактора не имеет файла на диске (новый текст), или имеет изменения относительно файла, то при вызове "Shell Context Menu" (через контекстное меню закладки или Ctrl+MouseRight на ней) текст сохраняется во временном файле и Shell Context Menu вызывается для этого временного файла. 23.10.2008 1.0.5.217 ---------- [-] Комбинация Alt+Shift+Up|Down вместо выделения строк выполняла сортировку. 09.10.2008 1.0.5.216 ---------- [*] Мелкие подчистки. Подсветка синтаксиса и SQL-препроцессор дополнительно понимают последовательности: //# и /*# как локальный комментарий (такой комментарий не попадает в результат работы препроцессора). 16.07.2008 1.0.5.215 ---------- [-] Если приложение было минимизировано, при LogOff или ShutDown системы возникала ошибка о невозможности сфокусировать окно. 07.05.2008 1.0.5.213 ---------- [-] При выгрузке записей в виде SQL на новую закладку полученный текст не сохранялся по командам Save и SaveAs. 23.04.2008 1.0.5.212 ---------- [-] ошибка при открытии некоторых системных папок на закладке BASE. [+] при просмотре таблицы можно дополнительно обирать recno. [+] Кнопка "Refresh" на панели инструментов. 18.03.2008 1.0.5.209,210 ---------- [-] не всегда отображалась иконка на TaskBar [+] если выполняется долгий запрос, попытка завершить приложение приведёт (через подтверждение) к принудительному отключению от БД. Это позволит сохранить все необходимые файлы. 14.03.2008 1.0.5.208 ---------- [-] прагма #include не всегда корректно работала с #def включаемого файла. 30.01.2008 1.0.5.207 ---------- [+] При импорте данных можно выбрать Excel или OpenCalc. 18.01.2008 1.0.5.206 ---------- [*] Ctrl+F12 теперь работает несколько иначе: если есть подключение к серверу, то выполняется отключение, иначе - подключение к первому в списке истории подключений. Т.о., чтобы переподключиться достаточно два раза нажать Ctrl+F12. [+] При экспорте данных можно выбрать Excel или OpenCalc. [-] Мелкие ошибки при экспорте в эл. таблицу. 02.05.2007 1.0.5.205 ---------- [-] При переключении закладок могла отказать сортировка столбцов. [-] Исправлено поведение переключателя "Результат на всё окно" (Alt+Enter): если был включён режим "на всё окно", то при завершении программы он запоминался и восстанавливался при следующем запуске, но результат открывался всё равно "с разделением окна". [+] Опция в настройках "Переводить фокус на результат после выполнения запроса". По-умолчанию включена. Если выключить, фокус ввода не будет переходить на сетку с результатами, а останется в редакторе. [+] При подстановке списка полей таблицы (Shft+Ctrl+L), если имя таблицы не понятно по контексту, отображается диалог выбора таблицы. Теперь в этом диалоге имя таблицы можно указать с алиасом: нажать "пробел" (в строке с именем появится символ #149) и ввести далее идентификатор. В редактор будет подставлен список полей таблицы (текущей в списке) в формате "flias.FieldName". 20.03.2007 1.0.5.204 ---------- [-] Не работало добавление записей при просмотре таблицы при локальном подключении (ошибка -23). Исправление затронуло открытие таблиц HyTech вне подключенной БД (как файлов - File\Open): если путь к таблице длиннее 80-ти символов, будет ошибка открытия таблицы. Ограничение касается только локального подключения, При работе с сервером путь может быть любой длины. 20.03.2007 1.0.5.202 ---------- [-] Не работал импорт из Excel и текста при локальном подключении, ошибки импорта текста. [-] После отработки запроса, если нет результатов, информация о времени выполнения (в строке состояния) очищалась. 13.03.2007 1.0.5.201 ---------- [-] Несколько "глюков" при работе с локальными таблицами. [+] Кнопка "OEM" при просмотре таблиц. 07.03.2007 1.0.5.200 ---------- [-] DoubleClick на узле, для которого уже есть закладка в редакторе, не активировал эту закладку. 01.03.2007 1.0.5.199 ---------- [+] Файл с неизвестным приложению расширением открывается как текстовый. [-] Аберрации в поведении DbLink узлов и мелкие подчистки. 27.02.2007 1.0.5.197 ---------- [+] Импорт текста в БД, из файла (меню "DB") и из окна редактора (popup menu). [*] Горячие клавиши F5 и F6 поменялись местами: F5 в Windows стандартно используется как Refresh; [*] "По просьбе трудящихся" Ctrl+N и Ctrl+Shift+N поменялись местами: Ctrl+N создаёт новое окно редактора, не добавляя файл в проект, а Ctrl+Shift+N - добавляет в проект. 08.02.2007 1.0.4.196 ---------- [-] После добавления записи макро "слетела" текущая позиция в строке состояния. [-] При просмотре таблицы не всегда отображался список триггеров. 31.01.2007 1.0.4.195 ---------- [+] Шаблоны (Code templates) в редакторе SQL (Ctrl+J). Сами шаблоны сохраняются в файле htw.ect в каталоге программы. [*] Мелкие подчистки интерфейса. 22.01.2007 1.0.3.194 ---------- [+] Макрокоманды в редакторе (запоминает и воспроизводит последовательность действий). 17.01.2007 1.0.3.193 ---------- [-] При локальном подключении (sql или s64) не открывались внешние таблицы (через Open-диалог). [*] В новом Login-диалоге был неправильный порядок обхода полей табуляцией. 11.01.2007 1.0.3.192 ---------- [-] Когда в редакторе курсор находится в пустой строке при некоторых действиях могла возникать ошибка "Range check error". [-] При удалении таблицы при просмотре TABLES таблица удалялась, но из списка и из дерева не вычёркивалась. Также на списке не работали гор. клавиши до первого открытия PoupMenu. [*] Изменился алгоритм работы с паролями к БД (см. здесь комментарий к предыдущей версии): теперь login-диалог имеет два флажка: "сохранять пароль" и "шифровать пароль". Диалог свойств DbLink также получил флаг "шифровать пароль". Флаг "Member DB passwords" задаёт состояние флага "сохранять пароль" в login-диалоге по-умолчанию. 26.12.2006 1.0.3.191 ---------- [-] При выполнении SaveAll выдавались диалоги подтверждения. [+] Сохранение паролей к подключениям: как в истории, так и на ссылках (DbLink) в проекте. Пароли перед сохранением шифруются. Хранение паролей можно отключить в настройках (Options, флаг "Member DB passwords"). Ключ для шифрования (алгоритм RC4) вычисляется на основе указанного пользователем текста. Если хранение паролей включено, а ключевой текст не назначен, то при подключении к БД будет выдан диалог для ввода ключевого текста. Этот текст достаточно указать один раз на сеанс работы; сделать это можно также через меню "DB\Set key for DB passwords". Если ключевой текст переназначить, уже зашифрованные пароли останутся зашифрованными старым ключом. [*] При генерации insert-values запроса по отмеченным данным столбцы, в которых отбираются выражения, теперь не игнорируются. 15.12.2006 1.0.3.190 ---------- [-] При открытии внешней таблицы HyTech (через меню Open), если путь к файлу длиннее некоторой величины, файл не открывался. [+] Если в параметрах ком. строки указана строка подключения (-db:), будет попытка автоподключения. Прочие стандартные опции также работают (-u: -p: -dlg:Y|N - отображать диалог подключения). 10.11.2006 1.0.3.189 ---------- [-] В главном меню не работал пункт "Search". [*] Изменена процедура Save All - теперь диалог аналогичен Close All. [-] При импорте из Excel неправильно обрабатывались ячейки, в которых тип данных "ошибка": импорт заканчивался ошибкой "не могу конвертировать Variant в Integer". 20.09.2006 1.0.3.188 ---------- [-] SqlParser: если прагма определена без параметров, то её вызов с пустым списком параметров вызывал ошибку "too many parameters": #def A zzz #A() 17.08.2006 1.0.3.187 ---------- [*] Время выполнения запроса в StatusBar теперь тоже Autosize [*] Точка-с-запятой в конец запроса теперь автоматически подставляется только при выполнении выделенных фрагментов. 30.07.2006 1.0.3.185 ---------- [*] Если в файле есть несохранённые изменения, текст на закладке оканчивается символом '*'. [-] Меню Transfer\<последние три пункта> имя скачиваемого файла подставлялось с символами "&". Несколько мелких подчисток интерфейса. 26.07.2006 1.0.3.184 ---------- [-] Операции Cut & Copy на больших файлах могли давать ошибку RangeCheckError. [*] На пакетных операциях в редакторе (undo, redo, FindReplace) теперь запрещается отрисовка (в т.ч. парных скобок), что заметно ускорило выполнение этих операций. [-] Если в редакторе нижняя строка видна не полностью (по высоте), были ошибки подсветки парной скобки в ней. [-] Команда "Redo" работала только по кнопке на toolbar. 14.07.2006 1.0.3.183 ---------- [-] При редактировании записи при попытке сместиться на соседнюю строку позиционировалось на произвольную. [*] В логе (F10) различается выполнение запроса целиком и выделенной части. 12.07.2006 1.0.3.182 ---------- [+] Импорт выделенной области в таблицу HyTech. Работает на любом списке (Grid) из контекстного меню. Если не выделено ничего - импорт всего списка. [+] Импорт из DBF. Открыть файл Dbf, далее импорт выделенной области. [+] Импорт из Excel. Открыть в Excel нужный документ, выделить данные для импорта, в HTW в главном меню выбрать "Tools\Import from Excel". Данные импортируются в таблицу, у которой все поля типа char(). Данные записываются в формате HyTech, поэтому их можно переливать в нетекстовые поля других таблиц напрямую. 15.05.2006 1.0.2.181 ---------- Datas.pas: если в обработчике SBase.Idle закомментировать // MainWin.Update; то редактор тормозит в процессе выполнения запроса. Какие были глюки с MainWin.Update уже не помню, поэтому переделал по-другому (см. текст). THtSynEdit получил доп. event: OnUpdateMouseCursor (установить вид курсора мыши). В обработчике можно или разрешить inherited, или назначить свой. Используется для запрета переключения вида курсора пока выполняется SQL запрос. 15.05.2006 1.0.2.180 ---------- [*] Мелкие подчистки. Кнопка "New Free Sql" добавлена на тулбар. Вернулся Autosize в ячейки StatusBar'а. 10.05.2006 1.0.2.179 ---------- [*] - Свежий HTSQL.chm и подсветка в редакторе новых SQL функций. [-] - После редактирования записи в списке позиционирование происходило куда угодно, только не на следующую/предыдущую строку. [-] - Ctrl+C снова работает. 05.05.2006 1.0.2.178 ---------- [*] - Более корректно работают операции Cut-Copy-Paste. Решены проблемы с кодировкой символов при копировании в/из других приложений. 04.05.2006 1.0.2.177 ---------- [*] - В подсветку синтаксиса SQL добавлены имена функций для сервера HyTech v 2.5.12.193 и выше. 27.04.2006 1.0.2.176 ---------- [*] - Когда курсор в редакторе находится не на идентификаторе, не работали некоторые режимы вставки текста (список полей, имя таблицы). [+] - настройки режима подсветки скобок добавлены в свойства редактора. Есть три режима: без подсветки; подсвечивать, когда курсор возле скобки; подсвечивать всегда. В самом редакторе режим можно быстро переключить Ctrl+M или через контекстное меню. Такой способ будет действовать только на одно окно редактора и не сохраняется в настройках. 18.04.2006 1.0.2.175 ---------- [+] Добавлена подсветка парных скобок и работа с ними: - Ctrl+[ : найти (назад) ближайшую открывающую скобку, которой нет пары до позиции курсора. - Ctrl+] : найти (вперёд) ближайшую зарывающую скобку, которой нет пары от позиции курсора. - Shift+Ctrl+B - выделить текст между парными скобками, между которых находится курсор. 11.04.2006 1.0.2.174 [+] По Ctrl+Enter в редакторе понимает, если под курсором имя файла с путём. 06.04.2006 1.0.2.173 ---------- [*] Откорректирована работа с буфером обмена. Нормально копирует в и вставляет из других программ русский текст. [*] Добавление файлов к проекту открывает их. 05.04.2006 1.0.2.172 ---------- [+] Добавлено сохранение настроек. Первые настройки: - меню Options\Common->Library Path - меню Project\Options->Search Path первая настройка - глобальная, вторая относится к конкретному проекту. [+] Пункт контекстного меню редактора SQL "Open Table at Cursor" разделён на два: старый "Open Table at Cursor" открывает только таблицу под курсором, и его HotKey теперь Shift+Ctrl+Enter, и новый "Open Table at Cursor" (Ctrl+Enter): пытается найти SQL файл с именем "слово под курсором" сначала в текущем каталоге, потом в каталоге проекта, потом в Project\Search Path, потом в Library Path. [+] Новая кнопка на ToolBar: "Set autoloading DB info" с выпадающим меню, позволяет управлять подгрузкой информации с сервера. Например, при нажатии Ctrl+Space в редакторе ранее с сервера автоматически грузились списки таблиц и хр. процедур; теперь этим можно управлять, расставляя флажки в выпадающем меню. Если кнопку "отжать", это временно запретит все автоподгрузки, если кнопка нажата - действуют флажки в выпадающем меню. [+] Такие же флажки запоминаются в свойствах узлов DbLink в дереве, и в истории подключений. [+] В SQL проекта можно использовать две новых прагмы: - #include(FileName): эквивалентно включению текста файла FileName.sql на место прагмы #include; - #use(FileName): текст файла FileName.sql на место прагмы не подставляется, но препроцессором обрабатывается, результат эквивалентен включению на место #use всех определений (#def) из FileName.sql. 22.03.2006 1.0.2.171 ---------- [-] Вернулись Ctrl+C Ctrl+V Ctrl+X в редакторе, работает Search в главном меню; [+] Добавлен шаблон для update: контекстное меню редактора->InsertText->Update Sql (Shift+Ctrl+U) 21.03.2006 1.0.2.169 ---------- [-] Фильтр при просмотре таблиц нормально работает для полей типа array. Можно не указывать условия, в этом случае подставляется like. Не забывайте ставить "звезду" в конце строки в условии. [-] При экспорте в DBF и Excel дублировались строки. [+] В контекстном меню закладки есть пункт "Shell context menu" - вызывает контекстное меню Windows для этого файла. Если нажать правую кнопку мыши на закладке, удерживая Ctrl, это меню будет вызвано сразу. 24.08.2005 ---------- [-] Фильтр при просмотре таблиц нормально работает для даты. Можно не указывать условия, в этом случае условие подставляется в зависимости от типа поля (likecase для строк и '=' для прочих). Значения для строковых полей берутся в кавычки автоматически. 30.09.2004 rev 33 ---------- [*] Select All во всех Grids 29.09.2004 rev 29 ---------- [+] Ещё экспорты: dbf & txt 27.09.2004 rev 28 ---------- [+] Export to Excel [+] Download files 30.08.2004 ---------- [-] Не всегда закрываемый модуль попадал в MRU. [*] Download ещё немного приблизился к идеалу. [-] При активизации приложения, если какие-либо открытые файлы изменились, выдавался запрос на перечитывание файла, но само приложение не активировалось. 23.07.2004 ---------- [-] Через popupmenu закрывалась всегда текущая закладка [-] PopupMenu "Refresh" на папке "Tables" не перечитывал список таблиц. 19.07.2004 ---------- [+] Обработка выделенной области EhGrid. Пока только генерация в Clipboard операторов Insert..values для каждой выделенной строки на гриде просмотра данных таблицы. Выделить область (Shift+стрелки или мышью) и PopupMenu->Selection->Ins Sql to Clipboard 08.06.2004 ---------- [+] проверка "File modified. Reload?" при активизации приложения.