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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.03.2016, 13:38   #1  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Разноска миллиона накладных Ах2012
Коллеги, добрый день! Подскажите как можно "быстро" разнести миллион накладных по заказам на продажу? Ну хотя бы за пару-тройку дней Кто то сталкивался с таким объемом?

Заранее спасибо!
Старый 25.03.2016, 14:09   #2  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
По-моему, все зависит от числа строк в каждой накладной: если строк немного, то разнести этот объем можно и быстрее, тем более что в 12-ке разноска накладных штатно поддерживает распараллеливание. Если же в каждой накладной по 100+ строк, то вряд ли удастся уложиться в пару-тройку дней.
К примеру, если взять разноску розничных журналов реализации (по ним сначала создаются заказы на продажу, а уже потом разносятся накладные), то я в реале видел разноску в общей сложности свыше 1.5 млн строк заказов на продажу за сутки (2.5 млн строк чеков). Но для этого потребовалась предварительная оптимизация создания заказов/накладных и их разноски, включая оптимизацию разноски налогов.
Старый 25.03.2016, 14:13   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,952 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
А зачем вам столько ?
Сальдо по куче договоров и клиентов формируете ?
Может можно поговорить с заказчиком и уменьшить число документов на 1-2 порядка ?
Старый 25.03.2016, 14:23   #4  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от Logger Посмотреть сообщение
А зачем вам столько ?
Сальдо по куче договоров и клиентов формируете ?
Может можно поговорить с заказчиком и уменьшить число документов на 1-2 порядка ?
Переезд из 4-ки в 12-ку. Хотят видеть все накладные за период, насколько я понял.
Старый 25.03.2016, 14:24   #5  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Я рою в строну Thread. Имеет ли смысл?
+ это не просто накладные 1 в 1 как заказ на продажу. Есть код, который собирает корректно ParmTabl'ы, Корректируется НДС. А потом уже запускается разноска

Последний раз редактировалось Sada; 25.03.2016 в 14:26.
Старый 25.03.2016, 14:37   #6  
Alexius is offline
Alexius
Участник
Аватар для Alexius
 
461 / 248 (9) ++++++
Регистрация: 13.12.2001
А может в лоб SQL запросами перебросить все таблички ? Структура баз данных конечно сильно различается, но при некоторой сноровке я думаю можно создать скриптик.

PS. А в 2012 нет штатной процедуры по транформации базы из 4.0 по аналогии с 3.0 --> 2009 ?
PS2. При выбранном вами подходе есть некоторая вероятность, что поползут копейки

Последний раз редактировалось Alexius; 25.03.2016 в 14:44.
Старый 25.03.2016, 14:37   #7  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от Sada Посмотреть сообщение
Я рою в строну Thread. Имеет ли смысл?
Посмотрите, как штатно распараллеливается разноска накладных в 12-ке: там просто создается в runtime пакетная задача - и всё, остальное - проблемы пакетного сервера. Администратор идет и настраивает нужное число потоков или добавляет пакетные сервера для той же пакетной группы. А вручную создавая дохреналион потоков, вы либо недозагрузите имеющиеся мощности, либо уроните сервер.

А если в заказе строк мало, то лучше паковать их в bundle'ы, как сделано в 12-ке для распараллеливания разноски журналов ГК.
Старый 25.03.2016, 14:45   #8  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от Alexius Посмотреть сообщение
А может в лоб SQL запросами перебросить все таблички ? Структура баз данных конечно сильно различается, но при некоторой сноровке я думаю можно создать скриптик.

PS. А в 2012 нет штатной процедуры по транформации базы из 4.0 по аналогии с 3.0 --> 2009 ?
PS2. При выбранном вами подходе есть некоторая вероятность, что поползут копейки
Копейки проверяются. Таких накладных 1-2 на 50000. Их можно разнести руками. Скриптик? Не вариант. Хотя скриптик есть котортый тащит накладные из 4-ки в 12-ку в свои таблички. По ним как раз собираются парм тейблы.

Последний раз редактировалось Sada; 25.03.2016 в 14:47.
Старый 25.03.2016, 14:52   #9  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Посмотрите, как штатно распараллеливается разноска накладных в 12-ке: там просто создается в runtime пакетная задача - и всё, остальное - проблемы пакетного сервера. Администратор идет и настраивает нужное число потоков или добавляет пакетные сервера для той же пакетной группы. А вручную создавая дохреналион потоков, вы либо недозагрузите имеющиеся мощности, либо уроните сервер.

А если в заказе строк мало, то лучше паковать их в bundle'ы, как сделано в 12-ке для распараллеливания разноски журналов ГК.
Я думал об этом. Напомните где распараллеливается разноска пожалуйста. Интересно как быстро эта штука может разносить?
Старый 25.03.2016, 17:59   #10  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Так и сделаю, в пакетах. Посмотрим что получится
Старый 25.03.2016, 22:31   #11  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Цитата:
Сообщение от Sada Посмотреть сообщение
Так и сделаю, в пакетах. Посмотрим что получится
Отпишитесь потом хоть, интересно, что получилось.
Старый 26.03.2016, 00:08   #12  
YinYang is offline
YinYang
Banned
 
1 / 10 (0) +
Регистрация: 04.03.2016
Цитата:
Сообщение от Sada Посмотреть сообщение
Посмотрим что получится
классический подход нети. дайте денег - а мы посмотрим что получится)))) при этом наивный сада имеет максимум 25% от того что платит наивный клиент... хотя судя по результатам имеет нети, причем всех и клиента и исполнителя... это бизнес сада, ничего личного. бггггг

Последний раз редактировалось YinYang; 26.03.2016 в 00:45.
Старый 26.03.2016, 12:16   #13  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от user_ax Посмотреть сообщение
Отпишитесь потом хоть, интересно, что получилось.
Обязательно
Старый 26.03.2016, 12:17   #14  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от YinYang Посмотреть сообщение
классический подход нети. дайте денег - а мы посмотрим что получится)))) при этом наивный сада имеет максимум 25% от того что платит наивный клиент... хотя судя по результатам имеет нети, причем всех и клиента и исполнителя... это бизнес сада, ничего личного. бггггг
Спасибо за ваше мнение, оно очень важно для нас. Главное конструктивно и по теме
Старый 26.03.2016, 13:22   #15  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,952 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Sada Посмотреть сообщение
Переезд из 4-ки в 12-ку. Хотят видеть все накладные за период, насколько я понял.
ппц.
Так потом же платежи еще перегонять и сопоставлять. Какой-то закат солнца вручную.
Кстати если им только сами накладные с дебиторкой интересны, то можно товарный контур не брать. Перенести накладными на услуги. Будет намного быстрее.
Старый 27.03.2016, 15:31   #16  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,164 / 1293 (48) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от Sada Посмотреть сообщение
Переезд из 4-ки в 12-ку. Хотят видеть все накладные за период, насколько я понял.
А сколько времени займет закрытие склада при этом? Как-то оценивали?
А сопоставление накладных с платежами сколько будет отрабатывать?
Старый 28.03.2016, 10:47   #17  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от Alexius Посмотреть сообщение
PS. А в 2012 нет штатной процедуры по транформации базы из 4.0 по аналогии с 3.0 --> 2009 ?
https://msdn.microsoft.com/en-us/library/jj736078.aspx

The supported source systems for direct upgrade to Microsoft Dynamics AX 2012 are as follows:

• Microsoft Dynamics AX 4.0


• Microsoft Dynamics AX 2009

The upgrade starts and the source environment is still live, but there is minimal effect to the live system
Старый 28.03.2016, 11:50   #18  
DmitryK is offline
DmitryK
Участник
 
179 / 76 (3) ++++
Регистрация: 22.12.2011
Для проверки производительности системы делали нечто подобное. Делали так:
1) Планируем запускать, например, 100 сессий. В отдельной таблице делаем распределение заказов на разноску для этих 100 сессий.
2) Делаем Batch файл который запускает АХ2012R3, при этом в info.startup прописан старт класса на разноску распределенных заказов из списка для этой сессии.

Средняя скорость разноски для 100 сессий (при количестве строк от 5 до 300~400) - заказ в секунду.
Пробовали запускать в отдельном потоке, вместо сессий, результат тот же.

Таким образом, можно предсказать, что ваши заказы будут разноситься около 10,11 суток

С уважением, Дмитрий.
Старый 28.03.2016, 13:58   #19  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Цитата:
Сообщение от DmitryK Посмотреть сообщение
Для проверки производительности системы делали нечто подобное. Делали так:
1) Планируем запускать, например, 100 сессий. В отдельной таблице делаем распределение заказов на разноску для этих 100 сессий.
2) Делаем Batch файл который запускает АХ2012R3, при этом в info.startup прописан старт класса на разноску распределенных заказов из списка для этой сессии.

Средняя скорость разноски для 100 сессий (при количестве строк от 5 до 300~400) - заказ в секунду.
Пробовали запускать в отдельном потоке, вместо сессий, результат тот же.

Таким образом, можно предсказать, что ваши заказы будут разноситься около 10,11 суток

С уважением, Дмитрий.

Запускали 30 сессий. Разносит где то 1000 в час(((
Старый 28.03.2016, 16:19   #20  
DmitryK is offline
DmitryK
Участник
 
179 / 76 (3) ++++
Регистрация: 22.12.2011
Очень странно, т.к. у нас использовался низко производительный сервер и на рабочем результаты должны быть выше.Поставили ли вы галочку авторезервирование в шапке заказа, это может ускорить процесс, т.к. резервирование будет проходить на этапе создания заказа.
Какая у вас загрузка процессора при 30 сессиях выполняющих разноску?
Есть ли блокировки?
Есть ли ошибки?

С уважением, Дмитрий.

Последний раз редактировалось DmitryK; 28.03.2016 в 16:23.
Теги
ax2012r3

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Внутрихолдинг. Автоматическая разноска накладных не работает evb DAX: Программирование 7 03.02.2016 14:26
АХ2012. Разноска авансов по клиентам. AlenaKazan DAX: Функционал 3 18.07.2013 17:43
Разноска заказа в ах2012 DmitryK DAX: Программирование 10 28.03.2013 14:41
Axapta 3.0 sp5 разноска накладных на дату вперед и назад Murlin DAX: Функционал 16 29.09.2010 16:52
DAX2009. Разноска накладных Andrux DAX: Функционал 11 27.07.2010 18:56

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

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

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