AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.10.2010, 22:02   #1  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от RomanK Посмотреть сообщение
можно было один раз написать это дело в классе и потом вызывать для всех форм группы ledgerJournalTrans* а так придется каждую из форм править
Ни в коем случае не надо править все формы подряд! Напишите (или допишите) движок управления формами (иерархию классов, если у вас несколько схожих "разновидностей" журналов) и движок с бизнес-логикой (тоже иерархию классов), который будет решать, когда поле обязательно к заполнению, а когда нет; в качестве основы можно взять LedgerJournalEngine, хотя в ряде случаев проще написать с нуля свое, чем вырезать из него "лишнее". Тогда движок управления формами будет получать от движка с бизнес-логикой данные о том, какие поля являются обязательными, и подсвечивать их для пользователя красной волнистой линией за счет изменения свойств полей DataSource'а, а движок с бизнес-логикой на validateWrite будет проверять, на самом ли деле обязательные поля заполнены. Причем заметьте: проверять заполненность полей только на записи строк журнала на форме недостаточно, потому что сегодня журнал создает пользователь, а завтра он будет создаваться из кода, так что как минимум все те же самые проверки нужно выполнять в классе разноски ваших журналов - тут вам опять пригодится движок, содержащий бизнес-логику.
Цитата:
Сообщение от AlGol Посмотреть сообщение
Допиши проверку на заполненность в тот же класс и вызывай для validateWrite всех форм той же группы.
Однозначно - и не только на формах.
Цитата:
Сообщение от oip Посмотреть сообщение
Ставить Автодекларейшн в Yes - нормально во многих ситуациях.
Разве что для unbound-контролов А для bound-контролов, по-моему, лучше всегда и везде использовать группы полей с AutoDataGroup = Yes. На счет AutoDeclaration хочется (скромно так) еще раз пропиарить Итератор с поддержкой методов обратного вызова для обработки контролов на форме, который как минимум для тех контролов, которые могут располагаться в Grid'е, практически избавляет от необходимости обращения к ним "по имени"
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Странное поведение функции "Отображение аналитик" Lelya DAX: Функционал 2 28.05.2009 19:36
Странное поведение ttsAbort Logger DAX: Программирование 6 28.05.2009 15:11
Объясните странное поведение enum'ов Deep Dreamer DAX: Программирование 6 09.04.2007 23:44
Поведение свойства Height в отчете KiselevSA DAX: Программирование 0 31.10.2006 15:32
Странное поведение резервирования после создания спланированной закупки. NEO DAX: Функционал 7 01.07.2004 14:03

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 13:31.