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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.06.2017, 13:56   #1  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от dech Посмотреть сообщение
Между таблицами клиента и поставщика много общего, соответственно очень много одинаковой логики и она дублируется.
На самом деле не очень. А то реально общее - не полностью реализовано.
поставщики и клиенты - это контрагнеты.

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

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

контрагентов пытались получить на DirParty.
со всей вытекающей сложностью.

Цитата:
Сообщение от dech Посмотреть сообщение
Чтобы избежать дублирования, изобрели Maps. Всю общую логику переместили в CustVend*. Очень элегантное решение, кстати.
будем справедливы:
1. maps изобрели не чтобы избежать, а чтобы хоть как то работать с дублированием.
2. не всю )
3. не очень элегантное. в стандартном функционале постоянно приходится писать if/switch... методы map имеют чудовищный синтаксис и очень плохо используются.

люди на проектах часто делают врапперы типа такого
https://github.com/mazzy-ax/SysCustVend

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

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

Цитата:
Сообщение от belugin Посмотреть сообщение
Например, ко мне не может подойти начальник и сказать "испеки мне скорость и булочки с изюмом" просто потому, что для этих двуз понятий нет никакого общего смысла что-то делать
Чё это?
Зря ты принижаешь возможности начальника. ))))
Может конечно подойти и может сказать. Это твоя проблема как разработчика объяснить почему ты не будешь делать как начальник сказал ))))

Цитата:
Сообщение от belugin Посмотреть сообщение
То есть в одном справочнике есть юридический адрес, а в другом на этом месте табуретка?
да. у физика нет юридического адреса.


Цитата:
Сообщение от belugin Посмотреть сообщение
А вот для AR и AP возникла. Как так получается?
С совершенно разной структурой или они должны отличаться только данными?
Собственно это и есть тема этой ветки:
Оver-engineering - "зачем так сложно?"
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: macklakov (5).
Старый 23.06.2017, 14:34   #2  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от mazzy Посмотреть сообщение
среди действительно общих операций можно отметить только расчет курсовой разницы.

а также сугубо технические операции типа сопоставления дебет-операций с кредит-операциями.
То есть структура сущностей имеет что-то общее, операции существенно разные так?

В каком смысле сопоставление "техническая" операция?

Цитата:
будем справедливы:
1. maps изобрели не чтобы избежать, а чтобы хоть как то работать с дублированием.
"Как-то работать" это и есть в каком-то смысле избежать. Например избежать дублирование кода который как-то работает.

Цитата:
3. не очень элегантное. в стандартном функционале постоянно приходится писать if/switch... методы map имеют чудовищный синтаксис и очень плохо используются.
Почему вообще возникает потребность делать общий код, если общего мало? Почему просто не продублировать?

Цитата:
люди на проектах часто делают врапперы типа такого
https://github.com/mazzy-ax/SysCustVend
Они все оверэнжиниры?

Цитата:
а нет такой потребности.
это просто техническое решение - сделать их похожими.
Только что выше ты сказал, что потребность есть. Все мепы и классы и прочее.

Цитата:
да. у физика нет юридического адреса.
Мы говорим о разнице между AR и AP а не физиками и лириками. В АR у юрика есть юр адрес, а в AP нет?

Цитата:
Собственно это и есть тема этой ветки:
Оver-engineering - "зачем так сложно?"
Так я хотел, просто понять точку зрения как бы сделали если бы эти справочники были независимы.
За это сообщение автора поблагодарили: macklakov (5).
Старый 23.06.2017, 15:08   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от belugin Посмотреть сообщение
То есть структура сущностей имеет что-то общее, операции существенно разные так?
перечитал выше. я вроде не употреблял слово "все" и его отрицание "ничего" )
что-то общее имеет. имеет и что-то различное.

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

Цитата:
Сообщение от belugin Посмотреть сообщение
"Как-то работать" это и есть в каком-то смысле избежать. Например избежать дублирование кода который как-то работает.
Макс, высказывание полностью на твоей совести.
Как скажешь.

Цитата:
Сообщение от belugin Посмотреть сообщение
Почему вообще возникает потребность делать общий код, если общего мало? Почему просто не продублировать?

Они все оверэнжиниры?
Как только возникает слово "ВСЕ" - жди логической ошибки.
Да, некоторые считают, что некоторые они - оверэнжиниры.

Цитата:
Сообщение от belugin Посмотреть сообщение
Только что выше ты сказал, что потребность есть. Все мепы и классы и прочее.
я не говорил, что есть потребность.
я говорил, что есть некоторые общие вещи. их не обязательно порывать общим кодом.

разница как между классом-потомками и интерфейсом-реализациями.

Цитата:
Сообщение от belugin Посмотреть сообщение
Мы говорим о разнице между AR и AP а не физиками и лириками. В АR у юрика есть юр адрес, а в AP нет?
я так и сказал - "не полностью реализовано".

Цитата:
Сообщение от belugin Посмотреть сообщение
Так я хотел, просто понять точку зрения как бы сделали если бы эти справочники были независимы.
Некоторые системы, например 1С, вводят понятие "контрагент"
а специфику сделки выносят в договор (там есть свои тараканы и есть свои минусы)

некоторые системы, например банковские, оперируют понятиями поставщик, а вместо клиентов могут быть разные типы аккаунтов - накопительные/текущие/карточные/валютные (там есть свои тараканы и есть свои минусы)

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

Просто ДВА модуля/справочника с одинаковыми полями - это не единственное решение. Справочников/модулей может быть и больше, и меньше.
__________________
полезное на axForum, github, vk, coub.
Теги
sysoperation framework

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: The INSERT statement conflicted with the FOREIGN KEY constraint "FK_ModelElementData_HasModelId_LayerId". The conflict occurred in database "YourDataBaseName_model", table "dbo.Model" Blog bot DAX Blogs 0 23.05.2014 13:11
Dynamics AX Sustained Engineering: Performance issue in "Open Transaction Edit" form Blog bot DAX Blogs 0 26.10.2009 20:05
Зачем нужны "Параметры кодов аналитики"? Кирилл DAX: Программирование 2 16.04.2004 14:22
Зачем нужна "Потребность в номенклатуре" Tony Green DAX: Функционал 4 02.02.2004 00:24

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

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

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