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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.12.2016, 11:00   #1  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от mazzy Посмотреть сообщение
и других семантик, кроме "принадлежит" в энтити нет.
хотя на техническом уровне relations вполне остаются.
LedgerEntity\Relations\AccountingCurrency

Это relation между LengerEntity и CurrencyEntity

Цитата:
я так понимаю, что ты говоришь, что в энтити существуют relations.
какие типы семантик, кроме "принадлежит" существуют в энтити?
Я не очень понял о каких отношениях мы говорим - между entity, внутри entity или что?

Между entity могут быть любые отношения. Внутри Entity тоже, просто для внешнего потребителя эти отношения превращаются в плоский список. Что плохо.

Цитата:
поясни?
как значение технического свойства влияет на уровень семантики?
Цитата:

Это свойство не влияет на рантайм никак это просто коммент для того, чтобы мы понимали тип отношения.
с точки зрения понимания здесь будет - валюта принадлежит финансовой проводке.
разве не?

Она не принадлежит. При изменении чего-то в финансовой проводки состояние валюты не меняется. Может только возникнуть отношение с другой валютой.

Цитата:
аналитика - да.
но не "комбинации аналитик" и не dimID.
Комбинация аналитик выделена в отдельную группу для пользователя. DimID - да, это технический аспект того, как именно организована связь.

У нескольких проводок может быть одна и та же комбинация аналитик.

То есть бессмыслено
X++:
transaction.DimensionID += 'a';
Осмысленно.

X++:
transactions.Where(x => x.Dimension == currentTransaction.Dimension);

foreach(value in transaction.Dimension)
{
    print $' {value.name} - {value.value}';
}

Цитата:
с точки зрения рассуждений пользователя о системе - в каждой проводке указана аналитика. другими словами, аналитика принадлежит проводке.
Не "принадлежит" а "связано".

Цитата:
адресная книга - да.
но не разбивка на это безумное число таблиц, которые требуют связей между собой.
Продемонстрируй связь, не являющуюся ничем для пользователя.

Цитата:
обрати внимание, как об этом думаешь:
адреса принадлежат поставке (поставка содержит адреса)
При удалении поставки адрес не исчезает и здание не сносят.
Один и тот же адрес может относиться к разным поставкам.

Это если слово "принадлежит" для тебя composition.

Цитата:
то, что выделено в отдельную группу - особенность реализации.
с точки зрения рассуждений пользователя особой разницы нет - будет ли аналитика в отдельной группе или не будет.
Есть. Аналитика выделена в отдельную группу не по техническим соображениям, а потому, что это важно для пользователя, это набор признаков по которым операцию классифицируют финансы.

Цитата:
а почему неправильно?
Потому, что это делает программную модель сложнее и не отражает ползовательскую модель.
Старый 30.12.2016, 11:14   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
ok. в целом, понятно.
Цитата:
Сообщение от belugin Посмотреть сообщение
LedgerEntity\Relations\AccountingCurrency
Это relation между LengerEntity и CurrencyEntity
да, внутри энтити. это аспект технической реализации.

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

и насколько я понимаю, энтити - это полный аналог перехода от указателей к ссылкам. только в области баз данных.

=============
дальше ты говоришь о технической реализации.
я полностью с тобой согласен про техническую реализацию.
только энтити эти особенности технической реализации прячут внутри себя и не выставляют наружу.

и такое скрытие имеет и плюсы, и минусы.
ровно также как скрытие технических особенностей указателя в атомарной ссылке.

=============
upd: про интерфейс аналитик не согласен. но в этой ветке интерфейс скорее оффтопик. ну их?

Последний раз редактировалось mazzy; 30.12.2016 в 11:22.
Старый 30.12.2016, 13:30   #3  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от mazzy Посмотреть сообщение
и насколько я понимаю, энтити - это полный аналог перехода от указателей к ссылкам. только в области баз данных.
Цитата:

Энтити может скрывать и указатели и ссылки. А может и не скрывать. Но там нет никаких ссылок. Только указатели. Например, в складских журналах указатели на складскую аналитику скрываются, как и ссылки а на финансовую - нет.


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

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: AX Performance - What information and data to collect when you want to open a support case Blog bot DAX Blogs 0 29.09.2015 15:11
Dynamics AX Sustained Engineering: Announcing an update to enable the use of SQL Server 2014 with the AX 2012 R2 CU7 version of the Data Import/Export Framework (DIXF) Blog bot DAX Blogs 0 23.03.2015 22:12
axsa: Power BI and Dynamics AX: Part 4: Data Refresh and Q&A Blog bot DAX Blogs 0 25.02.2015 20:12
emeadaxsupport: AX Performance Troubleshooting Checklist Part 2 Blog bot DAX Blogs 0 09.09.2014 16:11
axinthefield: Dynamics AX Event IDs Blog bot DAX Blogs 0 01.03.2011 22:11
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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