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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.02.2022, 11:13   #1  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
D365FO, AX2012: Паспорт записи списком (поля списком) - расширение
Добрый день! Решил я расширить всем известную функциональность, которая изначально пришла из DeveloperTools от компании Columbus (первый автор - Роман, db) и которую выложил Денис (trud) в рамках проекта DEVTools (https://github.com/TrudAX/XppTools/t.../DEVRecordInfo).

Здесь описывается версия для D365FO.
Версия для AX2012 ниже, в следующем сообщении
В рамках расширения добавлено:
  • Возможность правки складских аналитик (перевычисление InventDimId). Поле InventDimId вычисляется по Relation-у к таблице InventDim на исходной таблице
  • Позиционирование на нужном InventDimId, если паспорт записи открывается с поля таблицы InventDim (Т.е. из аналитик В в строке журнала переноса мы автоматически попадаем на InventJournalTrans.ToInventDimId, а с аналитик Из - на InventJournalTrans.InventDimId). Т.о. сразу исключается попадание на таблицу InventDim (чтобы не было желания ее править)
  • Объединение кнопок ChangeValue и ChangeValueDim для финансовых аналитик. Теперь система сама догадывается (по Relation-у) - что из себя представляет текущее поле (складские аналитики или финансовые). Функциональность правки (перевычисления кода комбинации) финансовых аналитик осталась такой же.
  • Возможность правки значений полей, представленных на форме сегментированным контролом. При этом, если паспорт записи был запущен с самого контрола, то наследуются свойства контрола (отображение счета ГК с аналитиками или без аналитик, а также в зависимости от типа счета, как в журнале ГК). Если паспорт записи был запущен не с самого контрола, то поведение контрола, в котором можно изменить значение - устанавливается в зависимости от расширенного типа поля: для типа LedgerDimensionDefaultAccount и его наследников устанавливается режим отображения счета ГК без аналитик; для типа DimensionDynamicAccount и его наследников устанавливается режим отображения счета ГК в зависимости от типа счета (тип счета жестко определен - это енум LedgerJournalACType). Если в списке полей отсутствует поле с енумом LedgerJournalACType, то сегментированный контрол не отображается и текущее поле представляет собой просто значение RecId. Важно! Именно поэтому для правки корсчета в журнале ГК важно это делать именно с контрола, поскольку иначе определится тип счета для поля Счет, что неверно. Во всех остальных случаях (т.е. когда расширенный тип поля не наследуется ни от LedgerDimensionDefaultAccount ни от DimensionDynamicAccount) - отображается счет ГК с аналитиками.
  • Поля с дополнительной информацией о типе данных поля (длина строки и ссылка на связанное поле в другой таблице, например для поля Сотрудник будет выведена информация HcmWorker.RecId)
  • Перемещение полей с дополнительной информацией в грид.
  • Кнопка скрытия / отображение полей с дополнительной информацией по типам данных поля (Show types / Hide types)

Код писался в рамках моего ответвления этой утилиты (в свое время мне ее дали без кнопки Change value и сказали сделать возможность правки - ну я и сделал эту возможность напрямую в гриде с использованием лукапа. А потом выяснилось - что "нормальные пацаны" делали кнопку). В связи с этим доработки переносились в стиле устранения фатального недостатка.
Нажмите на изображение для увеличения
Название: SNAG_Program-0156.png
Просмотров: 69
Размер:	86.6 Кб
ID:	13301
Название: Снимок.JPG
Просмотров: 258

Размер: 16.7 Кб
Нажмите на изображение для увеличения
Название: Снимок2.JPG
Просмотров: 43
Размер:	31.9 Кб
ID:	13304
Нажмите на изображение для увеличения
Название: Снимок3.JPG
Просмотров: 39
Размер:	33.8 Кб
ID:	13305
Нажмите на изображение для увеличения
Название: Снимок4.JPG
Просмотров: 46
Размер:	94.0 Кб
ID:	13306

Прилагаю архив модели. В ней изменена только форма и таблица.
Вложения
Тип файла: zip DEVRecordInfo.zip (49.4 Кб, 76 просмотров)
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 09.02.2022 в 23:55.
За это сообщение автора поблагодарили: mazzy (10), GLU (2), trud (10), raz (10), Logger (5), Ace of Database (10), imir (3), Dynamics365Eng (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Мультипаспорт записи Ace of Database DAX: Программирование 20 29.03.2022 10:49
aceofdatabase: Мультипаспорт записи Blog bot DAX Blogs 0 15.05.2017 16:11
Падает клиент при записи значения поля через ADO на пакетном сервере McArrow DAX: Программирование 2 22.11.2012 11:03
Автоматическое увеличение значения поля при создании новой записи. sguryev DAX: Программирование 3 06.02.2003 14:00
Паспорт записи (Автор и время создания/модификации) Андре DAX: Программирование 3 22.04.2002 21:15

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:44.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.