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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.04.2019, 12:39   #1  
mira is offline
mira
Участник
Аватар для mira
 
140 / 25 (1) +++
Регистрация: 18.03.2007
Адрес: Москва
Обязательность tablerelation для ссылочных полей
Всем добрый день!

У нас в проекте озвучили правило :
В рамках изменения таблицы программист обязан добавить tablerelation, даже если поле добавлено не им.

Какие могут быть сложности при безусловной реализации такого подхода и при
добавлении Tablerelation поля, установлении Yes свойства ValidateTableRelation и TestTableRelation для ссылочных полей?

Благодарю за отклики!
Старый 17.04.2019, 14:28   #2  
Captain is offline
Captain
Участник
Лучший по профессии 2017
 
300 / 81 (3) ++++
Регистрация: 28.02.2003
Требование опасное. Пример вы поменяете код Товар учетной группы и все операции 5802 с данным кодом должны быть переименованы. Сколько времени это займет? ))
Поэтому в ядре системы этого нет. Все что не касается главных книг - флаг в руки.
__________________
---------------------------------------------------------------------------------------------
"Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица
За это сообщение автора поблагодарили: mira (1).
Старый 17.04.2019, 15:43   #3  
nicotine is offline
nicotine
Участник
 
50 / 35 (2) +++
Регистрация: 15.12.2010
"Требование опасное. Пример вы поменяете код Товар учетной группы и все операции 5802 с данным кодом должны быть переименованы. Сколько времени это займет? ))"
- В этом не вижу проблему, т.к. даже в приведенном примере в NAV 2017 поля с учетными группами (да и другие ссылочные поля) уже с установленными свойствами Tablerelation.


Но тут есть один подводный камень.
На справочниках в таком случае необходимо устанавливать проверку что поле "код" не должно быть пустым. (Российская локализация грешит отсутствием данного свойства)

В противном случае может произойти следующее - создали запись в справочнике с пустым кодом, потом ее переименовали и во всех связанных таблицах вместо пустого значения появилось новое.
За это сообщение автора поблагодарили: mira (1).
Старый 17.04.2019, 19:35   #4  
Captain is offline
Captain
Участник
Лучший по профессии 2017
 
300 / 81 (3) ++++
Регистрация: 28.02.2003
Принимаю точку зрения! Проходили подобное...
__________________
---------------------------------------------------------------------------------------------
"Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица
Старый 18.04.2019, 12:48   #5  
BuzCom is offline
BuzCom
Участник
 
59 / 17 (1) ++
Регистрация: 10.08.2017
Не вижу никаких проблем. Хорошее правило - ничего не менять в справочниках, а только дополнять. Если реально была ошибка в справочнике - то tablerelation поможет исправить во всех проводках.
Единственное, где будет мешать такое требование - это какие-нибудь текстовые поля. Типа фиксированных description, где иногда вместо выбора из списка надо разово что-то скорректировать, а в справочник вносить новое значение нет необходимости.
За это сообщение автора поблагодарили: mira (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
TableRelation, как получить ? Homer13 NAV: Программирование 0 02.07.2009 19:36
Заполнение обязательных полей в форме Alex_V NAV: Программирование 6 16.03.2004 14:46
триггер OnLookup полей таблиц Alex_V NAV: Программирование 0 14.01.2004 15:23
Проясните Назначение полей navnav NAV: Программирование 3 29.12.2003 09:50
Изменение длины полей в Attain'e Real NAV: Программирование 11 10.07.2003 09:55
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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