Произошли ошибки во время выполнения многошаговой операции. Проверьте

Тема в разделе "Delphi - Базы данных", создана пользователем -, 9 сен 2011.

Наш партнер Genesis Hackspace
Статус темы:
Закрыта.
  1. Гость

    Доброго дня!
    Имеется база на Аccess, в базе три таблицы. Решалась задача заполнения одной таблицы данными из двух других. Решалась средствами ADO Delphi. На ADOConnection висят соответственно три ADOTable, ADOSource и DBGrid. На OnDblClick в DBGrid повесил процедуру для взятия данных из двух таблиц по условиям и помещения их в целевую таблицую. Где-то 4-5 раз клацаю, данные переносятся, всё путём отрабатывает. Далее вылетает ошибка:

    "Произошли ошибки во время выполнения многошаговой операции. Проверьте значение всех состояний"

    В и-нете ничего путного не нарыл. Буду искать ещё, но может кто-то уже сталкивался? Есть ли простые решения?
     
  2. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    а зачем на OnDblClick вешать - нажатие отдельного баттона проще отследить+ можно мемо повесить для логгирования?
    Навскидку, например, если данные подтягиваются для текущей строки то можешь совпадать ключ в новой таблице, либо в процессе сохранения несовпадают типы. Возможно есть хранимые процедуры или связи в самой БД которые конфликтуют с данными.
     
  3. Гость

    Спасибо за ответ, обмозгую
     
  4. Гость

    а как вытаскиваешь данные и вставляешь?
     
  5. perceptron

    perceptron Гость

    Если память не изменяет ошибка многошаговой операции - это косяк драйвера ADO.
    Просто клацаешь слишком быстро - и ADO не успевает обработать предыдущую обработку как уже надо начинать следующую. Заведи флаг занятости - пока предыд. не обработается не заноси следующую.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей