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

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

Join с первичным документам приводит к массе неприятных побочных эффектов.
Первый - черновики становится нельзя удалять (в результате растет база).
Второй - нарушается логика, которая гласит: в черновиках то, что мы собираемся сделать, а в проводках то, что уже сделали
Третий - значение поля в первичном документе становится нельзя измененять впоследствии (особенно для заказов/закупок). Если делается join, то в этом случае УЖЕ проведенный документ может ИЗМЕНИТЬ свое значение. Следовательно, нельзя изменять заджойненое поле при частичных отгрузки/закупках. Например, в заказе 100 шт. Ответственный Иванов. Клиенту отгружено 60 штук. Иванов заболел/умер/уволился, вместо него Петров. Но если мы поставим Петрова в шапку, то и уже отгруженные 60 штук пойдут на Петрова. Но с другой стороны, оставшиеся 40 надо отдать Петрову. Проблема.
Четвертый - о котором говорит Denis Fedotenko - первичные документы разные и в коде обрабатывать их надо по-разному.

К сожалению, эту ошибку "Join с первичными документами" сделали при локализации. При некоторых условиях заказы/закупки/журналы удалять нельзя (книги продаж/покупок, налоговый учет, ОС).

Цитата:
Сообщение от Blog bot Посмотреть сообщение
Если транслировать эту задачу в более приземленные термины, то нужно:
1. Добавить в таблицу складских проводок (inventTrans) поле "Сейл" и копировать туда поле "Ответственный продавец" из шапки заказа
Ох. Ни в коем случае не напрямую из шапки заказа!
Поля обязательно надо протаскивать через SalesParmTable, PurchParmTable!
Иначе концов не собрать при разборе полетов!

А слово "копировать" очень правильное.
__________________
полезное на axForum, github, vk, coub.
Старый 24.05.2007, 01:06   #2  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от mazzy Посмотреть сообщение
Иванов заболел/умер/уволился
однако, секвенция...

P/S. хм... интересно также, однако, что события происходят именно в такой последовательности...
Теги
inventdim, inventsum, inventtrans, база данных, как правильно, логистика, себестоимость, складские отчеты, складские проводки

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Denis Fedotenko: Себестоимость и длинные производственные заказы Blog bot DAX Blogs 13 21.11.2013 16:57
Denis Fedotenko: Себестоимость и закрытие склада Blog bot DAX: База знаний и проекты 44 29.03.2010 14:54
Валютные курсы, новые поля. Alex_R2 DAX: Функционал 3 17.07.2008 15:31
Не создаются новые поля в базе Oracle Bega DAX: Администрирование 5 29.06.2006 16:51
Код аналитики 'Номер партии' отмечен в складских проводках со значением Antidot DAX: Программирование 9 29.07.2005 10:57

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

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

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