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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.02.2011, 01:16   #1  
Blog bot is offline
Blog bot
Участник
 
22,862 / 778 (71) +++++++
Регистрация: 28.10.2006
Kurt Hatlevik: Review of inventory II
Источник: http://kurthatlevik.wordpress.com/20...-inventory-ii/
==============

  The company behind the inventory II Inventory II is an add-on module to Microsoft Dynamics AX, that focuses on improving and extending inventory management. Before I look deep into the product, I wanted to take a look at the … Continue reading →

Источник: http://kurthatlevik.wordpress.com/20...-inventory-ii/
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
Старый 23.02.2011, 08:17   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
как интересно.
хоть и реклама, но оставляю в тематическом разделе.

что думаете об изложенном подходе?
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 08:59   #3  
mifi is offline
mifi
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
168 / 59 (2) ++++
Регистрация: 24.07.2002
Цитата:
Сообщение от mazzy Посмотреть сообщение
как интересно.
хоть и реклама, но оставляю в тематическом разделе.

что думаете об изложенном подходе?
Пришлось столкнуться с одной инсталляцией Inventory II. Подход интересный, но.. Код и, более того, модель данных по расчету себестоимости у них свои, даже InventSum им не пригодился. Если возникают баги - а они возникают, то без поддержки разработчиков из этой самой FSB пофиксить их проблематично. Если правда, что разработчики FSB разрабатывали Inventory с самого начала, то стабильность Inventory II напоминает стабильность закрытия склада в Axapta 2.1. Так что думайте сами, но лично я бы не решился "truly recommend".

Последний раз редактировалось mifi; 23.02.2011 в 09:06.
Старый 23.02.2011, 09:46   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
бог с ними - и с конкретным решением, и с конкретной компанией.
Цитата:
Сообщение от mifi Посмотреть сообщение
Пришлось столкнуться с одной инсталляцией Inventory II. Подход интересный, но..
Вопрос как раз о подходе.
Насколько оправдан такой подход? особенно с отменой inventDim в следующей версии аксапты.

суть подхода, насколько я понял:
Цитата:
So the on-hand transactions are not a single record, but a SUM of the records. The watermark will make sure that you only fetch the latest values when you do reporting. So this solved the issue of the blocking lock when doing postings.

But will this not generate a gigantic table ? The answer is yes, it would, and the heart of the inventory II is therefore a background engine, that will eventually remove ImTrans records that no longer represents any valid data


хочу также отметить, что существующий подход стандартной аксапты - редактирование складских проводок - противоречит общему подходу "запрет редактирования проводок, только сторно". а в Inventory II запрет редактирования распространяется и на складские проводки тоже. другими словами, подход "только сторно" обобщается.
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 09:55   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
и еще одно:
а как в invenory II обстоят дела со вводом задним числом?
если ввести проводку в середину, то что будет?

а как вводить накладные расходы задним числом?
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 09:58   #6  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,543 / 4898 (169) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Мне вот больше интересно, к чему они эти самые ватерлинии привязывают. К лоту ? К номенклатура+аналитика финансового склада ? Или это как-то совмещено с их квазизакрытием склада, которое периодически архивирует старые данные и, надо полагать,как-то помечает именно те проводки, которые отвечают за текущее состояние склада...
Старый 23.02.2011, 09:58   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
блин, больше вопросов, чем ответов.

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

чистка должна быть очень-очень интеллектуальной. или я чего-то не понимаю?

============================
кстати, на скриншотах нет дат. корректирующие проводки делаются той же датой, что исходная проводка? другими словами, даты у проводок с разными watermark'ами совпадают или не совпадают?
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 09:58   #8  
petr is offline
petr
Участник
Соотечественники
 
557 / 199 (8) ++++++
Регистрация: 30.05.2005
Адрес: Швейцария
Очень хорошая статья. Спасибо за ссылку.

Насчет самого решения, аналогичная идея используется в стандартной Dynamics Ax 2009 для финансовых итогов. Недавно на форуме эту тему обсуждали. Тоже во время разноски итоги не обновляются, а только инсертятся, а потом передически запускается процедура, которая их суммирует и оставляет одну запись по одной аналитике в день.

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

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

Посмотрим, что будет в Dynamics Ax 2012. Может они еще более красивое решение придумают.
За это сообщение автора поблагодарили: mazzy (2).
Старый 23.02.2011, 10:02   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от fed Посмотреть сообщение
Мне вот больше интересно, к чему они эти самые ватерлинии привязывают. К лоту ? К номенклатура+аналитика финансового склада ? Или это как-то совмещено с их квазизакрытием склада, которое периодически архивирует старые данные и, надо полагать,как-то помечает именно те проводки, которые отвечают за текущее состояние склада...
похоже, некий код транзакции.
похоже, каждая транзакция генерит собственный ватермарк.
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:04   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от petr Посмотреть сообщение
Авторы же сделали подобное для склада, отличие в том, что у них процедура группировки и сжатия "старых" данных параметрезирована и работает как служба. Для финансовых итогов (LedgerBalancesTrans) такую функцию надо переодически запускать ручками.
А можно попросить вас рассказать ваше знание?

по-моему вовсе не "подобное".
в LedgerBalancesTrans - инсертятся/сжимаются ИТОГИ!!!
здесь же инсертятся/сжимаются ПРОВОДКИ!!!

здесь суть в том, чтобы от итогов отказаться вообще.
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:06   #11  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,543 / 4898 (169) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от mazzy Посмотреть сообщение
блин, больше вопросов, чем ответов.

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

чистка должна быть очень-очень интеллектуальной. или я чего-то не понимаю?

============================
кстати, на скриншотах нет дат. корректирующие проводки делаются той же датой, что исходная проводка? другими словами, даты у проводок с разными watermark'ами совпадают или не совпадают?
Не - они не таблице проводок (inventTrans) чистят, а только свою новенькую таблицу. То есть - в случае чего всегда можно запустить медленный отчет, который с начала времен попроводочно обороты считает. Или можно запустить новый отчет, который работает по более компактной табличке, но обороты внятно раскрывает только за последнее время.
Старый 23.02.2011, 10:08   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от fed Посмотреть сообщение
Не - они не таблице проводок (inventTrans) чистят, а только свою новенькую таблицу.
разве?
я похоже чего-то важного не понимаю.

уважаемые участники, можно попросить перевести на русский суть подхода?
чтобы обсуждать одно и то же
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:09   #13  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,543 / 4898 (169) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от mazzy Посмотреть сообщение
А можно попросить вас рассказать ваше знание?

по-моему вовсе не "подобное".
в LedgerBalancesTrans - инсертятся/сжимаются ИТОГИ!!!
здесь же инсертятся/сжимаются ПРОВОДКИ!!!

здесь суть в том, чтобы от итогов отказаться вообще.
fed: Ledger Balance Data in DAX

Ты там еще долго упорствовал, доказывая что это вообще итоги. А оказалось что это таки обороты по документу ГК. И только после пересчета периода, они сворачиваются до итогов по счету+дата+аналитика+вид учета.
За это сообщение автора поблагодарили: mazzy (2).
Старый 23.02.2011, 10:11   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от petr Посмотреть сообщение
Авторы же сделали подобное для склада, отличие в том, что у них процедура группировки и сжатия "старых" данных параметрезирована и работает как служба. Для финансовых итогов (LedgerBalancesTrans) такую функцию надо переодически запускать ручками.
Цитата:
Сообщение от fed Посмотреть сообщение
Не - они не таблице проводок (inventTrans) чистят, а только свою новенькую таблицу.
Хм... Я пропустил вот это?


Цитата:
The complexity of on-hand has been replaced by a single table, called ImTrans. This system uses a ‘insert-approach’, meaning that there do not happen any SQL-”update” statements on any of the records.
надо подумать.
и все-таки нужен единый русский текст...
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:11   #15  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,543 / 4898 (169) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Там переводить не надо, там вот на этой картинке все видно:


Обрати внимание на высоту полосок в двех табличках. В новой табличке, записи старше 182 дней (26 недель) суммированы в одну запись per-day.
Старый 23.02.2011, 10:16   #16  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от fed Посмотреть сообщение
Там переводить не надо, там вот на этой картинке все видно:


Обрати внимание на высоту полосок в двех табличках. В новой табличке, записи старше 182 дней (26 недель) суммированы в одну запись per-day.
надо-надо переводить.
как это в "новой табличке", если на рисунке написано "Sold and Purchase transactions older then"?

как это "per-day", если в "новой табличке" дат вообще нет?
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:21   #17  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от fed Посмотреть сообщение
В новой табличке
хотя... поверх зеленых столбцов большими буквами написано ImTrans Table.

может быть, вы и правы.
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:25   #18  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
и все-таки...

можно вопросы понимающим:
1. для того, чтобы вставить сторно в ImTrans нужно знать "предыдущее" значение. а как его получать? делая запрос на "последний watermark"?

2. а что все-таки происходит с "задним числом" при таком подходе?
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 23.02.2011, 10:43   #19  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,543 / 4898 (169) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
В общем, из текста этого не понятно, но я так подозреваю что они тупо повесили функцию на обновление inventTrans, и каждый раз когда статус меняется, они сначала пишут сторно старого статуса в этот ImTrans, а потом вставляют новую запись. Возможно, они также создают при этом новую ватерлинию.
Еще из интересного, на картинке написано что записи в статусе estimated (onOrder/Ordered) автоматически вычищаются из imTrans спустя какое-то время.
То есть - у них на каждое обновление inventTrans пишется пара записей и новая ватерлиния в imTrans.
Соответственно, для того чтобы получить текущее состояние склада, надо просуммировать все несторнировочные записи с текущими ватерлиниями.
Для того чтобы получить состояние склада на дату из недавнего прошлого, надо просуммировать все активные записи в imTrans на тот момент. (Вероятно они в imTrans таки пишут дату и время).
Еще более интересная фича, мы можем восстановить не только остатки в наличии на дату, но и более интересную информацию - типа сколько у нас было зарегистрировано или запиковано (забыл как это в русском переводе) НА ДАТУ, поскольку эта инфа остается в imTrans с неактивными ватерлиниями

Еще интересная вещь, о которой пишет автор, это разделение Inventory Reservation и Pick Reservation. Правда, он не пишет как это сделано и связано ли это с imTrans. Основная идея (правда я домыслил тут слегка из собственной практики): На ранних стадиях резервирования, когда нам нужно тупо привязать товар к заказу/журналу, нам не нужно знать на какой полке и в какой палетте этот товар лежит. Мы делаем inventory reservation, в котором физическая конкретика не указана. А тогда, когда мы реально собираемся товар собирать и грузить, мы делаем Pick Reservation, которая собственно привязывает резерв к конкретной полке и паллете.
Я кстати, делал на своем проекте одном что-то похожее. Только у нас первая стадия делалась на уровне группы складов (без привязки к конкретному складу). На этой стадии, складские могли возить товар между складами не парясь с проблемой переноса разерва. Потом перед отгрузкой, сейл блокировал этот товар от перемещения и он жестко закреплялся на неком складе, с которого складские его уже не могли увезти (только отгрузить клиенту).

Последний раз редактировалось fed; 23.02.2011 в 11:45.
Старый 23.02.2011, 10:47   #20  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,038 / 3955 (190) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от fed Посмотреть сообщение
В общем, из текста этого не понятно, но я так подозреваю что они тупо повесили функцию на обновление inventTrans, и каждый раз когда статус меняется, они сначала пишут сторно старого статуса в этот ImTrans, а потом вставляют новую запись.
Гы... Прикольно.

Т.е. просто не искать ничего в ImTrans, а надеятся на консистентность базы...
Т.е. при неумелом вмешательстве программиста и/или при doUpdate, doDelete, doInsert пойдут косяки...
и никаких изменений в базе в обход аксапты...

Что ж, интересный подход - скорость в обмен на надежность.
хотя может быть они прямо в SQL-триггера код пишут...
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Теги
как правильно, полезное

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Kurt Hatlevik: Warehouse Management and Distribution for Dynamics AX 2009 Blog bot DAX Blogs 0 04.05.2009 14:05
Kurt Hatlevik: Sneak preview of the WMS E&E Blog bot DAX Blogs 0 04.05.2009 14:05
Kurt Hatlevik: Warehouse Management and Distribution for Dynamics AX 2009 Blog bot DAX Blogs 0 20.11.2008 01:10
Kurt Hatlevik: Sneak preview of the WMS E&E Blog bot DAX Blogs 0 20.11.2008 01:10
Arijit Basu: Copenhagen Convergence Review | Episode II Blog bot DAX Blogs 0 12.11.2007 01:55
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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