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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.12.2015, 13:07   #1  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Не показывать поля с префиксом DEL
А никто не делал такой доработки, чтобы в Обозревателе таблицы не показывались поля с префиксом DEL? А то зачем они там..
Старый 03.12.2015, 13:15   #2  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от AXcons Посмотреть сообщение
А никто не делал такой доработки, чтобы в Обозревателе таблицы не показывались поля с префиксом DEL? А то зачем они там..
Для этой цели вроде как используются конфигурационные ключи SysDeletedObjectsХХ
__________________
Zhirenkov Vitaly
Старый 03.12.2015, 13:15   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от AXcons Посмотреть сообщение
А то зачем они там..
переименование в DEL нужно, чтобы нормально отработали процедуры апгрейда - взяли старое значение из DEL, преобразовали и положили куда-то в другое место.

следовательно, в обозревателе DEL-поля нужны, чтобы смотреть данные для процедур апгрейда.

чтобы "не показывать" любое поле в обозревателе, установите свойство Visible = No
чтобы "удалить" любое поле в базе, установите у него конфигурационный ключ и выключите его в настройках системы.
Старый 03.12.2015, 13:16   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от ZVV Посмотреть сообщение
Для этой цели вроде как используются конфигурационные ключи SysDeletedObjectsХХ
он же просил только "не показывать" )))))
http://www.youtube.com/watch?v=zvFWRuh4xj4
Старый 03.12.2015, 13:19   #5  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
он же просил только "не показывать" )))))
Вот почему "он"?
Старый 03.12.2015, 13:19   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
а, да... собственно ответ на вопрос:
Цитата:
Сообщение от AXcons Посмотреть сообщение
А никто не делал такой доработки
нет, доработки никто не делал.
для решения этой задачи не нужно никаких доработок ))))
Старый 03.12.2015, 13:19   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от AXcons Посмотреть сообщение
Вот почему "он"?
таки оплошал. Бггггг!!!
Старый 03.12.2015, 13:20   #8  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
таки оплошал. Бггггг!!!
))
Старый 03.12.2015, 13:22   #9  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
переименование в DEL нужно, чтобы нормально отработали процедуры апгрейда - взяли старое значение из DEL, преобразовали и положили куда-то в другое место.

следовательно, в обозревателе DEL-поля нужны, чтобы смотреть данные для процедур апгрейда.

чтобы "не показывать" любое поле в обозревателе, установите свойство Visible = No
чтобы "удалить" любое поле в базе, установите у него конфигурационный ключ и выключите его в настройках системы.
Для этого просто надо по всем таблицам ходить и у каждого поля ставить свойство.
А так бы сделали режим отображения "без удаленных полей" - чтобы можно было в него переключиться на форме обозревателя, например, и сразу все лишние поля исчезают.. И легко их выбрать по префиксу..
Старый 03.12.2015, 13:26   #10  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
чтобы "удалить" любое поле в базе, установите у него конфигурационный ключ и выключите его в настройках системы.
В смысле, какой-то новый конфигурационный ключ установить, который в настройках выключить?
Старый 03.12.2015, 13:36   #11  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от AXcons Посмотреть сообщение
Для этого просто надо по всем таблицам ходить и у каждого поля ставить свойство.
установка конф.ключа - это и есть способ указать системе, что поле удалено.
а установка свойства Visible - это и есть способ сказать системе, что вы не хотите его видеть (существующие в этих полях данные для вас не значимы)

Цитата:
Сообщение от AXcons Посмотреть сообщение
И легко их выбрать по префиксу..
Никогда! Никогда не привязывайте поведение вашей системы в наименованию!!!!
тем более к префиксу.
мало ли английских слов начинается с DEL.
http://english-dictionary.ru/d18/

в той же аксапте полно Delivery, Delay
останетесь совсем без деликатных деликатесов (вкусняшек) и прочих дел.

переименование поля - это всего лишь прием "показать человеку сразу, что здесь что-то не так", "сразу получить компиляции" и "сразу получить ошибки во внешних системах", которые используют это поле. "Сразу" - это до удаления, пока данные в этих полях еще существуют.
но это не есть информация о том, что поле удалено.

Цитата:
Сообщение от AXcons Посмотреть сообщение
В смысле, какой-то новый конфигурационный ключ установить, который в настройках выключить?
В стандартной аксапте для целей обозначить, что "поле удалено в этой версии, но требуется для процедуры апгрейда" предназначены конфигурационные ключи SysDeletedObjectsХХ

можно создать свои. можно унаследовать их от стандартных.
но почти на всех проектах уже существовали подобные ключи. спросите вашего архитектора.

Последний раз редактировалось mazzy; 03.12.2015 в 13:44.
За это сообщение автора поблагодарили: ZVV (2).
Старый 03.12.2015, 13:36   #12  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от AXcons Посмотреть сообщение
В смысле, какой-то новый конфигурационный ключ установить, который в настройках выключить?
Почитайте таки про SysDeletedObjectsХХ ключи
__________________
Zhirenkov Vitaly
За это сообщение автора поблагодарили: mazzy (2).
Старый 03.12.2015, 13:47   #13  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
AXcons, Если очень надо сделать именно то что вы просите (не показывать в обозревателе таблиц поля с определённым префиксом), то копать нужно в сторону формы SysTableBrowser. Там теоретически у грида можно пробежаться в рунтайме по вложенным контролам и установить ненужным Visible = false.
Но я лично этого не делал.

И будьте аккуратны с префиксами, как минимум проверяйте на "DEL_", а не "DEL".
(Иначе будет как mazzy написал )
__________________
Zhirenkov Vitaly
За это сообщение автора поблагодарили: mazzy (2).
Старый 03.12.2015, 13:57   #14  
Link is offline
Link
Британский учённый
Аватар для Link
Соотечественники
 
568 / 523 (19) +++++++
Регистрация: 25.11.2005
Адрес: UK
Записей в блоге: 9
Цитата:
Сообщение от ZVV Посмотреть сообщение
AXcons, Если очень надо сделать именно то что вы просите (не показывать в обозревателе таблиц поля с определённым префиксом), то копать нужно в сторону формы SysTableBrowser. Там теоретически у грида можно пробежаться в рунтайме по вложенным контролам и установить ненужным Visible = false.
Но я лично этого не делал.

И будьте аккуратны с префиксами, как минимум проверяйте на "DEL_", а не "DEL".
(Иначе будет как mazzy написал )
Реализацию можно посмотреть в DevToolset там как раз при наложенном фильтре прячутся поля в обозревателе.
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще.
За это сообщение автора поблагодарили: mazzy (2), AXcons (1).
Старый 03.12.2015, 17:05   #15  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от ZVV Посмотреть сообщение

И будьте аккуратны с префиксами, как минимум проверяйте на "DEL_", а не "DEL".
(Иначе будет как mazzy написал )
Ну да, там же подчеркивание есть, не промахнешься вроде.
Старый 03.12.2015, 17:17   #16  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
но почти на всех проектах уже существовали подобные ключи. спросите вашего архитектора.
Приложение 2003-го года. Уже и не вспомнишь кто там был архитектором))

Спасибо за ответы. Может, когда-нибудь и сделаем такую штуку в свободное время. Когда оно будет
Старый 03.12.2015, 19:14   #17  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Пишется джобик, который бегает по АОТу по таблицам и смотрит что там за поля, в нужных проставить конфиг ключ и все (если ключа нету естественно). Если у вас на проекте префикc "DEL_", то сложнее
Старый 04.12.2015, 11:26   #18  
AXcons is offline
AXcons
Участник
 
442 / 112 (4) +++++
Регистрация: 21.05.2015
Адрес: Москва
Цитата:
Сообщение от Sada Посмотреть сообщение
Пишется джобик, который бегает по АОТу по таблицам и смотрит что там за поля, в нужных проставить конфиг ключ и все (если ключа нету естественно). Если у вас на проекте префикc "DEL_", то сложнее
Не, на проекте не используем такое.

Спасибо. Наверное, это самый простой вариант.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
DEL_ поля есть ли описание? nano3 DAX: Программирование 3 07.10.2008 18:29
Получение из поля Map кода поля реальной таблицы, к ней привязанной (Mappings) vey DAX: Функционал 5 16.03.2005 11:16
Длина поля ax_f DAX: Программирование 5 24.09.2004 12:17
Получить значение поля таблицы по номеру (Id) поля Anais DAX: Программирование 2 15.04.2004 13:00
Недопустимая комбинация поля/поля ссылки Berty Wooster DAX: Программирование 2 29.05.2003 16:31

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

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

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