![]() |
#9 |
Участник
|
Цитата:
В постановке смешиваются разные уровни абстракции. Полностью согласен с miklenew: Цитата:
Сообщение от miklenew
![]() validateField это метод объекта таблица.
Раз у вас появилась в формулировке объект форма, то логичнее предположить что вам метод нужно реализовывать выше. Выделите часть это кода в отдельный метод и повести его на таблицу. Перекройте на datasourse формы метод validate на нужном поле и до super вызывайте его. если у вас возникла хотелка при проверке учитывать данные из другого уровня абстракции, то это первый признак, что вы не все данные храните в таблице, что некоторые жизнено важные данные находятся где-нибудь еще. Что чревато нарушением целостности данных. ============= Кроме того, не забывайте о механизме проверки целостности данных. Он запустит validateField для каждой записи. Теперь представьте, что данные, введенные в форме проверяются отдельно без формы, совсем по другой ветке алгоритма. Вам точно нужны эти заморочки? ============= Кроме того, не забывайте о механизме экспорта/импорта данных, AIF, доступ из внешних систем. Все этим механизмы также могут запустить validateField. ============= Кроме того, не забывайте о трехуровневости Аксапты. Форма работает и живет на клиенте. validateField может выполняться на сервере. ============= Вывод: в validateField таблицы используйте только данные из самой таблицы и/или из связанных таблиц. Ни в коем случае не используйте данные, которые находятся вне базы данных (кэш сессии, локальные переменные формы и т.п.) |
|
Теги |
интерфейс, программно, таблица, форма |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|