powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Список недоработок и неудобств в IBExpert
19 сообщений из 19, страница 1 из 1
Список недоработок и неудобств в IBExpert
    #39275042
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр, чтобы два раза не вставать, озвучу в одной теме известные мне баги, недоработки и неудобства. Исправлять их или нет - решайте сами. Это то, с чем я как пользователь IBExpert'а сталкиваюсь ежедневно и ежечасно в процессе обычной работы разработчика БД.

Баги. Здесь опишу только один:
1. Самый главный баг, которому уже много лет. При нажатии Ctrl+Space не появляется выпадающий список. Лечится перезаходом в среду. Иногда достаточно сделать пару правок в запросе и список опять перестает появляться. В запущенных случаях приходится перезаходить в IBE каждую минуту. Учитывая открытых окон порядка сотни, постоянный процесс перезахода очень радует.

Недоработки:
1. При раскомментировании ХП в "ленивом режиме", которая до этого была закомментирована в выключенном "ленивом" режиме, не раскомментируется секция декларации переменных. В итоге ХП не компилится, приходится выключать "ленивый" режим и снова раскомментировать.
2. При создании внешнего ключа, не проверяется заполнение таблицы, на которую ссылается ключ. После нажатия на "ОК" выдается
Код: plaintext
1.
2.
3.
4.
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 4, column 12.
(.
И пытаешься сообразить, что пошло не так.
3. IBExpert разрешает снять флаг NOT NULL у поля, входящего в ПК.
4. При создании таблицы или ХП, если хочешь скопировать в буфер обмена название и вместо Ctrl+C нажимается C, по уже никак нельзя вернуть старое название - Ctrl+Z очищает текст.

Неудобства:
1. При создании ВК, нет возможности увидеть, сколько символов занимает имя. Приходится вручную считать количество символов. И так каждый раз, если имя таблицы достаточно длинное.
2. При создании ВК, не указывается, что имя ВК более 31 символа и оно никак не ограничено. Смотришь - вроде все норм, нажимаешь ОК и:
Код: plaintext
1.
2.
This operation is not defined for system tables.
unsuccessful metadata update.
Name longer than database column size.
3. При создании ВК при генерации шаблонного имени нет обрезки до 31 символа. Например, вместо FK_LONGNA_13 создается FK_LONGNAME_13, который приходится ручками обрезать, при этом подсчитывая, сколько символов есть под число.
4. Взаимодействие с стрелкой мыши. Пример: открыт редактор поля, стрелка находится под списком доменов на 40 пикселей ниже. Раскрываешь список по Alt+Down, и выбранным становится не текущий домен, а домен под стрелкой.
5. Список доступных слов по Ctrl+Space. Всякий мусор в виде имен триггеров, индексов и ключевых слов SQL-я (IN, ALL и прочая) вообще не нужен, либо нужен строго определенным лицам. Особенно радуют системные домены RDB$NNN в нем - кому вообще это надо?
В списке нужны только: таблицы, представления, ХП, секвенции, UDF и встроенные функции. Всё.
6. Нет подсветки скобок при редактировании вычисляемого поля. В особо сложных случаях на попытку понять, какой не хватает, уходит куча времени. Там же нет выпадающего списка, как в SQL-редакторе. Часто приходится писать поле в редакторе, и потом уже переносить запрос в само поле.
7. При измененении флага события у триггера, нет предложения о переименовании триггера в связи с изменением его типа.
8. В закладке "Данные" таблицы, при открытии списка для ВК, первой строкой идет запись с выбранным кодом. Я не знаю, кто это придумал, но это очень неудобно. Мало того, что путает (идут ID: 4, 1, 2, 3), так и выбор следующего или предыдущего ID проблематичен.
9. В редакторе таблицы "колонка" показывает сумму NOT NULL у самого столбца и у домена. Это путает - непонятно, откуда пришел этот флаг - из домена или так объявлено у поля. По-хорошему тут должно быть два поля: FIELD NOT NULL и DOMAIN NOT NULL.
10. При Replace Text не указывается длина текста, на который заменяется искомый текст. Для новых имен таблицы и ХП это важно - снова приходится вручную пересчитывать длины, проверяя, сколько еще места осталось.
11. При каждом переименовании таблицы или ХП в редакторе скриптов, приходится сбрасывать галку "Promtp on replace" и "Selected text". Хотя тут очевидно - если выделен однострочный текст длиной в 15 символов, какой там Selected Text?
12. Предупреждение об отсутствии прав на таблицу/ХП. Создал разработчик таблицу и забыл дать права на нее. Об этом он узнает, только когда таблица придет в продакшн и пользователь обратится к ней. Если бы прямо на главной странице было написано: "У таблицы отсутствуют права для пользователей/ролей", это исключило бы вероятность ошибки.

Новый функционал:
1. Шаблоны создания таблицы. Например, есть стандартный справочник. В нем поля ID, NAME, генератор для ID. Дополнительно может быть поле POS. Сейчас приходится или с нуля описывать таблицу, либо брать скрипт создания существующей, переименовывать и создавать генератор.
2. Шаблоны прав ролей. Например, есть две роли - одна только на чтение, вторая на правку таблицы. Сейчас надо при создании каждой таблицы справочника прописывать права ролям. Да, это недолго, несколько кликов. А когда ролей будет с два десятка?
3. Поддержка переименования ХП.
4. Перекомпиляции всех зависимых ХП. Переписал вот ХП, а она используется в ХП на пять уровнях выше. И ходишь пять минут по стеку зависимостей, перекомпилируешь их.
5. Открытие окон и комментирования всех зависимых ХП и триггеров. Обычная операция по изменению списка входных параметров ХП состоит из унылого клацанья по клаве и тыканья мышой.
6. Операция по изменению типа поля, которое требует создания временного поля (например, уменьшение длины строки с 50 до 25 символов).
7. Проверка права вызова для всего стека вызовов ХП для пользователя/роли. Например, SP1 вызывает SP2. У роли ROLE1 есть право вызова SP1, но нет права вызова SP2. Об этом я узнаю, только когда у пользователя произойдет
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39275046
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax> 1. Самый главный баг, которому уже много лет.
CyberMax> При нажатии Ctrl+Space не появляется выпадающий список.
CyberMax> Лечится перезаходом в среду.

Странно, не припомню такого часто.
Может, пару раз разве что.
А вот курсор (сама мерцалка) пропадал
довольно часто, но я думаю это скорее
виндовая бага, а не IBE.

> 5. Открытие окон и комментирования всех зависимых ХП и триггеров.

Поддерживаю. Хотя для этого можно
свой блок забацать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39275055
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамCyberMax> 1. Самый главный баг, которому уже много лет.
CyberMax> При нажатии Ctrl+Space не появляется выпадающий список.
CyberMax> Лечится перезаходом в среду.

Странно, не припомню такого часто.
Может, пару раз разве что.

У меня - пару раз в неделю. В принципе не напрягает, но бага таки есть. Наверное, где-то внутрях компонента, отвечающего за раскраску текста или самого текстового редактора.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39275058
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMaxIBExpert разрешает снять флаг NOT NULL у поля, входящего в ПК.

Этим должна заниматься СУБД. 3.0 этим и занимается. В 2.5 официального способа изменять NOT NULL не было вовсе. Через системные таблицы это грязный хак коим пользовался IBE. В общем если и делать то только для <3.0
CyberMax5. Список доступных слов по Ctrl+Space. Всякий мусор в виде имен триггеров, индексов и ключевых слов SQL-я (IN, ALL и прочая) вообще не нужен, либо нужен строго определенным лицам. Особенно радуют системные домены RDB$NNN в нем - кому вообще это надо?

А вот мне имена триггеров и индексов нужны. Я иногда DDL операторы пишу и не только в редакторе скриптов. Что касается "системных" доменов, то реально они вовсе не системные, хоть и создаются автоматом. Нету у них RDB$SYSTEM_FLAG = 1. Можно конечно попытаться фильтровать по префиксу
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39275060
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисВ общем если и делать то только для <3.0
Да.
Симонов ДенисА вот мне имена триггеров и индексов нужны. Я иногда DDL операторы пишу и не только в редакторе скриптов.
Ок. Тогда сделать настройку с доступными видами метаданных, потому что мне они за ни разу не понадобились, так как скрипт с DDL получаю другими средствами IBE.
Симонов ДенисЧто касается "системных" доменов, то реально они вовсе не системные, хоть и создаются автоматом. Нету у них RDB$SYSTEM_FLAG = 1. Можно конечно попытаться фильтровать по префиксу
Думаю, что есть 100% способ определить такие объекты.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39277362
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax1. Шаблоны создания таблицы. Например, есть стандартный справочник. В нем поля ID, NAME, генератор для ID. Дополнительно может быть поле POS. Сейчас приходится или с нуля описывать таблицу, либо брать скрипт создания существующей, переименовывать и создавать генератор.
+1
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39279336
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДокCyberMax1. Шаблоны создания таблицы. Например, есть стандартный справочник. В нем поля ID, NAME, генератор для ID. Дополнительно может быть поле POS. Сейчас приходится или с нуля описывать таблицу, либо брать скрипт создания существующей, переименовывать и создавать генератор.
+1
Вот уж точно было бы здорово.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39279369
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы чего там, скрипты/блоки разучились писать?
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39279407
mvb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамCyberMax> 1. Самый главный баг, которому уже много лет.
CyberMax> При нажатии Ctrl+Space не появляется выпадающий список.
CyberMax> Лечится перезаходом в среду.

Странно, не припомню такого часто.
Может, пару раз разве что.

у меня при активной работе такого обычно не вылазит, но стоит ненадолго не трогать IBE, поработать в другом окне и вернуться, то очень часто проявляется. Эта проблема время от времени тут поднимается..
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39279789
Го-стхи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор4. Перекомпиляции всех зависимых ХП.
А не легче вообще все ХП перекомпилить?

Добавлю:

1. Popup редакторы описания, вызываемые из грида, не перекодируют строку описания. Хотя отображается она нормально.
2. Окно Script executive, при закрытии окна постоянно выдается предложение сохранить скрипт. В случае получения скрипта из сравнения БД этот запрос, на мой взгляд, излишен.
3. При генерации Script executive пригодилась бы отключаемая опция Decode domains
4. Редактор описания имеет в контекстном меню излишние фичи, унаследованные от редактора кода: bookmarks (ООООчень вряд ли у кого-то в описаниях хранится Война и мир, хотя теоретически такое и возможно), (un)comment (я так и не понял смысла в этой фиче); Copy as RTF (описание все равно не подсвечивается); Format text (просто отделяет каждую букву пробелом); Load to script executive (правда, в теории описание может содержать sql); convert identifiers/keywords (все равно описание не парсится).
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39279843
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpertВы чего там, скрипты/блоки разучились писать?
нет, конечно. Потому notepad ++ - "лучший друг и товарищ" (с) :)
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39279864
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не надо все в кучу валить, я даже разбираться в этой помойке не буду.
Есть конкретные баги - создавайте отдельную тему, с указанием версии эксперта и т.д.
Есть хотелки - тоже отдельную тему.
Желательно перед этим воспользоваться поиском по форуму.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39280872
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

Я как раз и создал одну тему просто для ознакомления вместо тридцати, чтобы потом не было ответа, что лень просматривать и отвечать на десятки топиков. Разбивать пункты на отдельные темы не буду. Если у вас нет интереса даже прочитать текст, я ничего не могу и не буду с этим делать.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39280902
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax,

решил немного прокомментировать твои хотелки.

> 2. При создании ВК, не указывается, что имя ВК более 31 символа и оно никак не ограничено. Смотришь - вроде все норм, нажимаешь ОК и:

не символа, а байт, с символами оно совпадает только если название на английском. В 4.0 будет уже 63 символа.

> 5. Список доступных слов по Ctrl+Space. Всякий мусор в виде имен триггеров, индексов и ключевых слов SQL-я (IN, ALL и прочая) вообще не нужен, либо нужен строго определенным лицам. Особенно радуют системные домены RDB$NNN в нем - кому вообще это надо?
В списке нужны только: таблицы, представления, ХП, секвенции, UDF и встроенные функции. Всё.

А мне значительно больше. Единственное чего бы я видеть не хотел это автоматически создаваемые домены RDB$nnnn

> 2. Шаблоны прав ролей. Например, есть две роли - одна только на чтение, вторая на правку таблицы. Сейчас надо при создании каждой таблицы справочника прописывать права ролям. Да, это недолго, несколько кликов. А когда ролей будет с два десятка?

В 4.0 система прав много разнообразней и проще. Часть вещей с правами можно делать в 10 раз легче.

> 3. Поддержка переименования ХП.

ИХМО, поддержка переименования объектов метаданных должна поддерживаться на уровне Firebird. Сейчас оно есть только для доменов и столбцов таблиц.

> 6. Операция по изменению типа поля, которое требует создания временного поля (например, уменьшение длины строки с 50 до 25 символов).

с учётом зависимостей задача становится мало реальной

> 7. Проверка права вызова для всего стека вызовов ХП для пользователя/роли. Например, SP1 вызывает SP2. У роли ROLE1 есть право вызова SP1, но нет права вызова SP2. Об этом я узнаю, только когда у пользователя произойдет

Жди 4.0. Там это будет не так актуально.

Теперь по поводу автоматической замены в имен в зависимостях при переименовании, не приведи господь к этому. Бездумно коцать тексты десятков ХП, которые в следствии таких замен могут ещё и не правильно работать. Ну его нафиг.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39280940
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> 2. При создании ВК, не указывается, что имя ВК более 31 символа и оно никак не ограничено. Смотришь - вроде все норм, нажимаешь ОК и:

не символа, а байт, с символами оно совпадает только если название на английском. В 4.0 будет уже 63 символа.
Речь не о максимальной длине, а о том, что нет ограничения. Отлично, в 4.0 будет 63 символа. А если дефолтная длина ВК будет 68 символов? Будет ровно та же самая ошибка.

Симонов Денис> 5. Список доступных слов по Ctrl+Space. Всякий мусор в виде имен триггеров, индексов и ключевых слов SQL-я (IN, ALL и прочая) вообще не нужен, либо нужен строго определенным лицам. Особенно радуют системные домены RDB$NNN в нем - кому вообще это надо?
В списке нужны только: таблицы, представления, ХП, секвенции, UDF и встроенные функции. Всё.

А мне значительно больше. Единственное чего бы я видеть не хотел это автоматически создаваемые домены RDB$nnnn
Настройка видов объектов в списке - идеальное решение.

Симонов Денис> 2. Шаблоны прав ролей. Например, есть две роли - одна только на чтение, вторая на правку таблицы. Сейчас надо при создании каждой таблицы справочника прописывать права ролям. Да, это недолго, несколько кликов. А когда ролей будет с два десятка?

В 4.0 система прав много разнообразней и проще. Часть вещей с правами можно делать в 10 раз легче.
В том числе появится применение нескольких ролей одновременно, если я правильно помню. Поэтому буду делать не две роли, как сейчас, а реально по функциональному назначению. Вот тут шаблоны и пригодятся.

Симонов Денис> 3. Поддержка переименования ХП.

ИХМО, поддержка переименования объектов метаданных должна поддерживаться на уровне Firebird. Сейчас оно есть только для доменов и столбцов таблиц.
Согласен. Но пока этого нет, решение проблемы через сторонний инструмент является выходом.

Симонов Денис> 6. Операция по изменению типа поля, которое требует создания временного поля (например, уменьшение длины строки с 50 до 25 символов).

с учётом зависимостей задача становится мало реальной
Это не так. Достаточно проверить наличие отсутствия зависимостей перед операцией (правильно будет их зачистку возложить на разработчика) и можно начинать ее делать. Если что-то не получилось в процессе - ничего страшного не произойдет - почистить можно будет ручками.

Симонов Денис> 7. Проверка права вызова для всего стека вызовов ХП для пользователя/роли. Например, SP1 вызывает SP2. У роли ROLE1 есть право вызова SP1, но нет права вызова SP2. Об этом я узнаю, только когда у пользователя произойдет

Жди 4.0. Там это будет не так актуально.
Ок.

Симонов ДенисТеперь по поводу автоматической замены в имен в зависимостях при переименовании, не приведи господь к этому. Бездумно коцать тексты десятков ХП, которые в следствии таких замен могут ещё и не правильно работать. Ну его нафиг.
Операция опасная. Но вот сходу не могу определить прямо совсем непоправимые последствия.
Кстати, если брать тупую автозамену, то перекомпиляцию ХП и триггеров можно делать в рамках одной транзакции (по типу обычной перекомпиляции списка ХП) с откатом, если произошло исключение.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39280958
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMaxВ том числе появится применение нескольких ролей одновременно, если я правильно помню. Поэтому буду делать не две роли, как сейчас, а реально по функциональному назначению. Вот тут шаблоны и пригодятся.

В 4.0 могут указываться явно при коннекте или меняться через SET ROLE (как сейчас) или их права могут применяться неявно, если они грантуются с ключевым словом DEFAULT. Грубо говоря в последнем случае роль становится аналогом группы.

Кроме того появилась грантовать роли другим ролям. Чем тебе не создание шаблонов.

Это уже сделано.

CyberMax7. Проверка права вызова для всего стека вызовов ХП для пользователя/роли. Например, SP1 вызывает SP2. У роли ROLE1 есть право вызова SP1, но нет права вызова SP2. Об этом я узнаю, только когда у пользователя произойдет

Решил уточнить если тебе интересно конечно.
В 4.0 для ХП, функций, триггеров, пакетов и таблиц появится предложение SQL SECURITY {DEFINER | INVOKER}
Соответственно при указании DEFINER на выдачу прав самой процедуре в большинстве случаев можно забить.

Это тоже сделано, но в основную ветку ещё не перенесено.

CyberMaxНо вот сходу не могу определить прямо совсем непоправимые последствия.

Элементарно же. Замена может заменить одноимённый объект метаданных другого типа. Это даже может скомпилироваться, а вот будет ли правильно работать хз. Короче без ручного контроля может покинуть граблей.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39281248
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисЕдинственное чего бы я видеть не хотел это автоматически создаваемые домены RDB$nnnn

Отключи их ветку в DB Explorer. Там они тебе тоже вряд ли нужны.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39281262
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДокIBExpertВы чего там, скрипты/блоки разучились писать?
нет, конечно. Потому notepad ++ - "лучший друг и товарищ" (с) :)

Можно и так, конечно. Фича "Copy object" в DB Explorer, которую можно заточить под себя, если что, и прочие Apply block to object - это для извращенцев.
...
Рейтинг: 0 / 0
Список недоработок и неудобств в IBExpert
    #39281497
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMaxНапример, SP1 вызывает SP2. У роли ROLE1 есть право вызова SP1, но нет права вызова SP2

Дай SP1 право на выполнение SP2 (а автоматически разве его IBE не даст) и не парься за роли
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Список недоработок и неудобств в IBExpert
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]