PDA

Просмотр полной версии : SH3 (2) База вылетает при запросе списка документов или предполагаемого расхода



SH
15.05.2009, 15:52
Актуально для второй и третьей версии Shouse. Одна из возможных причин!

Написано в ответ на:
"Во-первых, при запросе документов больше чем за день, при их прокрутке и открытии вылетает просто, и без ошибок (один раз переполнение стека выдал).
А началось с того, что бухгалтер не могла списать продукты по док-там Расход блюд от 24.03.09 (по представительским норм, маленький документ, а по налу даже в предполагаемом расходе просто зависает).
Пробовал закрывать период, backup\restore, не помогло."

Расследование показало, что рушится сервер Interbase. В данном случае долго задаваться вопросами не пришлось, т.к. в прошлом уже сталкивался.

Ответ следующий:

Если по продукту долго нет поступления, а есть только сличительные ведомости (здесь "долго" - порядка года, несколько месяцев по-крайней мере), то база в итоге падает при попытке подсчитать этот продукт.
В случае списка документов расчет суммы ведется на лету - поэтому, как только произошла такая ситуация и среди документов попался такой продукт - все упало. Аналогично, при расчете списания. В представительских этого продукта не было, поэтому там все было нормально.
Что это за продукт - ищите сами. Что сделано: на 1-е марта ВСЕ остатки списаны в расход и оприходованы заново. Можно посмотреть документы за 28 февраля (списание) и 1-е марта (приход) - документы с одинаковыми суммами с корреспондентом "входящие остатки". Соответственно, расчет себестоимости по таким неоприходованным продуктам теперь ведется от этого поступления.
Произошедшее означает, что если продукта нет, то его надо удалить из калькуляционных карт, а не доприходывать через сличительные и списывать!

Еще немножко матчасти: shouse не хранит остатки, а всегда их считает. Причем подсчет себестоимости ведется от поступления. Если поступление было давно, и есть до хрена сличительных, перебор заводит сервер interbase в ступор и он падает. Ошибка как раз связана со стеком, отсюда и сообщения о переполнении, когда сервер успевал сообщить.

SH
15.03.2012, 03:26
Кто-то до сих пор живет на тройке и до сих пор не умеет работать.
Опять столкнулись, поэтому короткое добавление:
1. Иногда помогает закрытие периода.
2. Чтобы найти (и предъявить) такой продукт, можно попробовать сформировать оборотную ведомость, взяв достаточно большой период. На продукт, по которому нет входящих остатков и нет поступления, но есть расход и излишки - показать пальцем.