При работе в 1С:Комплексной автоматизации 2 пользователи часто сталкиваются с ситуацией, когда при выборе контрагента в документ из выпадающего списка предлагается множество копий одной и той же организации. Это происходит, несмотря на то, что в справочнике Контрагенты существует лишь одна запись для данного контрагента. Давайте вместе разберем эту проблему и найдем эффективные способы ее решения.
Как показывают обращения пользователей, описанная ситуация проявляется при поиске по подстроке в поле выбора контрагента, и возникает логичный вопрос: в чем может быть причина такого поведения системы? На первый взгляд, кажется, что проблема связана с дублированием данных, однако стандартные проверки справочника Контрагенты не выявляют никаких аномалий.
Ключ к пониманию этой проблемы кроется в двухуровневой модели учета, которая используется в современных конфигурациях 1С, таких как 1С:Комплексная автоматизация (КА), 1С:ERP Управление предприятием и 1С:Управление торговлей. Эта модель включает в себя два справочника: Партнеры и Контрагенты.
Партнеры призван группировать все взаимодействия с одной компанией или физическим лицом, независимо от количества юридических лиц или индивидуальных предпринимателей, с которыми мы ведем деятельность. Например, если наш партнер — это крупный холдинг, имеющий несколько юридических лиц (ООО "Ромашка" и ИП Иванов), то все они будут привязаны к одному элементу справочника Партнеры.Контрагенты привязывается к определенному элементу справочника Партнеры.Даже если в настройках учета (раздел НСИ и администрирование → Настройка НСИ и разделов → Продажи → Настройки интеграции) снята галка Независимо вести партнеров и контрагентов, что, казалось бы, должно означать использование только справочника Контрагенты, система все равно неявно создает элемент в справочнике Партнеры при создании нового контрагента. Это происходит потому, что многие механизмы программы, такие как ценообразование, соглашения, взаиморасчеты, а также логика подбора в документах, ориентированы на работу именно со справочником Партнеры.
Таким образом, когда мы ищем контрагента для подстановки в документ, программа зачастую показывает нам список не из справочника Контрагенты, а из справочника Партнеры или из индекса полнотекстового поиска, который мог быть построен по элементам справочника Партнеры. Именно здесь кроется корень проблемы: скорее всего, дубликаты существуют не в Контрагентах, а в Партнерах (как это было обнаружено в Сообщении 10 и подтверждено в Сообщении 11).
Давайте выясним наиболее распространенные причины появления дубликатов в справочнике Партнеры, даже если в Контрагентах все чисто:
Теперь, когда мы понимаем механизм работы системы, давайте вместе разберем по шагам, как диагностировать и устранить проблему с дублированием партнеров.
Это первый и самый важный шаг. Как показал опыт из обсуждения (Сообщение 2, 10), причина часто кроется именно здесь.
НСИ и администрирование → НСИ → Партнеры (или через раздел Продажи → См. также → Партнеры).Партнеры с одинаковыми или очень похожими наименованиями.Это стандартные действия, которые могут помочь при некорректном отображении данных, особенно после внесения изменений (Сообщение 3, 4, 12).
Удалить).Добавить), указав путь к ней.Этот способ очищает кэш для конкретной базы данных.
Конфигуратор.Конфигурация → Полнотекстовый поиск.Очистить индекс.Актуализировать индекс.Это обеспечит корректность поисковой выдачи, так как механизмы подбора в документах часто используют полнотекстовый поиск.
Этот регистр хранит информацию, которая может влиять на уникальность партнера и его идентификацию в системе (Сообщение 7). Мы должны убедиться, что здесь нет лишних записей, которые могли бы дезориентировать систему.
Ключи аналитики учета по партнерам (можно найти через Все функции или поиском в разделе НСИ и администрирование).1С предоставляет встроенные инструменты для поиска и объединения дублирующихся элементов справочников. Это мощный инструмент для решения данной проблемы.
НСИ и администрирование → Обслуживание → Поиск и удаление дублей.Искать в выберите справочник Партнеры.Наименование, ИНН, КПП. Можно также использовать комбинацию этих полей.Найти дубли. Система проанализирует справочник и предложит возможные дубликаты.Удалить дубли. Программа перенесет все ссылки с дублирующихся элементов на выбранный "оригинал" и пометит дубли на удаление.Отсутствие или одинаковые пустые значения ИНН/КПП у разных партнеров могут сбивать систему при поиске и приводить к созданию дублей или некорректному объединению (Сообщение 16). Мы должны убедиться, что эти реквизиты заполнены корректно.
ИНН и КПП.Если после всех вышеперечисленных шагов проблема все еще сохраняется, и вы обладаете навыками программирования, стоит рассмотреть внутренние механизмы подбора, используемые в конкретных документах (Сообщение 13, 15, 16).
Возможно, стоит проанализировать код, отвечающий за формирование списка выбора. В 1С:КА 2.4 часто используется модуль ПартнерыИКонтрагентыВызовСервера.КонтрагентыДанныеВыбора (Сообщение 16) или другие общие модули, отвечающие за выбор партнеров/контрагентов.
Если в запросе, формирующем список выбора, есть избыточные соединения с другими таблицами или он не учитывает уникальность элементов, это может привести к дублированию. Иногда, если список формируется динамически, можно добавить оператор РАЗЛИЧНЫЕ в запрос, чтобы гарантировать уникальность выводимых строк. Однако это нужно делать с осторожностью, чтобы не потерять нужные данные, если они намеренно представлены несколько раз (например, разные договоры одного контрагента).
Пример гипотетического запроса, который может быть скорректирован:
// Оригинальный запрос может выглядеть примерно так:
// ВЫБРАТЬ
// Партнеры.Ссылка,
// Партнеры.Наименование,
// Контрагенты.Ссылка КАК КонтрагентСсылка
// ИЗ
// Справочник.Партнеры КАК Партнеры
// ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты
// ПО Партнеры.Ссылка = Контрагенты.Партнер
// ГДЕ
// Партнеры.Наименование ПОДОБНО &Подстрока
// ИЛИ Контрагенты.Наименование ПОДОБНО &Подстрока
// Скорректированный запрос с использованием РАЗЛИЧНЫЕ для исключения дублей Партнеров
// если требуется выбирать именно Партнеров:
ВЫБРАТЬ РАЗЛИЧНЫЕ
Партнеры.Ссылка,
Партнеры.Наименование
ИЗ
Справочник.Партнеры КАК Партнеры
ГДЕ
Партнеры.Наименование ПОДОБНО &Подстрока
Такая корректировка требует глубокого понимания логики формирования списка и должна выполняться только опытным разработчиком.
Иногда подобные ошибки, связанные с поведением стандартных механизмов системы, могут быть исправлены в новых релизах конфигурации или платформы 1С. Мы рекомендуем регулярно обновлять вашу систему до актуальных версий.
1С:Комплексная автоматизация 2 (2.4.13.275) в данном случае) и платформы.Партнеры и Контрагенты или механизмов подбора.Таким образом, проблема с дублированием контрагентов при выборе в документах 1С:Комплексной автоматизации 2 чаще всего связана с дубликатами в справочнике Партнеры и особенностями его использования системой. Последовательное выполнение описанных шагов позволит вам эффективно диагностировать и устранить эту проблему, обеспечив корректное отображение данных при работе с контрагентами.