Вопрос

Получил Adoquery, который имеет Onnewrecord мероприятие.

В процедуре я стараюсь добавлять данные Automaticy на другой стол. Данные представляют собой несколько строк, которые необходимы и обрабатываются в ClientDataset в случае отмены.

на месте

Unferadoquery.insert;

Я получаю ошибку, что Adoquery не удалось вставить нулю в ненулевое поле. Я в режиме вставки, однако я никогда не просил Delphi пост! Я не найду, почему это посты.

Редактировать: Не могли бы вы помочь мне найти намек на эту проблему?

Некоторые больше разъяснений:

в

Adoquery.onnewrecord ();

начинать

Clienddataset.insert; // Здесь идет до размещения для adoquerypost. где ClientDataset был в состоянии просмотра

конец;

Редактировать:

Эта ошибка не имеет смысла! Посмотрите на трассировку стека:

  • радость
  • новый рекорд
  • мимо

где MyFunc вызывает NewRecord с помощью вставки.

Это было полезно?

Решение 2

Ответ был из соединения между таблицами.

Adoquery.dataSource был установлен набор данных клиента.

Это безумно так много ущерба, и нет намека на Delphi.

Другие советы

Я не слишком знаком с TadoQuery, но я знаю, как отследить ошибку, как это. Во-первых, если у вас его еще нет установленного, перейдите в опции проекта и включите использование DEBUG DCUS под вкладкой Compily, затем запустите полную сборку и запустите ее. Когда вы получаете этот отчет об исключении в отладчике, нажмите «Перерыв», и вы должны заканчиваться внутри кода для TADOQUERY или одного из его подличий. Попробуйте изучить стек вызова. Если вы посмотрите на несколько звонков, вы, вероятно, найдете то, что вы сделали, это назвать что-то еще, которое вызывает пост. Следуйте за следом стека назад, пока вы не достигнете своего кода, и вы получите представление о том, что происходит, и если вы анализируете его, вы должны найти свой способ предотвратить проблему.

Сказав это, позвольте мне сделать быстрое угадание относительно причины вашей проблемы: при вызове вставки на набор данных, если набор данных уже находится в режиме добавления, потому что вы ранее назывались вставить или добавлять и не следите за постом , он позвонит себе по себе, прежде чем настроить новый ряд для вас на работу. Может быть, это то, что с тобой происходит?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top