![]() |
#1 |
Moderator
|
Пересчет inventSum
День добрый!
1. Можно ли стандартным образом функционалом пересчитать inventSum (интересует поле 'В наличии') на основании проводок? 2. Чем мне аукнется если я руками изменю поле 'В наличии'? |
|
![]() |
#2 |
Роман Долгополов (RDOL)
|
1. Проверка целостности данных пересчитыват InventSum
2. Лучше не изменяй ![]() ![]() |
|
![]() |
#3 |
Moderator
|
Спасибо!
Как сделать проверку целостности? Можно ли ее делать одновременно с работой пользователей?? |
|
![]() |
#4 |
Участник
|
Главное меню \ Основное \ Периодические операции \ Проверка целостности данных компании
установите режим проверки Коррекция ошибок. любым образом выберите модуль управление запасами установите галочку в Номенклатура \ В наличии Помещу пожалуй в FAQ |
|
|
За это сообщение автора поблагодарили: alex55 (1). |
![]() |
#5 |
Роман Долгополов (RDOL)
|
1. Основное\Периодические операции\Проверка целостности данных компании
2. Одновременно с работой лучше не надо. Если надо починить только InventSum, да еще одновременно с пользователями то лучше сделать какой джоб, расковыряв класс InventConsistencyCheck_Onhand. Хотя все зависит от того сколько у вас пользователей и какая нагрузка на систему |
|
![]() |
#6 |
Moderator
|
![]()
Спасибо!
![]() |
|
![]() |
#7 |
Участник
|
не надо ковырять.
проверка будет перебирать складские проводки и суммировать. при переборе складских проводок блокировка очень быстро эскалируется до таблицы. пользователи все равно работать не смогут. http://forum.mazzy.ru/index.php?showtopic=3419 |
|
![]() |
#8 |
злыдень
|
2 db
![]() 2 mazzy: Запускали на живой. Пользователи живы ![]() чтоб запускать пересчет на живой писали жоп а-ля: PHP код:
![]() |
|
|
За это сообщение автора поблагодарили: Roman777 (2), Sergey Petrov (1), Shmel_83 (1), Deepoint (1). |
![]() |
#9 |
Роман Долгополов (RDOL)
|
Цитата:
Изначально опубликовано mazzy
не надо ковырять. проверка будет перебирать складские проводки и суммировать. при переборе складских проводок блокировка очень быстро эскалируется до таблицы. пользователи все равно работать не смогут. http://forum.mazzy.ru/index.php?showtopic=3419 |
|
![]() |
#10 |
Участник
|
как скажешь.
я в факе и написал - при низкой активности ![]() но чаще всего пересчитаывать приходится самую популярную номенклатуру... |
|
![]() |
#11 |
злыдень
|
2 mazzy: не спорь с db, бесполезно..
![]() |
|
![]() |
#12 |
Участник
|
Цитата:
Изначально опубликовано db
Склад параллельно с работой пономенклатурно закрыть получается, эта задачка уж явно не тяжелее Закрытие склада не перебирает все складские проводки. А только открытые. Пересчет итого перебирает все по каждой пересчитываемой номенклатуре. Проблема в том, что блокировка будет очень быстро эскалирована до уровня таблицы. И смотреть надо в сторону - что влияет на эскалацию. |
|
![]() |
#13 |
Участник
|
Цитата:
Изначально опубликовано Recoilme
2 mazzy: не спорь с db, бесполезно.. ![]() |
|
![]() |
#14 |
Роман Долгополов (RDOL)
|
![]() Короче, работает пересчет параллельно с юзерами. Блокировка до уровня таблицы на MS SQL - только если будет мало номенклатур. Постранично заблокирует, да, таблицу целиком - это только если в сервере памяти уж совсем нет. Блокировка в любом случае только на чтение - другие не смогут только изменять страницы с этими проводками. Кто нарвется на пересчитываемую номенклатуру - подождет некоторое время, подтормозит и все А сравнение с закрытием склада вполне резонное, так как узкое место для параллельной работы здесь не считка InventTrans, а обновление-пересоздание InventSum - будет и при пересчете InventSum и при закрытии склада |
|
![]() |
#15 |
Участник
|
Лучше всего использовать
ttsbegin; inventSumReCalcItem = new InventSumReCalcItem("SPH118448", false, CheckFix::Fix); inventSumReCalcItem.updateNow(); ttscommit; Стандртная вещь делает еще проверку целостности, что только для пересчета лишнее. Кроме того, там в классе сидит бага SysConsistencyCheck, которая на реальной базе с номенклатурой в десятки тысяч затянет дело на несколько часов.... |
|
|
За это сообщение автора поблагодарили: Sergey Petrov (1), Shmel_83 (1). |
![]() |
#16 |
Участник
|
А можно ли из InventSum удалить пустые строки - или чем аукнется тоже?
|
|
![]() |
#17 |
Роман Долгополов (RDOL)
|
которые Closed можно
|
|
![]() |
#18 |
Участник
|
db
Спасибо! |
|
![]() |
#19 |
злыдень
|
Только проверьте на всякий случай не висит ли сумм в деньгах на клоузед...
2 db: кстати откуда на них могут деньги остаться и как с этим бороться ? ![]() |
|
![]() |
#20 |
Роман Долгополов (RDOL)
|
Цитата:
Изначально опубликовано Recoilme
Только проверьте на всякий случай не висит ли сумм в деньгах на клоузед... 2 db: кстати откуда на них могут деньги остаться и как с этим бороться ? ![]() ![]() |
|
Теги |
inventsum, остатки, остатки на дату |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|