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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.10.2005, 14:03   #1  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Параметр "Назад от даты поставки" в группах складских моделей
Прежде чем написать порылся в архиве. Из постов стало ясно, что в независимости, стоит ли эта галочка или не стоит - резервирование всегда по ФИФО.
Тестирую на трешке с четвертым паком - тоже самое.
Такую явную ошибку и не исправили еще?
Кто че знает по этому поводу?
Старый 07.10.2005, 19:33   #2  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Ну, не совсем так. Разница есть. Только ФИФО и ЛИФО — это не то, как все себе это представляют.
__________________
С уважением,
glibs®
Старый 07.10.2005, 20:17   #3  
AKIS-Falcon is offline
AKIS-Falcon
Ехидна
Аватар для AKIS-Falcon
 
543 / 13 (2) ++
Регистрация: 22.06.2004
Адрес: Pincourt, Montreal, Canada
Слава, а разрешите вопрос: вам ФИФО и ЛИФО по какой именно дате нужно?

1) По дате приходования на склад? (т.е. партии в одной накладной с разным остаточным сроком хранения получат одинаковый приоритет)?
2) По дате выпуска?
3) По дате истечения срока годности?

А вообще вам надо в класс InventUpd_Reservation, метод UpdateReserveMore (...less тоже, но только отчасти). Там самое основное действие и творится.
__________________
Strictly IMHO and nothing personal.
Сугубо мое персональное мнение, безотносительно к личности оппонента.
Старый 07.10.2005, 20:28   #4  
AKIS-Falcon is offline
AKIS-Falcon
Ехидна
Аватар для AKIS-Falcon
 
543 / 13 (2) ++
Регистрация: 22.06.2004
Адрес: Pincourt, Montreal, Canada
Для вашего, тысызыть, удобства... В.И. Ленин, избранные места из переписки с Каутским

PHP код:
protected void updateReserveMore()
{
...
// Бла-бла-бла
...
    
#Define.availPhysical(1)
    #Define.availOrdered(2)
    
;

    
loopReserveType     this.parmAllowReservePhysical() ? :
                         (
this.parmAllowReserveOrdered()  ? 3);
...
// Бла-бла-бла
...
        
query InventSum::newQuery(NULL,movement.itemId(),inventDimCriteria,inventDimParm,InventDimParm::activeDimFlag(movement.dimGroupId()));

        switch ((
loopReserveType!=0) ? 1)
        {
            case(
#AvailPhysical) :
                
query.dataSourceTable(TableNum(InventSum)).addRange(FieldNum(InventSum,availPhysical)).value('!0'); // Ежели НЕ стоит крыжик Разрешено резервировать в заказах - то добавляем ограничение не равно нулю по соответствющему полю

                
if (allowReserveByDate)
                    
query.dataSourceTable(TableNum(InventSum)).addSortField(FieldNum(InventSum,LastUpdDatePhysical)); // Во, это то что нам надо - видите, какое поле участвует в сортировке? Оно вам подходит?

                
break;
            case(
#AvailOrdered) :
                
query.dataSourceTable(TableNum(InventSum)).addRange(FieldNum(InventSum,availOrdered)).value('!0');// Ежели стоит крыжик Разрешено резервировать в заказах - то добавляем ограничение не равно нулю по соответствющему полю

                
if (allowReserveByDate)
                {
                    if ((
loopReserveType == && allowReserveReversed))
                    {
                        
query.dataSourceTable(TableNum(InventSum)).addSortField(FieldNum(InventSum,LastUpdDateExpected),sortorder : : DESCENDING);

                        
query.dataSourceTable(tableNum(inventSum)).addRange(FieldNum(InventSum,LastUpdDateExpected)).value('..'+queryValue(movement.transDate())); // тож обратите внимание на поле даты...
                    
}
                    else
                        
query.dataSourceTable(TableNum(InventSum)).addSortField(FieldNum(InventSum,LastUpdDateExpected),sortorder::ASCENDING);
                }
// ...и здесь...
.. 
// дальше опять пошел бла-бла-бла

__________________
Strictly IMHO and nothing personal.
Сугубо мое персональное мнение, безотносительно к личности оппонента.
Старый 08.10.2005, 14:13   #5  
Shur is offline
Shur
Участник
 
8 / 10 (1) +
Регистрация: 07.03.2003
Адрес: Украина, Донецк
Цитата:
Изначально опубликовано AKIS-Falcon
Слава, а разрешите вопрос: вам ФИФО и ЛИФО по какой именно дате нужно?

1) По дате приходования на склад? (т.е. партии в одной накладной с разным остаточным сроком хранения получат одинаковый приоритет)?
2) По дате выпуска?
3) По дате истечения срока годности?

А вообще вам надо в класс InventUpd_Reservation, метод UpdateReserveMore (...less тоже, но только отчасти). Там самое основное действие и творится.
Извините, что задержал с ответом.
В руководстве по лохистике написано, что будет выбиратся партия по дате прихода.
Я так понимаю, что имеется ввиду дата складской проводки. Или я не прав?
Кстати, я вопрос задал потмучто хочу понять как система работает. По факту. Задачи у меня никакой не стоит.
Старый 09.10.2005, 02:18   #6  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Изначально опубликовано Shur
...В руководстве по лохистике...
Да, да.
Цитата:
Изначально опубликовано Shur
...
будет выбиратся партия по дате прихода.
Я так понимаю, что имеется ввиду дата складской проводки. Или я не прав?
...
Скорее прав, чем нет. У складской проводки херова туча дат.

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

При резервировании учитывается физическая дата из проводки. При включении резервирования по дате, по идее, первой будет резервироваться та партия, которая пришла раньше всех.

Однако, если, например, пришли партии 1, 2 и 3 (будем считать, что партии перечислены в хронологической последовательности, в которой они поступали), и тут вдруг по партии 1 клиент что-то вернул, то она встанет в очередь на резервирование последней. Причем не только то, что вернулось от клиента, но и все, что по ней не было еще продано.

Нужно отдать разработчикам должное, но при переносе в InventSum сохраняется физическая дата прихода, а не переноса.
__________________
С уважением,
glibs®
Старый 09.10.2005, 02:41   #7  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
И еще, пожалуй...
Цитата:
Изначально опубликовано glibs
...
Однако, если, например, пришли партии 1, 2 и 3
...
Немного обобщу.

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

Механихм резервирования будет работать сложнее, если на складе будут использоваться ячейки и/или паллеты (все описанное выше будет действовать, однако в рамках, например, партии, появится больше строчек-InventSum'ов и больше дат).

В общем, когда речь идет о ФИФО или ЛИФО, то де-факто речь идет о порядке подбора при резервировании складских аналитик, а не реальных приходов.

Нужно отметить, что в случае с партиями, например, во многих случаях реализованный в Аксапте принцип подбора партии расхода будет обеспечивать или будет очень близок к обеспечению списания по ФИФО или ЛИФО не только аналитик, но и реальных приходов. Но, в общем случае это все-таки подбор аналитик, а не реальных приходов.
__________________
С уважением,
glibs®
Старый 10.10.2005, 11:13   #8  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Есть очевидный пример, когда резервирование "Назад от даты поставки" не работает.
Аналитика: склад+партия+серия+ГТД+ячейка
Первичная аналитика: склад+партия+серия.
Есть товар, есть два прихода по нему.
Никаких возвратов, переносов и т.п. Всего две складские проводки.
У одного прихода ВСЕ даты 10 число.
У другого прихода ВСЕ даты 11 число.
Все даты партий, серий соответствующие.
Добавляю строчку в заказ созданием строки.
Галочка "Назад от даты поставки" стоит (для особо ушлых
Если кого заинтересует закидаю скриншотами - без проблем.
Старый 10.10.2005, 14:28   #9  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
И что?
__________________
С уважением,
glibs®
Старый 10.10.2005, 14:43   #10  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Да так... ни чё...
Подумаешь система ведет себя не так как написано в инструкции...
Да и ваще... пёс с ней...


Если серьезно: может эту багу в МБС отправить? - нехай разберутся, исправят.
Как думаете?
Старый 04.04.2006, 10:16   #11  
target2 is offline
target2
Участник
 
9 / 10 (1) +
Регистрация: 27.10.2004
Адрес: Екатеринбург
Столкнулись с этой же проблемой. Микрософт ничего не ответил?
Старый 04.04.2006, 10:28   #12  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
А в него никто и не обращался
Старый 04.04.2006, 15:53   #13  
target2 is offline
target2
Участник
 
9 / 10 (1) +
Регистрация: 27.10.2004
Адрес: Екатеринбург
Ну и ладно.Будем считать,что это невозможно
Старый 28.09.2007, 16:44   #14  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Как-то проводя раскопки кода при строительстве наткнулся на кусок кода, в котором реализован настоящий FIFO. В Аксапте.

WMSShipmentReservation.findFloatingPickItemBatch()

Вот в этом методе это происходит.

Это кусок механизма резервирования функциональности WMS. Суть в том, что если для номенклатуры активна аналитика Партия (см. WMSShipmentReservation.findFloatingPickItem() сразу после завершения объявления переменных), то ищется паллета с партией с минимальной датой производства. Переделать на минимальный срок годности не сложно.

Правда, назвать эту новость положительной сложно. Т.к. данный кусок кода является примерно одной четвертой от общего алгоритма резервирования номенклатуры функциональности WMS. В остальных случаях работает "стандартный" подход к резервированию, который подробно описан выше.

Чем объясняется неодинаковость подхода можно только догадываться .
__________________
С уважением,
glibs®
Старый 25.12.2007, 16:38   #15  
atodurov is offline
atodurov
Участник
 
6 / 10 (1) +
Регистрация: 25.12.2007
to glibs:

может, все таки настоящий FEFO? Вот чего не хватает, так не хватает, если честно...
Старый 25.12.2007, 20:51   #16  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
А чего вы со мной торгуетесь как с бабушкой на базаре, которая семечки продает (как будто я там на что-то влияю)? Как сделали, так сделали.

Только я не совсем точно написал. Там на самом деле FPFO (First Produced First Out). Если предположить, что продукция сдается на склад в день производства, то будет FIFO.

Кстати... если предположить, что у одной и той же продукции срок годности является константой... то будет FEFO. Забавная мысль. М.б. вам от нее полегчает .
__________________
С уважением,
glibs®
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка "Машинной даты" Vals DAX: Администрирование 5 12.09.2007 12:20
Формат даты для "родного" диалекта SQL Jab Straight DAX: Программирование 19 14.03.2007 16:11
Параметр "Проводка отб. накладной в ГК." vml DAX: Функционал 3 14.04.2006 10:55
Параметр "Максимальная дата закрытия".... soin DAX: Функционал 0 11.01.2006 14:18
Сопоставление номенклатуры группе складских моделей с учетом склада ATimTim DAX: Функционал 8 18.03.2005 22:26
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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