Цитата:
Сообщение от
Logger
Если уж начали перечислять баги закрытия, то добавлю свои 5 копеек.
В методах
\Classes\ClassFactory\inventLastClosingDate
\Classes\ClassFactory\inventLastClosingDateSecCur_RU
некорректно сделано кеширование даты последнего закрытия склада.
Оно не учитывает тот факт, что закрытие склада выполняется в конкретной компании. Поэтому если мы поработали в одной компании, в которой период закрыт, а потом переключаемся в другую, в которой период не закрыт, и пытаемся в этом периоде разносить что-то - то получаем ошибку.
Вообще-то, вероятность этого события чрезвычайно мала, поскольку первая проверка стоит
X++:
if (inventClosingTtsVersion != appl.ttsVersion())
Чтобы получить совпадение счетчиков транзакций в разных компаниях - это надо какое-то очень уж уникальное стечение обстоятельств. Или что формирует значение appl.ttsVersion()?
Ну, а раз счетчик имеет значение отличное от сохраненного, то и дата закрытия будет вычислена заново. Прямым запросом по таблице invetnClosing