update от 07.05.24 Обновил немного (обновил команду № 3 + еще пара новых команд).
Обработка запускается как внешняя. Есть метод для регистрации её в дополнительных обработках.
Разработано и проверено на платформе 8.3.22.1750, релиз ЗУП КОРП 3.1.25.37. Будет работать и в ERP 2.5.
Ошибки в регистрах и справочниках случаются по разным причинам: загрузка данных из другой базы, некорректно наложенный релиз и его обработчики, сбои в работе программы и другое.
Однако порой, даже зная причину проблемы, её нелегко исправить, так как нужны обработки. Данная мульти-обработка позволит облегчить работу по множеству значимых регистров программы.
Апдейт от 23.04.23. Перегруппировал команды в группах, добавил 4 новые, они выделены в красные рамки.
Примечание 1. "Обновить записи прав по физлицам "БЗК" - речь о выявлении физлиц в регистрах сведений РС.НачисленнаяЗарплатаРедактированиеФизическиеЛица
РС.НачисленнаяЗарплатаПросмотрФизическиеЛица
РС.ПлановыеНачисленияРедактированиеФизическиеЛица
РС.ПлановыеНачисленияПросмотрФизическиеЛица
РС.КадровыеДанныеРедактированиеФизическиеЛица
Добавляется "ЕстьПраво = Истина", через методы общих модулей.
Примечание 2. Создать "Данные для подбора сотрудников", кого там нет". По всяким причинам, в т.ч. после переноса данных случается, что сотрудник в базе есть, но по нему нет записей в этом регистре. И он "невидим" даже для полных прав, не говоря о других пользователях.
Команда "ПерезаполнитьРегистр" самого регистра отрабатывает всю базу, порой это долго.
При заполненной организации (это проверяется) обработка выявит сотрудников, у которых она - "головная", но которых нет в регистре "Данные для подбора сотрудников", и быстро сделает первичную запись регистра по ним.
После этого такие сотрудники видны, доступны для подбора, и т.д.
Примечание 3. Поиск сылки по GUID и наоборот. Пояснение по полю "Объект не найден". Сюда помещаем всю надпись "Объект не найден ...". Команда преобразует её в строковый "GUID" и осуществит поиск ссылки. Поиск ссылки в метаданных происходит через объединённый запрос, для скорости.
Первоначальная версия от 16.04.23 г.
По порядку.
Параметры обработки: Организация и Сотрудник.
Если заполняете "Сотрудника", то организация автоматически проставляется (ГоловнаяОрганизация Сотрудника). Если меняете "Организацию", ранее заполненный сотрудник очищается.
1. "Обновление интервальных регистров".
Данный раздел при открытии обработки выводит полный список интервальных регистров сведений базы. Выбираете нужный (или несколько или все) и даёте команду переформирования. Обработка работает по типовым методам менеджеров регистров и общих модулей программы, обрабатывает выбранные регистры.
- Если заполнен "Сотрудник", переформируются записи только по нему.
- Если заполнена "Организация", переформируются записи по всем сотрудникам организации.
- Если параметры пустые, переформируются все записи регистра (по всей базе).
2. "Обновление иных регистров сведений и не только":
Здесь не предусмотрена работа с пустыми параметрами. То есть должен быть выбор по организации и (или) сотруднику.
Отбор по сотруднику работает по всем пунктам кроме 4, так как этот регистр не связан с сотрудниками.
Принцип применения параметров так же: если указан сотрудник, обрабатываются записи по нему, если сотрудник не выбран - по организации. Организация в таком случае должна быть выбрана.
Примечания.
2.1. Пункт 3 "Обновить адресную информацию физлиц". После переноса физлиц из базы в базу случается, что пользователи с не полными правами при включённом RLS не видят паспортные данные, или у физлиц в ТЧ "КонтактнаяИнформация" пустые поля "Страна", "Регион" и т.п. при заполненных "Значение", "ЗначениеПолей" (адресные данные), что препятствует выводу данных в печатные формы. Обработка делает программное открытие формы физлица сотрудника, признак модификации и запись с закрытием формы. При этом отрабатываются типовые механизмы, которые делают необходимые записи, и озвученные проблемы уходят.
2.2. Пункт 6. "Исправить ошибки в РС "Состояния сотрудников". Такое случается при переносе данных из базы в базу, возможны ошибки регистра и в текущей работе. Последствия - двоение данных в отчетах ("Штатные сотрудники") и не только.
Исправление записей регистра происходит через программное создание "Отсутствие (прогул, болезнь, неявка)", заполнение документа данными, проведение и отмена проведения. При этом типовыми механизмами выравнивается регистр, ошибки уходят.
2.3. Пункт 7. "Исправить ошибки "РС Плановый ФОТ итоги". Не сработает, если нет отбора ни по сотруднику, ни по организации. В этом случае сообщением предлагается запустить типовую обработку "Пересчет планового ФОТ", потому что оно выполняется в фоне и в это время можно выполнять другую работу.
3. Бонус. Помощь в удалении дублей видов расчета "Начисления". Если есть дублирующий вид начисления, удалить его порой не просто, он имеет ссылочные связи на многие другие объекты. При этом типовая на БСП обработка удаления может сделать процесс замены ссылки на удаляемый вид начисления на другой, выбранный вами. Но в ситуации, когда вид начисления и заменяемый им перечислены в третьих видах, то замена удаляемого на другой по сути ведет к дублю, и это не отработается.
Данная обработка вычистит удаляемый вид расчета из таблиц "БазовыеВидыРасчета", "ВедущиеВидыРасчета", "ВытесняющиеВидыРасчета" других начислений и "БазовыеВидыРасчета", "ВедущиеВидыРасчета" и "ПрочиеБазовыеДоходы" других удержаний. Плюс аналогичная чистка регистра сведений "ЗависимостиНачисленийПоФПД".
Выполнение всех действий сопровождается служебными сообщениями. Например:
Общее примечание. Обработку регистров надо запускать, предварительно установив "дату запрета изменения данных" на раннюю, чем периоды в регистрах.
Проверено на следующих конфигурациях и релизах:
- Зарплата и управление персоналом, редакция 3.1, релизы 3.1.29.21