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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.03.2010, 01:46   #1  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,342 / 3563 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от wojzeh Посмотреть сообщение
коллега, спасибо за отзыв, но нельзя ли конкретизировать вашу критику?

в каком месте данный проект противоречит идеологии системы?

в чём собственно, на ваш взгляд, заключается эта самая идеология?

какие есть претензии к коду?

какие есть претензии к функциональности?

какие есть замечания по части интерфейса и удобства работы с формой?
Разрешите мне высказать свое личное мнение в плане неудобств без каких-либо дополнительных претензий/критик и т.п. Собственно говоря критика в первую очередь основана на том, что аналогичный инструмент, но без массового изменения данных (т.е. только по одной записи) я видел в другом исполнении.
Код не смотрел, ориентируюсь исключительно на скриншот, т.е. пытаюсь из себя представить некоего консультанта - пользователя данного инструмента.

1. Способ выбора таблиц.
В Аксапте контролька List используется на порядок реже контрольки Grid. И в ряде мест, где используется List я очень скучаю по Grid-у с его штатными возможностями фильтрации, сортировки, перестановки и скрытия столбцов.
На скриншоте реализована только фильтрация таблиц, причем с начала названия. Т.е. фильтрация у меня уже предопределена без возможности изменения. А вот мне внедренцы сделали табличку - которая в меню выведена в клиенты, поставщики и запасы. Какой у нее префикс (Cust/Vend/Invent)? Я не знаю. Но я могу ее найти как *MyTable*.

Далее. Название таблицы в коде и название ее в пункте меню - вещи разные. Даже в английском языке. Мне как консультанту неизвестно название таблицы в АОТе. Но я легко могу посмотреть Label таблицы. Достаточно нажать кнопку Расширенный фильтр (Ctrl+F3).
Как может консультант найти нужную ему таблицу по ее Label ?

2. Фильтрация таблиц по группам.
Мне как-то не привелось столкнуться с аккуратным расставлением этого свойства при внедрении. В стандарте - его стараются придерживаться - но тем не менее - при поиске таблицы - я обычно меньше всего думаю (может просто привык) о том к какой группе ее могли бы отнести. Фактически - вместо того, чтобы дать инструмент фильтрации в гриде сделан навязанный жесткий фильтр, который не покрывает мои потребности фильтрации.

3. Способ выбора полей.
К всему перечисленному выше добавляется еще тот факт, что если таблицы имеют префикс, относящий их к определенному модулю и какая-нибудь табличка - типа строки складского журнала наверняка имеет префикс Invent (т.е. данный инструмент позволяет сократить перечень таблиц, если я введу Invent) - то в случае полей такого правила нет и фильтр по началу названия поля абсолютно бесполезен.
Более того, поля более необходимо фильтровать по названию (Label), т.к. в интерфейсе label таблицы как правило не виден - т.к. его перекрывает label от пункта меню или дизайна формы. А вот label поля виден во всей красе по умолчанию везде, где его не переопределили на форме, что бывает достаточно редко.

4. Фильтрация полей по системным.
Тут фильтрация обоснована, т.к. она позволяет скрыть служебные поля. Хотя опять-таки - если уж предлагается фильтрация по названию поля из АОТ - то пользователь уж точно знает какие поля системные и смысла их фильтровать я не вижу

5. Изменение значений.
Изменять можно только строковые поля как я понял? А как же лукап? Я что - не могу выбрать значения из лукапа? (который строится в зависимости от EDT+Relation на таблице)
А числовые поля/денежные/дата-время (с календариком) и енумы (выбор из списка) ? Я хочу, чтобы механизм смены значения был максимально приближен к стандартному (енумы выбирать из списка, дату вводить из календарика, строковые данные вводить из лукапа и т.д.)
А при изменении отрабатывает update или doupdate? Например при правке InventTrans нужна отработка именно update, т.к. он синхронизирует еще и InventSum. А при правке CustTable к примеру совершенно необязательно чтобы отрабатывал код по синхронизации с smmBusRelTable, т.е. нужна отработка doupdate.
А поля modified* меняются при смене значения? А то к примеру мне нужно поменять одно поле в справочнике - и сразу я становлюсь автором изменений (может это и наоборот правильно).
А события/журнал БД при изменении работает? А то (возможно) я могу захотеть, чтобы на время изменений события не генерились. Я ж все ж консультант, а не рядовой пользователь.

6. Общее замечание по использованию.
Обычно требуется инструмент изменения данных в конкретной глючной записи. Т.е. система нештатно отработала и мы вручную подкорректировали неверно записанное значение.
Я осознанно опускаю понятие аудиторского следа, т.к. использование данного инструмента явно не предполагает использование аудиторского следа в рамках одной базы (к примеру инструментом можно пользоваться на тестовой БД)


Что видел я в плане смены значений:
Форма в стиле "Паспорт записи списком" - представляет собой грид из 3-полей - название поля (label), название поля (AOT), значение. При этом значение можно менять и работают все лукапы/енумы/календарики.
Форма простая, но позволяет сортировать/фильтровать по полям (label+name) штатным способом в гриде. Не позволяет правда менять данные массово.
__________________
Возможно сделать все. Вопрос времени
За это сообщение автора поблагодарили: lev (4), Gustav (5), wojzeh (1), Corkscrew (1).
Старый 25.03.2010, 18:33   #2  
wojzeh is offline
wojzeh
Участник
Аватар для wojzeh
Соотечественники
 
677 / 517 (19) +++++++
Регистрация: 27.04.2006
Адрес: Montreal
Цитата:
Сообщение от sukhanchik Посмотреть сообщение
Разрешите мне высказать...
Ого! Земной поклон! Ушёл думать...
__________________
Felix nihil admirari
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Сохранение значений полей после ошибки ahtoh DAX: Программирование 8 20.06.2008 13:32
Как получить значения полей (modifiedDate, modifiedTime, modifiedBy и др.) при работе с объектами AOT типа Map? LRA DAX: База знаний и проекты 15 02.04.2007 13:37
пересчет полей на форме kitty DAX: Программирование 1 04.10.2005 12:50
Реализация функциональной зависимости полей в Query levsha DAX: Программирование 2 22.12.2003 09:40
очистка полей. простой вопрос Антон Солдатов DAX: Программирование 4 04.04.2003 10:28
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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