Исправление ошибки "Запись с такими ключевыми полями существует" в обработке "Поиск и замена значений"

17.02.19

Задачи пользователя - Поиск данных

Обработка ПоискИЗаменаЗначений.epf — замечательный и надёжный инструмент. Но и в нём есть небольшой косячок, который проявляется при заменах в регистре сведений. Иногда встречается ситуация, когда в наборе есть две записи, одна с заменяемым значением, вторая с заменяющим. В остальном эти две записи идентичны по всем ключевым полям. Обработка пытается выполнить замену в этих записях. В результате они становятся полностью идентичными, и при записи набора возникает ошибка «Запись с такими ключевыми полями существует».

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
ПоискИЗаменаЗначений_feat_EarlyBird_2019.epf
.epf 24,11Kb
44
44 Скачать (1 SM) Купить за 1 850 руб.

Обработка ПоискИЗаменаЗначений.epf  — роскошная и поистине незаменимая вещь. И я очень рад, что своими скромными усилиями помогу сделать её ещё чуть-чуть лучше.

 В обработке есть небольшой косячок, проявляющийся при заменах в регистре сведений.

Допустим, у нас в наборе есть две записи, одна с заменяемым значением, вторая с заменяющим. В остальном эти две записи идентичны по всем измерениям и ресурсам.

Обработка пытается выполнить замену.  В результате эти две записи становятся полностью идентичными, и возникает ошибка «Запись с такими ключевыми полями существует».

Например, в БП есть регистр сведений «Калькуляция себестоимости», туда пишется аналитика затрат по номенклатурным позициям, при проведении регламентной операции закрытия месяца.  В том числе туда пишется статья затрат. 

При замене статьи затрат, можем получить картину маслом:

Досадно? Да.

Можно ли это исправить? Можно!

Вот допиленная обработка. При выполнении замен в записях регистра сведений, обработка дополнительно проверяет уникальность изменённой записи по ключевым полям. И если запись с такими ключевыми полями уже существует, мы удаляем изменённую запись из набора (ну а куда её девать?).

Изменения внесены только в модуль формы, весь добавленный код отмечен тегом "EarlyBird".

Тестировалось на платформе 8.3.10.2667.

Обработка ПоискИЗаменаЗначений

См. также

Поиск данных Внешние источники данных Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Если вам нужно автоматически генерировать представления (view) к вашей базе данных 1С (есть две версии - для СУБД MS SQL Server и для PostgreSQL) по структуре метаданных 1С, то вам необходима данная обработка. Наш "Генератор View", другими словами - это коннектор к данным 1С для Power BI - незаменимый помощник для бизнес-аналитиков, работающих с базами 1С из Yandex Datalens/Power BI и т.д. Работает для обычных и управляемых форм под 1С 8.3

230000 руб.

31.07.2020    13514    13    48    

25

Адаптация типовых решений Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Расширение конфигурации для «1С:Документооборот КОРП», редакция 3.0. позволяет: 1.использовать произвольные табличные части в качестве дополнительных реквизитов к документу; 2 использовать произвольные табличные части в шаблонах в формате docx для автоматического заполнения таблиц.

29400 руб.

29.06.2023    5648    14    5    

24

Поиск данных Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработки помогут Вам легко и, главное, быстро (в 5 раз и быстрее штатной обработки 1С), выполнить поиск дублирующих данных в Ваших базах 1С на платформах 8.1-8.3. Это позволит уменьшить объем лишней информации в справочниках и документах, планах видов характеристик и др., упростит работу с данными пользователям. А так же можно, одним нажатием, узнать в каких ссылочных объектах есть вообще дубли! Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. А так же обновления Вы получаете бесплатно в течение года с момента приобретения данных обработок! (Обновление от 27.11.2023, версия 6.12)

10800 руб.

14.05.2012    158498    338    253    

570

Логистика, склад и ТМЦ Адаптация типовых решений Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Чтобы не допустить путаницы с обещаниями клиентам и для четкого контроля исполнения заказов мы используем резервирование товаров. Мы доработали УНФ, чтобы она автоматически отменяла старые резервы и не мешала эффективно продавать.

7200 руб.

02.08.2023    3913    11    0    

29
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. tormozit 7219 24.09.18 09:04 Сейчас в теме
Решение некорректное в общем случае.
1. Кто сказал что ресурсы надо суммировать даже если в их именах содержится "Сумма" или "Количество"? Это же регистр сведений, а не накопления.
2. Если у конфликтующих строк будут различаться ресурсы или реквизиты, не содержащие в именах строк "Сумма" и "Количество". то конфликтующие строки не свернутся.
abasovit; +1 Ответить
2. EarlyBird 7 24.09.18 10:36 Сейчас в теме
(1) хорошо, а какое поведение будет корректным?
3. EarlyBird 7 17.02.19 16:52 Сейчас в теме
(1) Штош, учёл критику, полностью переделал сценарий. Теперь перед записью изменённого набора записей регистра сведений, предварительно выполняется поиск записей, совпадающих по ключевым полям. Если записи найдены, одна из них удаляется (та, в которой мы делали замену).
4. user1898628 01.02.23 17:39 Сейчас в теме
Ну вот омрачение, она не открылась в управляемой форме
Оставьте свое сообщение