Функция общего модуля с повторным использованием отдаёт устаревший курс валюты
Функция получения курса валюты вынесена в общий модуль, у которого включено повторное использование возвращаемых значений на время сеанса. В функции выполняется запрос к регистру сведений с курсами.
Бухгалтер загрузил новые курсы и сразу создаёт документ — в него подставляется вчерашний курс. Если бухгалтер выходит из программы и заходит заново, курс подставляется правильный. В регистре сведений новые курсы видны сразу.
Что происходит?
- Курсы не записались: транзакция загрузки не была зафиксирована, и данные становятся видны только при повторном подключении к базе, поэтому перезаход и помогает
- Результат функции взят из кеша повторного использования: кеш нужно сбросить после загрузки курсов или отказаться от повторного использования для этой функции
- Сработал кеш платформы для срезов последних регистра сведений, документы нужно перепровести
- Значение попало в сеансовый параметр, который вычисляется один раз при старте сеанса
