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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.06.2008, 07:53   #11  
KingPeas is offline
KingPeas
Участник
Аватар для KingPeas
 
163 / 35 (2) +++
Регистрация: 09.01.2007
Адрес: Россия, Новосибирск
Цитата:
Сообщение от mazzy Посмотреть сообщение
Прелесть состоит в том, что эти 100 таблиц будут иметь свои типизированные поля, свои валидейты, свои индексы, свои relation'ы, свои права. Каждую таблицу можно будет отнести к определенному проекту и функционалу.

В общем, вы получите проверку на уровне компилятора, а не во время runtime.
Это имело бы значения если бы эти таблицы использовались в DAX. Но их основное назначение хранить параметры для стороннего приложения и легкий доступ к ним в этом приложение. Типизированные поля это хорошо, но для исполнения в RS необходимо передавать параметры в виде сопоставимом с RS. То бишь дату например я передаю используя date2StrUsr(). Иначе параметр может просто не попасть в отчет, или даже привести к ошибке исполнения. Если будет 100 таблиц то везде требуется не забыть преобразовать данные при сохранении параметра. Заполнение параметров осуществляется из диалоговых форм Runbase к которым пользователи уже привыкли. Если они и введут неправильный параметр (например ранг в запросе) в итоге получат неправильный отчет, но то же самое они получали в аксапте, так что пока разницы не чувствую.
Поэтому все параметры преобразуются в строку и хранятся в одной таблице. А добавление параметра осуществляется через единый метод в наследнике Runbase.

Цитата:
Сообщение от mazzy Посмотреть сообщение
Но зато ваша экономия приведет к огромному динамическому программированию, к "универсальным" валидейтам, к неподъемному программированию прав
Подробнее см. Значение display метода по его названию

Насчет упрощения подписок - отчасти вы правы, но как вы права собираетесь раздавать? Или у вас все пользователи могут менять любые параметры?
Пришлось повозиться пару дней чтобы организовать таблицу для гибкой привязки параметров в аксапте с параметрами непосредственно в отчетах RS. Можно и без этого было обойтись, но неудобно переносить с одного сервера на другой и сервера перенастраивать при новых путях для отчетов на RS или изменении порядка параметров в отчете со стороны аксапты или RS. На этом динамическое программирование закончилось).
А насчет прав доступа выкручиваюсь таким образом). Разграничение доступа к таблице настройки параметров вручную осуществляется через форму. Те кому не положено не допускаются к ней обычными средствами. А заполнение прочих подписок выполняется через наследники Runbase. То есть если у пользователя есть права на формирование отчета он может добавить запись в подписку для данного класса. Если возникла ошибка при создании записи подписки достаточно в диалоге изменить значения полей с уникальным именем подписки и его пересохранить. А дальше все будет зависеть от безопасности на RS.
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ.
Теги
шаблон

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Создание наследника EDT через Х++ vesna DAX: Программирование 12 02.05.2012 08:13
Значение по умолчанию параметра типа EDT c array elements либо просто массива HorrR DAX: Программирование 16 20.02.2008 19:18
axaptapedia: Array (Foundation class) Blog bot DAX Blogs 0 13.12.2007 22:30
Синхронизация таблиц при изменении EDT z_av DAX: Программирование 1 16.12.2004 11:55
Список полей таблиц на базе конкретного EDT Владимир Максимов DAX: Программирование 10 06.10.2004 14:45

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

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

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