06.03.2008, 12:11 | #1 |
Участник
|
Как проверить наличие хотя бы одной записи в подчиненной таблице.
Доброго всем времени суток!
Вопрос на самом деле не такой уж и простой. У меня есть таблица Штрафные санкции VendContractPenaltyProvision эта таблица подчинена таблице RContractTable а в форме последней есть грид, который ссылается на таблицу VendContractPenaltyProvision. Так вот у договора может быть много штрафных санкций, но обязательно должна быть хотя бы одна! Пробовал в методе validateWrite у таблицы RContractTable прописать следующий код: X++: VendContractPenaltyProvision tab; ; select firstonly tab where tab.RContractAccount == this.RContractAccount && tab.RContractPartnerCode == this.RContractPartnerCode; if (!tab ) { Info("В данном договоре не заполнены штрафные санкции"); return false; } |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
06.03.2008, 12:17 | #2 |
Участник
|
по поводу "спасибо" есть кнопочка "одобрить сообщение" под каждым сообщением
|
|
|
За это сообщение автора поблагодарили: demon46 (1). |
06.03.2008, 13:12 | #3 |
Moderator
|
Можно пойти по-другому и сделать отложенную проверку, например, при смене статуса договора на "Действует".
__________________
Андрей. |
|
|
За это сообщение автора поблагодарили: demon46 (1). |
06.03.2008, 13:51 | #4 |
Участник
|
Идея хороша. Я думал о подобной проверке, но как Вы выразились это ведь отложенная проверка. Далее в коде мне придется использовать проверки на заполненость VendContractPenaltyProvision но все же хотелось бы локализовать проверку на уровне ввода.
|
|
06.03.2008, 14:52 | #5 |
Moderator
|
Можно еще сделать что-то типа мастера создания договора (пример - форма создания заказа), в ней иметь грид со штрафными санкциями (не связанный с конкретным договором, временная таблица), и создавать новый договор только при наличии хотя бы одной записи в гриде, заодно и заполняя таблицу VendContractPenaltyProvision.
Или при сохранении договора в validateWrite() вызывать отдельную форму для создания строк, возможно на базе временной таблицы, и действовать сообразно обстоятельствам.
__________________
Андрей. |
|
07.03.2008, 09:41 | #6 |
Участник
|
Dron AKA andy
Респект тебе. Вобщем-то решился пойти по твоему совету на счет статуса договора. |
|
Теги |
exists, проверка, существование |
|
|