2023-06-27 02:34:06
Краткое описание :
Автозакрытие сообщений с "ОК" о пересчёте данных (проверка
КОУ,пересчет ср.цен) при совместном доступе к таблицеОписание :
Что измененно :
При выполнении "проверки КОУ" или при "пересчете средних цен"
временами возникает диалоговое окно с информацией об ошибке совместного доступа
к таблице (например, таблице 1110) с другим пользователем, данные будут
пересчитаны. При этом доступна одна кнопка "ОК". Сама операция
приостанавливается, пока кнопка не будет нажата. Также зачастую таких окон
возникает целая серия (например, штук 50), что значительно затягивает процесс,
т.к. приходится нажимать "ОК" много раз с разрывом во времени.
Как измененно :
В предоставленной информации только "Конфликт с другим
поьзователем, запись будет пересчитана. Таблица 1101." (SaldoMC). Ошибку выдает
атлантис на системном уровне, поскольку нет обработки на прикладном.. Поиск
места без устойчивого повторения сильно затруднен. В принципе такая ошибка
может возникнуть, даже для одного и того же пользователя в случае обновления в
одном интерфейсе, и при не пересчитывании записи в другом.. Реализован контроль
ошибок обновления для 'таблицы SaldoMC в самом вероятном месте. При этом окно с
ошибкой не выводится, но идет запись в выходной каталог пользователя в файлы
вида ModifSal_ГГГГММДД.log, в FpLog, во временную таблицу MtSaldoMCErr (
CompSrc/L/L_Ostatki/Vip/ModifSal/ModifSal.vih). При пересчете средних цен в
расходных ордерах для режима "средние цены за период" будет предложено
повторить расчет для ошибочных записей, в другом случае сообщения будут
добавлены в протокол. Для других случаев возникновения подобных сообщений
следует предоставить более точное описание параметров запуска(в одной задаче
только один процесс) и появившихся ошибок(в частности следует сдвигать окно
сообщений, чтобы было видно что там за процесс идет, а также предоставлять sil,
fplog, отчеты c базы со сходными настройками(не обязательно с рабочей и с
повторением ошибки - она слишком плавающая). Можно полностью погасить все
сообщения, выполнив по Ctrl+F4 до начала процесса MessageLogEnableBatch, а
после MessageLogDisableBatch, но поскольку такой подход не совсем
правильный(данные в базе все равно останутся некорректными, но вы не будете
даже знать об этом), то использование этих функций оставим под ответственность
клиента.