|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.12.2009, 13:40 | #1 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
DBLookUpCombobox эксепшн на Insertе с KeyValue назначенной вручную
Про устройство есть карточка для редактировании ячейки таблички, в ней кол-во DbLookupComboboxов равное кол-ву полей, есть один CardDataSource на карточку - он в св-ве DataSource у каждого dblookupcomboboxа, для каждого комбобокса создается свой ListSource у которого в DataSet своя отдельная Query, Insert соответственно производится вызовом CardDataSet.Insert() (CardDataSet - это TIbDataSet в св-ве DataSet у CardDataSource)
На CardDataSet.Insert() при наличии дефолтных значений у двух полей (X, Y поля отчета), то есть у двух DBLookUpComboboxов заранее установленные валидные KeyValue и их Enabled = false выдает ошибку вида field '<name_of_the_field>' must have a value. Что интересно при Post() такого не происходит и данные доходят нормально. Как решить подобную проблему? Клики мышкой в области предлагать только если иначе никак (вроде бы пробовал сообщение о нажатии мышкой отправлять, мне говорили что нельзя, исключение выдавалось, может я тогда при Enabled = false делал), а вообще компонент достаточно закрытый и достать оттуда что-нить сложно (Text и куча другого read only или private) P.S. еще пробовал перед Insert FieldByName('<field_name>').Value присваивать соответствующие Value но на Инсерте все равно ошибка (эксепшн)
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
14.12.2009, 14:19 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
А текст "у двух DBLookUpComboboxов" высвечивается или они пустые стоят?
Думается, что как раз из-за их Enabled = false и выдает ошибку... З.Ы. У меня 7-ка, так что по поводу 2006-й не помогу... Последний раз редактировалось mihali4; 15.12.2009 в 13:49. |
15.12.2009, 07:23 | #3 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
текст высвечивается, то есть компонент понимает что надо отбражать что как будто что-то выбрали, но вот на именно инсерте говорит что ничего не знаю, поле не найдено. Дело не в Enabled точно, проверял.
А вообще подскажите как заставить Delphi 2006 заходить (останавливаться на) брейпоинтах ил эксепшенах такого рода. Был бы очень признателен, ибо кучу раз видел в нете отсылы к Дельфи7 и соответсвующему пункту настроек, а вот применительно к 2006ой не нашел.
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
Последний раз редактировалось joker; 15.12.2009 в 08:18. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вычисление квадратного корня вручную | 6AZblJlb | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 8 | 16.11.2011 04:02 |
Вручную собрать проект C++ Builder | dcLout | Софт | 0 | 14.10.2009 13:35 |
PostMessage программно и вручную | YuraL | Win Api | 5 | 12.03.2009 07:54 |
Как вручную перемещать индикатор в DBGrid | PilGrim | БД в Delphi | 5 | 04.01.2009 18:43 |
Копирование *.exe вручную | v01umE | Общие вопросы C/C++ | 4 | 06.07.2008 20:06 |