| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Заполнение константы pError в модуле ADODB.pas |
| Автор: Elflight 23.7.2009, 18:20 | ||
| Здравствуйте! Я дописываю чужую программу (в зависимости от условия должен срабатывать либо старый функционал, либо новый, дописываемый). Мои дописки вызывают ошибку "Неопознанная ошибка", до причин возникновения которой я не могу докопаться :( На форме расположен компонент типа TADODataSet, в типовом модуле ADODB.pas есть следующая стандартная процедура:
При выполнении старого функционала pError = nil, а при выполнении моего - pError содержит указатель на ошибку. Не могу понять, на основании чего заполняется эта константа, отладчик не помогает... Подскажите пожалуйста, куда копать? Сорри, если вопрос глупый - мой опыт работы с Delphi невелик... |
| Автор: niteo 23.7.2009, 20:40 |
| Вообще эта ошибка скорее всего возникает в работе компонента, то есть либо не корректные данные в рунтайме заносишь либо... На самом деле я им и не пользовался, мне и ADOQuery хватало... кстати пишешь что юзаешь TADODataSet а метод из TADOConnection пошешь?. Давай Код в студию. |
| Автор: Elflight 24.7.2009, 08:39 | ||
Кода много... В общих чертах, есть форма GroundContentForm, на ней таблица GroundContentGrid (TDBGridEh) с источником данных CatalogContentDataSource (TDataSource), в свою очередь связанным с CatalogContentDataSet (TADODataSet).
Мои вставки здесь - условия if Data.GetIniParam('use_new_light_version') = 'y'. Если истина, то выполняется мой код. После строки CatalogContentDataSet.Open; выполняются только стандартные процедуры компонентов, и вылетает ошибка. В процедуре PrepareCatalogDataSet() просто удаляются лишние поля из CatalogContentDataSet и лишние колонки из GroundContentGrid. Как я понимаю, трабл возникает из-за несоответствия набора полей. Очень хотелось бы понять, где в коде pError получает свою ошибку, чтобы разобраться из-за чего... |