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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.07.2008, 17:59   #21  
Михаил Андреев is offline
Михаил Андреев
Участник
Компания АМАНД
Лучший по профессии 2009
 
1,296 / 239 (10) ++++++
Регистрация: 09.11.2001
Адрес: Химки, Московская область
Цитата:
Сообщение от Bega Посмотреть сообщение
А в чем? Я смотрю метод ReqCalc::covCalc - сначала цикл по номенклатурам, потом цикл по складским аналитикам, то есть по местам, где необходимо пополнение. Отдельно для каждой комбинации аналитик запускается расчет.
Второй цикл разве идёт по ВСЕМ складским аналитикам?
__________________
Михаил Андреев
https://www.amand.ru
Старый 17.07.2008, 18:10   #22  
Bega is offline
Bega
Участник
Аватар для Bega
 
382 / 444 (15) +++++++
Регистрация: 18.08.2005
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
Bega, немножко вмешаюсь как администратор.
Коммерческие предложения разрешены только в разделе рынок, поэтому не провоцируйте людей нарушать правила, запрашивая здесь коммерческие предложения. Создайте ветку поиска коммерческих партнеров в разделе http://axforum.info/forums/forumdisplay.php?f=62
Если хотите сделайте ссылку на эту ветку.

Этот раздел назвается "DAX: Функционал".
Здесь обсуждаются вопросы функционала и возможные способы решения задач. Отмечу особо - некоммерческие вопросы и некоммерческие способы решения.
Хорошо.
Старый 17.07.2008, 18:21   #23  
Bega is offline
Bega
Участник
Аватар для Bega
 
382 / 444 (15) +++++++
Регистрация: 18.08.2005
Адрес: Москва
Цитата:
Сообщение от Михаил Андреев Посмотреть сообщение
Второй цикл разве идёт по ВСЕМ складским аналитикам?
Цитата:
Сообщение от Vals Посмотреть сообщение
В этом. Если галку снять, то система не учитывает аналитику при планировании. И покрытие считается Итого.
Из написанного, очевидность данного параметра не следует.
Мы уже сделали макет, который нам планирует переносы и представляем настройки и общую логику, поэтому обсуждать абстрактно все возможные настройки не имеет смысла, да и на форуме это все уже неоднократно обсуждалось.
Старый 17.07.2008, 18:38   #24  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Цитата:
Мы уже сделали макет
А почему об этом не сказать в первом сообщении?
Старый 17.07.2008, 18:57   #25  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Первое сообщение.
Цитата:
Сообщение от Bega Посмотреть сообщение
Обращаюсь к консалтерам, кто-нибудь реализовал в сводном планировании для одной номенклатуры пополнение с нескольких складов? Тема обсуждалась, однако не нашел, чтобы кто-то сделал это в Аксапте.
Последнее сообщение.
Цитата:
Сообщение от Bega Посмотреть сообщение
Мы уже сделали макет, который нам планирует переносы и представляем настройки и общую логику.
Непонятно в чем вопрос был.
Или вы таким замысловатым образом продавать свое пытаетесь?
__________________
полезное на axForum, github, vk, coub.
Старый 18.07.2008, 09:43   #26  
Bega is offline
Bega
Участник
Аватар для Bega
 
382 / 444 (15) +++++++
Регистрация: 18.08.2005
Адрес: Москва
Цитата:
Сообщение от mazzy Посмотреть сообщение
Непонятно в чем вопрос был.
Макет сделан на стандартном функционале. Кроме этого нам нужно пополнение с нескольких складов, пытаюсь выяснить, может его кто-то уже реализовал.
Старый 18.07.2008, 12:03   #27  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Вот.
Попытался по проще, серовно сложно получилось, но понять можно.
Рассмотрим простейший случай в системе запасы нулевые.
И reqItemTable не заполнен. Он является всего лишь дополнительным поставщиком потребностей.
Создаём заказ. Строку заказа. Выбираем номенклатуру с настроенным складом по заказу первого уровня. Т.е. Склад1_1 - > Основной.
В строке заказа у нас появляется склад1_1.
Запускаем сводное планирование.
1) Класс ReqCalc
метод insertInventTrans – получаем из запроса inventTrans, который нужно гасить.
2) Класс ReqCalc
метод newQueryInventTransReceipt – формирование запроса для прихода по InventTrans
метод newQueryInventTransIssue – формирование запроса для расхода по InventTrans
Наш случай покрыть расходную проводку.
3) Класс ReqCalc метод initTransFromInventTrans
Берём расходную проводку InventTrans, которую нужно гасить и создаём из неё reqTrans.
Т.е. создаём ReqTrans тип заказ Склад1_1
4) Класс ReqCalc метод covCreatePlannedOrder
Теперь берём нашу reqTrans.
И создаём из неё заготовку для будущего документа ReqPo. (журнал перенос)
Т.е. создаём ReqPo для переноса на Склад1_1.
ReqTrans-ов у нас пока для него нет.
5) Таблица ReqTrans метод метод initFromReqPo
Создаём приходную проводку для ReqPo.
Т.е. создаём ReqTrans для переноса на Склад1_1
6) Таблица ReqTrans метод createTransferDemand.
Создаём расходную проводку для ReqPo.
Т.е. создаём ReqTrans для переноса со склада Основной.
7) Класс ReqCalc метод covCreatePlannedOrder
Теперь берём наш reqTrans созданный в (6) и гасим его приходным документом (в нашем случае закупкой).
Т.е. создаём ReqPo для закупки на склад Основной
8) Таблица ReqTrans метод метод insertFromReqPo
Создаём приходную проводку для закупки.
Т.е. создаём ReqTrans для закупки на склад Основной.
Таким образом у нас создалось в ReqTrans 4 записи
1) Историческая – от куда всё началось(заказ)
2) Будущая приходная проводка для журнала перенос
3) Будущая расходная проводка для журнала перенос
4) Будущая приходная проводка для закупки
А также создались две записи в ReqPo (заготовки для будущих документов)
1) Журнал перенос
2) Закупка
Если бы у нас был склад второго уровня для строки заказа, то было бы
2 журнала переноса и 1 закупка.
Т.е. получается для первого уровня.
Склад заказа – склад основной.
Для второго
склад заказа – склад уровнем ниже – склад основной
На концах этих цепочек потребность заказа и потребность закупки.
А чёрточки это переносы.
Схематично было бы лучше, но думаю понятно.
Человек же хочет что была не цепочка, как можно сделать в стандарте
Склад1 (склад заказа) – склад3 – склад4 - склад2(основной)
А было три цепоки, веер
склад1 – склад3
склад1 – склад4
склад1 – склад 2 (в самом конце, если ещё осталось что-нибудь)
Т.е.
2 переноса и одна закупка
Рассмотрим для наглядности большую цепочку
1-2-3-4-5-6-7-8.(Склады)
Как стандарт создаст ReqTrans-ы (16 шт)
1 – заказ
1-2 переносы
2-3 переносы
3-4 переносы
4-5 переносы
5-6 переносы
6-7 переносы
7-8 переносы
8 - закупка
Как человек хочет (те же 16, но другие)
1 – заказ
1-2 переносы
1-3 переносы
1-4 переносы
1-5 переносы
1-6 переносы
1-7 переносы
1-8 – закупка
8 - закупка
Т.е. первый ReqTrans надо всегда подменять на склад заказа и соответственно количество тоже подменять нужно, а остальное как есть оставить.
Ну это очень упрощено.
Я только стержень объяснил.

Последний раз редактировалось miklenew; 18.07.2008 в 12:42.
За это сообщение автора поблагодарили: Wamr (2), Bega (1).
Старый 18.07.2008, 16:57   #28  
Bega is offline
Bega
Участник
Аватар для Bega
 
382 / 444 (15) +++++++
Регистрация: 18.08.2005
Адрес: Москва
Да, получается, что внутри метода covCreatePlannedOrder должен быть цикл, который создает несколько планируемых переносов.
Старый 18.07.2008, 19:55   #29  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Цитата:
Сообщение от Bega Посмотреть сообщение
Да, получается, что внутри метода covCreatePlannedOrder должен быть цикл, который создает несколько планируемых переносов.
Нет, циклами тут не получиться, тут вся суть в том что идёт цепочка "гашения".
Ввёл это слово(гашение) - потому что наиболее полно отражает то что внутри происходит. Хотя может кто лучше предложит.
Что-то возникает, гасим, снова что-то возникает, снова гасим и т.д.
Поэтому циклами я бы не стал делать.
Это задача очень интересна в плане ООП.
Вы всё равно будете наследник создавать от ReqCalcScheduleItemTable, а следовательно у вас появиться очень сильный козырь, можно почти всё подменять.
Скорее всего вам прийдёться вводить несколько дополнительный map-ов в этом наследнике, для хранения промежуточных результатов.
Вот подменой в нужных моментах вы сможете получить то что нужно.
А все циклы как шли пусть так и идут.
А вообще мне кажется, что решив эту задачу вы должны получить из этого кода в качестве дополнительного приза ещё разные вкусняшки.
Самое сложное в этой задачи. Что расчёт сам по себе долго идёт. Даже если максимально облегчить компанию и настройки.
Я когда то делал задачу по гашению заказа и журнала проводка.
Т.е. в шапке заказа и журнале проводка была кнопка покрыть.
Она запускала сводное планирование по тем номенклатурам, которые входят в эти документы. А проводки покрывала только те которые создавали эти документы.
Но всё равно, если не подводит память, секунд 20 занимало.
Да, кстати, если со временем терпит, могу через неделю(отпуск начнётся) заняться этой задачей. Дня три думаю займёт. 5 000 р\за день. После контроля качества пришлю реквизиты карточки для перевода.
Если не терпит, пишите в ветке, можно и совместно через форум решать, я думаю это задача вызвет интерес не только у вас.
Интересно же.

Последний раз редактировалось miklenew; 18.07.2008 в 20:32.
Старый 18.07.2008, 21:04   #30  
Bega is offline
Bega
Участник
Аватар для Bega
 
382 / 444 (15) +++++++
Регистрация: 18.08.2005
Адрес: Москва
Цитата:
Сообщение от miklenew Посмотреть сообщение
если со временем терпит
Пока терпит, об остальном - в личку.
Старый 19.07.2008, 07:52   #31  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,909 / 5730 (197) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
А мне вот интересно - а как вы будете считать предполагаемые остатки на некотором складе на некоторую дату из будущего ? Представим себе что у вас есть популярный склад пополнения. Сейчас там 500 штук материалов. При планировании n потребностей переносами с этого склада напокрывали. Соответственно при планировании n+1 потребности, необходимо из текущего остатка вычесть сумму покрытых со склада потребностей. То есть - нужно написать что-то типа функции InventOnHand, только учитывающей не текущие складские остатки, а складские остатки на некую предполагаемую дату в будущем (с учетом покрытия из текущего плана). Причем в первом приближении, эта функция должна вообще работать не с данными из inventSum/InventTrans, а только с данными из reqTrans (поскольку туда при планировании и складской остаток и все предполагаемые движения попадают).
Вам явно понадобится подобная информация, чтобы оценить - с каких складов пополнять...
В общем - я верю что можно такую задачу решить, но у меня лично в свое время руки так и не дошли.
Так что не пишите в личку, пишите в форум - мне тоже интересно

Последний раз редактировалось fed; 19.07.2008 в 07:55.
Старый 19.07.2008, 17:06   #32  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
fed, в определении остатка на дату строки документов по предложениям не участвуют.
А это своего рода такие же предложения.
Старый 21.07.2008, 11:40   #33  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,766 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Цитата:
Я когда то делал задачу по гашению заказа и журнала проводка.
Т.е. в шапке заказа и журнале проводка была кнопка покрыть.
Она запускала сводное планирование по тем номенклатурам, которые входят в эти документы. А проводки покрывала только те которые создавали эти документы
Если по строкам нажать Запросы/Развёртывание (Чистые потребности), затем Обработка (Обновление - Сводное планирование), то получим искомую функцию.

Последний раз редактировалось Vals; 21.07.2008 в 12:02.
Старый 21.07.2008, 11:53   #34  
blokva is offline
blokva
Пенсионер
Аватар для blokva
SAP
NavAx Club
 
743 / 167 (7) ++++++
Регистрация: 04.06.2003
Адрес: Беларусь
Интересно, а нельзя ли эту задачу решить организационно, например все склады к одному, а территориальную разрозненность осуществить через зоны одного склада (ячейки)?
__________________
Законы природы еще никто не отменял!
А еще у меня растет 2 внучки!!! Кому интересно подробности тут:
http://www.baby-shine.com/
Старый 21.07.2008, 12:47   #35  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Цитата:
Сообщение от Vals Посмотреть сообщение
Если по строкам нажать Запросы/Развёртывание (Чистые потребности), затем Обработка (Обновление - Сводное планирование), то получим искомую функцию.
Здорово.
Но, не я заказчик модификации.
Мне сказали я сделал.
Там всего то два метода в наследнике перекрыл.
Плюс дополнительные проверки и удаление старых документов сделал, если уже утверждено.
Оказывается зря эти два метода перекрывал. Нужно было лишь подсунуть нужные данные.
А вообще спасибо.
Теги
пополнение, сводное планирование, покрытие

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Пополнение склада из нескольких складов-источников? Lz_ DAX: Функционал 5 20.09.2007 15:14
доступ к группе складов a-da DAX: Программирование 9 09.04.2007 08:02
Пополнение основного склада George V. Tavrizoff DAX: Функционал 4 20.03.2007 13:47
Отгрузка с нескольких складов Vladimir_clone DAX: Функционал 5 05.03.2007 11:26
Планирование нескольких продуктов из одной партии сырья Lexeich DAX: Функционал 12 25.08.2006 10:37

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

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

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