powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Дополнительная информация списке БД
12 сообщений из 12, страница 1 из 1
Дополнительная информация списке БД
    #40131770
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть ли возможность выводить вместо версии диалекта какую-то другую информацию?
Я бы хотел там видеть версию БД, она у меня хранится в генераторе.
Идеально это было бы реализовать через ibeblock
Для меня отображение версии диалекта бесполезная информация, т.к. никаких других кроме 3 у меня не бывает
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132028
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В свежей версии в блоке события After database connected что-то такое:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
execute ibeblock(
  DatabaseID integer comment 'Internal ID (within IBExpert) of the connected database',
  IsReconnect boolean comment 'Indicates that Reconnect was performed for active database')
returns (
  DBEExtraCaption variant default NULL)
as
begin
  if (DatabaseID = 496) then
  begin
    DBConn = ibec_GetDefaultConnection(); -- собственно коннект к только что подключенной базе
    DBEExtraCaption = '( *** Custom caption *** )';  -- это вместо диалекта синеньким будет висеть
  end;
end
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132031
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

Спасибо, супер.
Есть место где можно это прописать для всех баз (DatabaseID намекает об этом) или каждой базы отдельно?
Сейчас при русской локализации слово "Диалект 3" отображает в исковерканной кодировке. Пока еще скрипт не успел сделать
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132036
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

Установил такой скрипт в After Database Connect

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
execute ibeblock(
  DatabaseID integer comment 'Internal ID (within IBExpert) of the connected database',
  IsReconnect boolean comment 'Indicates that Reconnect was performed for active database')
returns (
  DBEExtraCaption variant default NULL)
as
begin
  DBEExtraCaption = 'test';
end



На версии 2022.2.6.1 ничего не происходит (кроме проблемы с кодировкой)
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132044
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк Евгений

На версии 2022.2.6.1 ничего не происходит (кроме проблемы с кодировкой)


Не скрипт надо мучать, а блок события соответствующий.
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132045
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк Евгений

Есть место где можно это прописать для всех баз (DatabaseID намекает об этом) или каждой базы отдельно?


Ну вот в твоем примере выше будет для всех баз test рисовать.

Шавлюк Евгений

Сейчас при русской локализации слово "Диалект 3" отображает в исковерканной кодировке. Пока еще скрипт не успел сделать


Это поправлю.
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132056
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кодировку поправил.
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132109
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,
Сделал такой скрипт в After Database Connected

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
execute ibeblock(
  DatabaseID integer comment 'Internal ID (within IBExpert) of the connected database',
  IsReconnect boolean comment 'Indicates that Reconnect was performed for active database')
returns (
  DBEExtraCaption variant default NULL)
as
declare variable ver varchar(12);
begin
  DBConn = ibec_GetDefaultConnection();
  ibec_UseConnection(DBConn);

  select rdb$initial_value from rdb$generators where rdb$generator_name = 'GEN_VERSION'
  into ver;
  if (ver is null) then exit;

  DBEExtraCaption = ver;
end



При подключении получаю ошибку

================ ERROR ======================
There is no active connection.

============== STATEMENT ====================
SELECT rdb$initial_value from rdb$generators where rdb$generator_name = 'GEN_VERSION'

При RECONNECT скрипт работает только если есть другая открытая БД
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132150
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк Евгений

При подключении получаю ошибку


Исправил.
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132235
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

После reconnect текст не обновляется пока не стану на соответствующую строку.

Все остальное работает, спасибо.
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132308
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert
Шавлюк Евгений

При подключении получаю ошибку


Исправил.

Не все исправлено

Подключаюсь к БД1, отключаюсь от БД1
Подключаюсь к БД2 получаю ошибку
Код: plaintext
1.
2.
3.
4.
================ ERROR ======================
Cannot perform operation -- DB is not open.

============== STATEMENT ====================
IF  ? containing 'Firebird 3.0'

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
execute ibeblock(
  DatabaseID integer comment 'Internal ID (within IBExpert) of the connected database',
  IsReconnect boolean comment 'Indicates that Reconnect was performed for active database')
returns (
  DBEExtraCaption variant default NULL)
as
begin
  DBConn = ibec_GetDefaultConnection();
  ibec_UseConnection(DBConn);

  sv = ibec_GetConnectionProp(DBConn, 'ServerVersion');
  if (sv containing 'Firebird 3.0') then
    select rdb$initial_value from rdb$generators where rdb$generator_name = 'GEN_VERSION' into ver;
  else
  if (exists(select * from rdb$generators where rdb$generator_name = 'GEN_VERSION')) then
    ver = gen_id(GEN_VERSION, 0);

  if (ver is null) then exit;
  DBEExtraCaption = '('||substring(ver from 1 for 2)||'.'||substring(ver from 3 for 2)||'.'||substring(ver from 5 for 2)||'.'||substring(ver from 7)||')';
end
...
Рейтинг: 0 / 0
Дополнительная информация списке БД
    #40132397
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк Евгений

Подключаюсь к БД1, отключаюсь от БД1
Подключаюсь к БД2 получаю ошибку


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


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