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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.03.2008, 20:38   #1  
tolstjak is offline
tolstjak
Участник
 
440 / 16 (1) ++
Регистрация: 05.01.2003
Пересчет данных по периодам
Здравствуйте уважаемые.
Ax30 SP1 (клиент и сервер SP3)

С недавних пор перестала работать процедура - Пересчет данных по периодам.
При этом после часа работы система закрывается и пишет, что сервер закрыл соединение с вашим компьютером. При этом процедура не отрабатывается.

Может быть кто-нибудь сталкивался с данной проблемой?
Что посоветуете?

Заранее благодарен.
__________________
Александр
Старый 13.03.2008, 09:49   #2  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Записей в LedgerTrans много?
Работают ли при этом пользователи с системой (пока идет пересчет)?
Мониторили ли память ОЗУ на AOS?
Старый 13.03.2008, 16:19   #3  
tolstjak is offline
tolstjak
Участник
 
440 / 16 (1) ++
Регистрация: 05.01.2003
Цитата:
Сообщение от Roman777 Посмотреть сообщение
Записей в LedgerTrans много?
Работают ли при этом пользователи с системой (пока идет пересчет)?
Мониторили ли память ОЗУ на AOS?
Всего -около 7 млн.
из них по переносу начальных сальдо - больше 3 млн.
Люди при пересчете не работают. В двухзвенке вылетает из-за плохой памяти.
По трехзвенке работает.
Память жрет, но ее на серевере много.
До предела не доходила.
И что делать?
__________________
Александр
Старый 13.03.2008, 17:04   #4  
tourist is offline
tourist
Участник
 
21 / 14 (1) ++
Регистрация: 03.05.2006
Как вариант, с помощью незначительных доработок добавить в пересчет условия по дате и/или бух. счету
Старый 13.03.2008, 17:12   #5  
tolstjak is offline
tolstjak
Участник
 
440 / 16 (1) ++
Регистрация: 05.01.2003
Цитата:
Сообщение от tourist Посмотреть сообщение
Как вариант, с помощью незначительных доработок добавить в пересчет условия по дате и/или бух. счету
Хотелось бы понять почему это происходит и как с этим бороться.
Думаю, что "условия по дате и/или бух. счету" не тот вариант, который бы хотелось получить.
__________________
Александр
Старый 13.03.2008, 18:13   #6  
tourist is offline
tourist
Участник
 
21 / 14 (1) ++
Регистрация: 03.05.2006
Дело возможно в большом объеме LedgerBalancesDimTrans. При персчете содержимое этой таблицы формируется целиком в памяти в одной транзакции
Старый 14.03.2008, 09:23   #7  
tolstjak is offline
tolstjak
Участник
 
440 / 16 (1) ++
Регистрация: 05.01.2003
Цитата:
Сообщение от tourist Посмотреть сообщение
Дело возможно в большом объеме LedgerBalancesDimTrans. При персчете содержимое этой таблицы формируется целиком в памяти в одной транзакции
Я тоже склоняюсь к этой мысли. Теперь вопрос как это победить???
Подскажите пожалуйста.
Не думаю, что только у нас так много записей.
__________________
Александр
Старый 14.03.2008, 10:14   #8  
tourist is offline
tourist
Участник
 
21 / 14 (1) ++
Регистрация: 03.05.2006
Для меня самый простой выход - оптимизировать сам механизм пересчета, например пересчитывать только проводки в открытых периодах, или вручную задавать интервал дат при пересчете, т.е каким либо образом уменьшить порцию вычислений в одной транзакции.
Старый 14.03.2008, 10:59   #9  
tolstjak is offline
tolstjak
Участник
 
440 / 16 (1) ++
Регистрация: 05.01.2003
Цитата:
Сообщение от tourist Посмотреть сообщение
Для меня самый простой выход - оптимизировать сам механизм пересчета, например пересчитывать только проводки в открытых периодах, или вручную задавать интервал дат при пересчете, т.е каким либо образом уменьшить порцию вычислений в одной транзакции.
Понятно. Спасибо.
__________________
Александр
Старый 20.03.2008, 11:26   #10  
Didukh84 is offline
Didukh84
Участник
 
57 / 10 (1) +
Регистрация: 09.06.2006
Посмотрите лог АОСа, если трехзвенка (иначе просто, лог клиента ). Возможно там есть запись о MaxOpenCursors или что-то типа этого. Если есть то, как минимум два варианта: модификация кода или увеличение данного значение в утилите приложения (по умолчанию там 90)
Старый 20.03.2008, 22:57   #11  
Ned is offline
Ned
Lean Six Sigma
 
680 / 99 (5) ++++
Регистрация: 29.12.2002
Адрес: самолёт
Цитата:
Для меня самый простой выход - оптимизировать сам механизм пересчета, например пересчитывать только проводки в открытых периодах, или вручную задавать интервал дат при пересчете, т.е каким либо образом уменьшить порцию вычислений в одной транзакции.
Уменьшить объём данных для пересчёта с помощью, например, задания диапазона дат - самый простой вариант. Просто делаете свой наследник класса LedgerRecalcPeriod и в нём правите одну строчку в методе run(). Так же отличная идея с открытыми периодами.

Мне ещё кажется неоптимальным механизм пересчёта, т.е. само вычисление значений внутри транзакции. Я бы предложил его переписать целиком - сначала подсчитывать суммарные значения, потом их класть в RecordInsertList и только потом уже открывать транзакцию, внутри которой чистить таблицы сумм и вставлять в них значения из RecordInsertList'ов.
__________________
Viacheslav Nefedov, http://www.nefedov.net, http://restock.guru/
Старый 20.03.2008, 23:18   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Ned Посмотреть сообщение
Мне ещё кажется неоптимальным механизм пересчёта, т.е. само вычисление значений внутри транзакции. Я бы предложил его переписать целиком - сначала подсчитывать суммарные значения, потом их класть в RecordInsertList и только потом уже открывать транзакцию, внутри которой чистить таблицы сумм и вставлять в них значения из RecordInsertList'ов.
Так делать не надо.
Пока подсчитываешь, кто-то может добавить новую проводку. В результате итоги не будут соответствовать проводкам.
__________________
полезное на axForum, github, vk, coub.
Старый 21.03.2008, 00:17   #13  
Ned is offline
Ned
Lean Six Sigma
 
680 / 99 (5) ++++
Регистрация: 29.12.2002
Адрес: самолёт
Логично, согласен. Просто скорость работы стандартного механизма убивает.
__________________
Viacheslav Nefedov, http://www.nefedov.net, http://restock.guru/
Старый 21.03.2008, 07:50   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Ned Посмотреть сообщение
Логично, согласен. Просто скорость работы стандартного механизма убивает.
это не ежедневно использующийся механизм.
это механизм "лечения" остатков.
__________________
полезное на axForum, github, vk, coub.
Теги
ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Невозможно выполнить команду языка определения данных в () iHomer13 DAX: Программирование 8 18.07.2008 10:56
Стандартный импорт данных. Обновление sparur DAX: Функционал 0 24.03.2008 19:07
Распределенная база данных на основе View Владимир Максимов DAX: Программирование 27 04.09.2007 13:21
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00

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

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

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