Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

BeforePost и LookUp поле   Найти похожие ветки 

 
td   (2004-03-22 22:50) [0]

Есть большое количество маленьких дочерних таблиц, привязанных к основной - родительской.
Их структура почти одинаковая (первые три поля везде называются одинаково):
1. Идентификатор
2. Код родительской таблицы
3. Код записи из справочника - для каждого такого поля создано поле LookUp
4. Одно-два числовых поля.

Большинство таблиц связаны с собственными справочниками, некоторые - с одинаковыми.
Каждая из них открывается в одной и той же форме (модальной, которая при закрытии всякий раз уничтожается). В форму передается TTable.
На событие BeforePost стоит обработчик - проверка на дублирование, на целостность.

Так почему открытием выпадающего списка (для выбора значения из справочника) у одной таблицы срабатывает BEFOREPOST?

Причем, если отключить обработку, перед открытием списка и после выбора появляется сообщение об ошибке "TableSPS: DataSet not in edit or Insert mode." А TableSPS - это справочник!!

Отчаявшись найти ошибку в коде, я удалил эту таблицу из датамодуля, перекомпилировал без нее, никаких следов не должно было остаться. Создал заново. Тоже самое.
Потом подумал, может, это глюк DBGridEh - мало ли, сделал именно для этой таблицы свою собственную форму с обычным DBGrid. Тоже самое.

Ко всему прочему, есть дочерние таблицы, имеющие точно такую же структуру, связанные с этим же справочником - и для них все работает без проблем.

Где ошибку искать?
Спасибо!


 
Zacho ©   (2004-03-22 22:58) [1]

Пришли мне свой проект. Всё: исходники, таблицы. Мыло есть в анкете. Не обещаю - но если будет время завтра посмотрю.


 
td   (2004-03-23 17:24) [2]

спасибо, но там большой проект.
И потом, он военный. Типа секретность и все такое %)

Но хотя бы примерно. С чего бы ты начал искать?


 
служивый   (2004-03-23 20:43) [3]

На событие BeforePost стоит обработчик - проверка на дублирование, на целостность.

Проверка делается не с помощью locate?
Если да то таблицу надо после этого перевести в режим редактирования


 
td   (2004-03-23 20:47) [4]


> служивый   (23.03.04 20:43) [3]


Проверка делается с помощью запроса.
Но в чем загвоздка - все прекрасно работает для 30 таких же таблиц, ничего не понимаю


 
служивый   (2004-03-23 21:30) [5]

1 проверь какие еще есть обработчики для этой таблицы
2 поставь прерывание  и пройди пошагово все циклы


 
td   (2004-03-24 19:16) [6]

никаких больше обработчиков нет у этой таблицы, которых бы не было у других.
Т.е. я ее даже специально удалял, чтобы убедиться

с пошаговым все уходит в недра DBGridEh :(


 
служивый   (2004-03-24 20:20) [7]

TableSPS это тавлица из которой берутся значения или куда вставляются?


 
служивый   (2004-03-24 20:28) [8]

e-mail есть ?


 
td   (2004-03-24 22:56) [9]

TableSPS - это справочник

lety@mail.ru



Страницы: 1 вся ветка

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.032 c
1-1080628841
ss300
2004-03-30 10:40
2004.04.18
KeyPress


1-1080734716
Серж
2004-03-31 16:05
2004.04.18
кто-нить ставил супер RX-Lib JVCL (project Jedi)?


3-1079941197
VIB
2004-03-22 10:39
2004.04.18
DBGRID


6-1076393271
juiceman
2004-02-10 09:07
2004.04.18
рэдирект Internet Explorer a


6-1077208586
Анонимщик
2004-02-19 19:36
2004.04.18
TEmbeddedWB





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский