|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Обнаружил в программе, написанной с использованием IBX от http://www.visual-t.ru следующую проблему. Есть "пустой" запрос, который используется в разных местах программы. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
В программе выполняются две однотипные операции добавления записи в подчиненные таблицы с записью ID вставленной строки в главную таблицу путем вызова хранимых процедур: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Обычно эти операции выполняются отдельно и в разное время. Но сейчас попробовал выполнить их подряд и при выполнении второй операции в строке Код: pascal 1.
получил сообщение об ошибке: Код: pascal 1.
Т.е., несмотря на выполнение Prepare ищется параметр из предыдущей операции. Сообщение об ошибке указывает на процедуру модуля IBQuery: Код: pascal 1. 2. 3. 4.
В Delphi с FibPlus аналогичный код выполняется без проблем: Код: pascal 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2021, 19:51 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik-, авторЯ уж подумывал ещё раз форкнуть - это было бы здорово! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2021, 19:58 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Мимопроходящий 20.07.2021 13:30, -Rik- пишет: > > Ааа.. Либа, всё понял.. ты кстати, как решил вопрос с динамической подгрузкой/перезагрузкой клиентской либы? переопределяешь заново точки входа, или как в поздних версиях у Джефа - на интерфейсах всё? Там нет интерфейсов, всё проще, библиотека просто подгружается в момент установки соединения, соответственно поиск происходит по указанному пути. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2021, 20:22 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Кошмар... то есть в наличии версия от Эмбы, две версии от сторонних контор и неизвестное количество форков. Напоминает ситуацию с семейством наследников VirtualDub ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 10:20 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
21.07.2021 10:20, Fr0sT-Brutal пишет: > Кошмар... то есть в наличии версия от Эмбы, оно заточено исключительно под IB. потому его никто и не юзает. зы: и код там - говно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 11:36 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik- Я уж подумывал ещё раз форкнуть, т.к. новый апи добавлять времени не хватит. Давай, Юр. С нетерпением ждем твой форк. Две транзакции на один IBDatabase может не так актуально, как динамическая подгрузка клиента. Это самый основной затык :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 11:40 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Мимопроходящий 21.07.2021 10:20, Fr0sT-Brutal пишет: > Кошмар... то есть в наличии версия от Эмбы, оно заточено исключительно под IB. потому его никто и не юзает. зы: и код там - говно. Хз, взял из ХЕ2, чуток подточил для ФБ и юзаю в проде. Код говно, да, но снаружи это не проявляется ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 14:06 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
21.07.2021 14:06, Fr0sT-Brutal пишет: > > Хз, взял из ХЕ2, чуток подточил для ФБ и юзаю в проде. и ты ещё упрекал РИКа в форке Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 14:18 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Мимопроходящий 21.07.2021 14:06, Fr0sT-Brutal пишет: > > Хз, взял из ХЕ2, чуток подточил для ФБ и юзаю в проде. и ты ещё упрекал РИКа в форке Я упрекал? о_О ни в коем разе, просто в них уже черт ногу сломит. Ну а что подточил - без этого они не юзабельны, одна захардкоженная либа чего стоит. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 16:30 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
21.07.2021 16:30, Fr0sT-Brutal пишет: > > Я упрекал? о_О ни в коем разе, просто в них уже черт ногу сломит. > Ну а что подточил - без этого они не юзабельны, одна захардкоженная либа чего стоит. у Джефа были попытки отойти от "генеральной линии Партии". для этого он перевёл все функции клиентской либы на интерфейсы, дабы оная подгружалась по мере надобности, а не в секции Initialization . но довести до ума (с заданием имени библиотеки) так и не смог. возможно ему просто указали на "недопустимость оппортунизма". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 16:46 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Мимопроходящий у Джефа были попытки отойти от "генеральной линии Партии". для этого он перевёл все функции клиентской либы на интерфейсы, дабы оная подгружалась по мере надобности, а не в секции Initialization . но довести до ума (с заданием имени библиотеки) так и не смог. возможно ему просто указали на "недопустимость оппортунизма". Posted via ActualForum NNTP Server 1.5 Переинженерил... простого LoadClientLib(LibPath) хватило бы без всяких извращений с интерфейсами ... |
|||
:
Нравится:
Не нравится:
|
|||
21.07.2021, 18:40 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
21.07.2021 18:40, Fr0sT-Brutal пишет: > Переинженерил... простого LoadClientLib(LibPath) хватило бы без всяких извращений с интерфейсами это не модно! он и работу с Events пытался на интерфейсы перевести. один хрен не работало... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2021, 11:54 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Пробовал ставить ibx от MWA на Lazarus под Linux. При первой попытке на машине отсутствовал FireBird. После установки IBX от MWA, Lazarus не запустился. Удалил папку. Запустил Lazrus, удалил пустые ссылки на IBX. При второй попытке был установлен FB4. Lazarus c IBX запустился. Набросал тестовое приложение, но подключиться к базе из него не удалось. IBExpert к базе подключается, свой IBX тоже подключается. IBX(MWA) так и не подключился у меня. Пробовал экспериментировать с опциями AuthClient, AuthServer, UserManager в firebird.conf, не помогло. В связке Win + Lazarus + Ibx(mwa) + FB4 работает. IBX(mwa) под Linux работает у кого-нибудь? ps. Можно попробовать ещё добавить новые типы в текущий ibx, но не понятно как это всё использовать. Попробовал INT128 привязать, он читается, приходит в формате FB_I128 = array [1..2] of Int64, но как его дальше крутить и чем редактировать не понятно. Так-же точно с другими новыми типами. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 11:12 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Fr0sT-Brutal Кошмар... то есть в наличии версия от Эмбы, две версии от сторонних контор и неизвестное количество форков. Напоминает ситуацию с семейством наследников VirtualDub Есть ссылки? Хочется посмотреть чего там... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 11:18 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik-> INT128 ... array [1..2] of Int64 Они не совместимы что ли? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 12:45 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Гаджимурадов Рустам -Rik-> INT128 ... array [1..2] of Int64 Они не совместимы что ли? В Lazarus есть тип int128rec, но на сколько он совместим с форматом в FB я не знаю. Вообще пока не понятно как 128 битные числа использовать на стороне Lazarus. У меня и надобности такой не было ни когда, поэтому даже не задумывался. Может у кого идеи какие есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 14:15 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik-Вообще пока не понятно как 128 битные числа использовать на стороне Lazarus Точно так же, как и любые другие: переводить в строку и показывать пользователю. Что ещё с числами из БД можно делать?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 14:20 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik- Есть ссылки? Хочется посмотреть чего там... Ссылки на кого? От Эмбы в поставке RTL, от двух контор тут выше (visual-t, насколько я понял, это ты и есть?). А форки все сами для себя клепают)). Свои могу выложить, но не уверен, как там с лицензией - брал за основу эмбовские ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 14:22 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik- IBX(mwa) под Linux работает у кого-нибудь? Последнюю версию не пробовал, но когда-то под 16 убунтой работало. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 14:58 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik- Пробовал ставить ibx от MWA на Lazarus под Linux. При первой попытке на машине отсутствовал FireBird. После установки IBX от MWA, Lazarus не запустился. Удалил папку. Запустил Lazrus, удалил пустые ссылки на IBX. При второй попытке был установлен FB4. Lazarus c IBX запустился. Набросал тестовое приложение, но подключиться к базе из него не удалось. IBExpert к базе подключается, свой IBX тоже подключается. IBX(MWA) так и не подключился у меня. Пробовал экспериментировать с опциями AuthClient, AuthServer, UserManager в firebird.conf, не помогло. В связке Win + Lazarus + Ibx(mwa) + FB4 работает. IBX(mwa) под Linux работает у кого-нибудь? ps. Можно попробовать ещё добавить новые типы в текущий ibx, но не понятно как это всё использовать. Попробовал INT128 привязать, он читается, приходит в формате FB_I128 = array [1..2] of Int64, но как его дальше крутить и чем редактировать не понятно. Так-же точно с другими новыми типами. Чтобы на Лазаре запустился британский ibx, нужно в корень лазаруса положить fbclient.dll/so/dylib соответствующей разрядности и перезапустить среду. Птичку ставить не обязательно. А вот дальше у меня дело не пошло (нина винде, ни под линем). Его компоненты упорно орали, что не могут найти клиента. На мой вопрос, какого х@ра, автор невнятно ответил, что надо либо ставить полноценный сервак как службу, либо указывать в переменных окружения FIREBIRD или чи, как его там. Короче, на тот момент были приоритеты разработки другие, я потому оставил этот вопрос на потом ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 16:45 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Док -Rik- Пробовал ставить ibx от MWA на Lazarus под Linux. При первой попытке на машине отсутствовал FireBird. После установки IBX от MWA, Lazarus не запустился. Удалил папку. Запустил Lazrus, удалил пустые ссылки на IBX. При второй попытке был установлен FB4. Lazarus c IBX запустился. Набросал тестовое приложение, но подключиться к базе из него не удалось. IBExpert к базе подключается, свой IBX тоже подключается. IBX(MWA) так и не подключился у меня. Пробовал экспериментировать с опциями AuthClient, AuthServer, UserManager в firebird.conf, не помогло. В связке Win + Lazarus + Ibx(mwa) + FB4 работает. IBX(mwa) под Linux работает у кого-нибудь? ps. Можно попробовать ещё добавить новые типы в текущий ibx, но не понятно как это всё использовать. Попробовал INT128 привязать, он читается, приходит в формате FB_I128 = array [1..2] of Int64, но как его дальше крутить и чем редактировать не понятно. Так-же точно с другими новыми типами. Чтобы на Лазаре запустился британский ibx, нужно в корень лазаруса положить fbclient.dll/so/dylib соответствующей разрядности и перезапустить среду. Птичку ставить не обязательно. А вот дальше у меня дело не пошло (нина винде, ни под линем). Его компоненты упорно орали, что не могут найти клиента. На мой вопрос, какого х@ра, автор невнятно ответил, что надо либо ставить полноценный сервак как службу, либо указывать в переменных окружения FIREBIRD или чи, как его там. Короче, на тот момент были приоритеты разработки другие, я потому оставил этот вопрос на потом ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 17:44 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
-Rik-, По-хорошему, ему бы демку простую с ошибками состряпать. Он - товарищ очень упертый и читает сообщения избирательно. Увы, пока в больничке, даже практически попробовать помочь разобраться не могу :( ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2021, 20:08 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Принесли ноут, начал ставить. Парень 6 nil-аргументов потерял :) https://forum.lazarus.freepascal.org/index.php/topic,55285.msg413012.html#msg413012 Ладно. Исправили, смотрим дизайнер кнопка Database задизайблена, путей к клиенту нету (только в дизайнере), попытка теста коннекта выдает ошибку. Смотрим дизайнер * имя БД надо сразу писать с протоколом и портом * зато путь до клиента уже есть * LoginPrompt даже при снятой галке вызывает диалог его запроса * имя, пароль, чарсет автор стыдливо засунул в параметры Попытка чекнуть свойство connected вызывает то же унылое окно с ошибкой. Честно говоря, я в недоумении о_О ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2021, 17:22 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
Док, гм. - кнопка browse задизаблена т.к. указан коннект remote, а понимать что там localhost и это тот же комп оно не обязано. Собственно, да - логика лишняя и дурацкая, не надо там было вообще никогда ее дизаблить. - в isc_attach_database передается полная строка коннекта, там нет разделения на сервер, порт и путь. Разделение в диалогах коннекта - плюшка для удобства, перед коннектом все эти части собираются в одну строку, и она передается в АПИ ФБ. Поэтому полная строка в databaseName - это норм. Кстати, что за порт 330764 - вроде же номера портов не больше 65535 могут быть? И localhos/330764 - тоже недопис. Насчет "имя пароль и чарсет" - они и так в исходном IBX в параметрах, и всегда там были. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2021, 21:55 |
|
Lazarus + IBX
|
|||
---|---|---|---|
#18+
kdv, экзотичесий порт = версия + разрядность. Проверял на gbak - все робит без проблем. Про localhos t - да, посмотрел, поправил - картина та же. Вообще, я разочарован в майнтейнере. Понима. опенсорс - но такой кустарщины даже я себе не позволяю. С тоской ФИБы вспоминаются - вот уж, действительно, все познается в сравнении. Пока буду юзать последний форк от Юрия Копнина (ака Rik), возможно попробую снова на UIB пересесть. Последние Zeos абсолютно неюзабельные с кучей AV в дизайнтайме. Про встроенный в Лазарь IBConnection даже говорит не хочется :( ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2021, 10:08 |
|
|
start [/forum/topic.php?fid=58&msg=40085179&tid=2036774]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 146ms |
0 / 0 |