• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Помогите разобраться

  • Автор темы Автор темы pol_g
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
P

pol_g

На форме есть грид и как датасорс к нему указан запрос (TIBQuery). После выполнения запроса ДБГридЕх забивается данными, но если с этой формы вызвать другую и та в свою очередь тоже выполнит другой запрос то после выполнения второго запроса Грид обнуляется. Просветлите господа в чём дело.
Данные сразу из запроса идут в Грид без посредничества датасета.
 
Если второй запрос закрывает трансакцию (commit или RollBack), то первый запрос закроется автоматически (да и любой другой, который открыт используя туже трансакцию).

А вообще, сложно что-то сказать... мало информации.
1. Используете ли Вы IBTransaction для запросов? Что указано у обоих IBQuery.Transaction?
2. Как закрывается второй запрос?
3. Редактируются ли данные во второй форме?
 
<!--QuoteBegin-Sir Alex+2:09:2005, 15:51 -->
<span class="vbquote">(Sir Alex @ 2:09:2005, 15:51 )</span><!--QuoteEBegin-->Если второй запрос закрывает трансакцию (commit или RollBack), то первый запрос закроется автоматически (да и любой другой, который открыт используя туже трансакцию).

А вообще, сложно что-то сказать... мало информации.
1. Используете ли Вы IBTransaction для запросов? Что указано у обоих IBQuery.Transaction?
2. Как закрывается второй запрос?
3. Редактируются ли данные во второй форме?
[snapback]24421" rel="nofollow" target="_blank[/snapback]​
[/quote]
1. Да
2. Одна и таже транзакция
3. Данные редактируются во второй форме
 
<!--QuoteBegin-pol_g+2:09:2005, 15:16 -->
<span class="vbquote">(pol_g @ 2:09:2005, 15:16 )</span><!--QuoteEBegin-->1. Да
2. Одна и таже транзакция
3. Данные редактируются во второй форме
[snapback]24424" rel="nofollow" target="_blank[/snapback]​
[/quote]

тогда... переделаю свою фразу:
Второй запрос закрывает трансакцию (commit или RollBack), в следствии чего, первый запрос закрывается автоматически так ему для работы нужна активная трансакция.

Решение:
Используйте разные трансакции. Т.е. надо создать несколько IBTransaction.
Если второй запрос влияет на выводимые данные первым, то первый запрос придется переоткрывать
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab