При работе с 1С бывает нужно найти список всех объектов, где встречается номенклатура, контрагент или другие элементы. Вручную конечно же это сделать нереально. Есть специальная обработка, которая позволяет выполнять в информационной базе поиск ссылок на нужный объект, – Поиск ссылок на объекты. Рассмотрим, как пользоваться на примере программы 1С:Бухгалтерия предприятия. В других типовых конфигурациях 1С эта обработка также есть.
Для запуска обработки зайдите в меню Сервис и настройки – Все функции.
Отметим, что начиная с версии платформы 8.3.17 команда Все функции переименована в Функции технического специалиста.
В открывшемся окне введите слово Поиск, выделите пункт Поиск ссылок на объекты и нажмите Открыть.
Другой способ открытия обработки – через ветку Стандартные.
В поле Объект нажмите на значок с тремя точками.
Выделите в списке объект, на который нужно найти ссылки, и нажмите ОК.
Затем выберите конкретный элемент.
Запустите поиск по кнопке Найти ссылки.
Отобразится список документов, справочников и регистров сведений, в которых встречается этот объект. Снизу показывается общее количество ссылок.
При нажатии на любую ссылку откроется окно справочника или документа.
Кнопка Вывести список отобразит найденные ссылки в табличном или текстовом документе.
Далее вы можете сохранить список в удобном формате. Для этого нажмите на три точки и выберите меню Файл – Сохранить.
Мы рассмотрели, как быстро найти ссылки на объекты.
Кроме этого, в 1С есть обработка, которая не только находит ссылки, но и массово заменяет объекты и удаляет дубли. Обработка называется Поиск и удаление дублей. Отметим, что она не повторяет обработку Поиск ссылок на объект, а дополняет штатный функционал платформы по удалению объектов. Подробнее об этой обработке читайте в статье.
См. также:
- Поиск и удаление дублей 1С 8.3
- Поиск и замена значений 1С 8.3
- Как удалить помеченные на удаление документы в 1С 8.3
- Групповое перепроведение документов в 1С 8.3 Бухгалтерия 3.0
- Групповая обработка справочников и документов в 1С 8.3
- Сбилась нумерация документов в 1С 8.3: как исправить
Если Вы еще не подписаны:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы Бухэксперт8, записи поддерживающих эфиров и вы сможете задавать любые вопросы по программе 1С.
Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Оцените публикацию
(1 оценок, среднее: 5,00 из 5)
Загрузка…
+7
Как найти существующие ссылки на объекты?
Для 8.х НайтиПоСсылкам (FindDataByRef)
Синтаксис:
НайтиПоСсылкам (< Список ссылок> )
Параметры:
<Список ссылок> Обязательный
Тип: Массив. Массив со списком ссылок на объекты, ссылки на которые нужно найти.
Возвращаемое значение:
Тип: ТаблицаЗначений. Таблица значений, состоящая из колонок с индексами: 0 – Искомая ссылка; 1 – Ссылка на объект, который содержит искомую ссылку.
Описание:
Осуществляет поиск ссылок на объекты.
Код 1C v 8.х
//Примеры:
Ссылки = НайтиПомеченныеНаУдаление();
ТабСсылок = НайтиПоСсылкам (Ссылки);
Для Каждого Ссылка из ТабСсылок Цикл
Сообщить (" " + Сокр(Ссылка[0]) + " " + Сокр(Ссылка[1]));
КонецЦикла;
//или
Массив = Новый Массив;
Массив.Добавить(СвылкаНаИскомыйОбъект);
СсылкиНаОбъект = НайтиПоСсылкам(Массив);
Для каждого элем из СсылкиНаОбъект цикл
Сообщить(элем);
ОбработкаПрерыванияПользователя();
КонецЦикла;
Функция НайтиПоСсылке имеет особенность: для корректной её работы необходимо, чтоб все объекты были доступны на чтение. Если у вас есть роли, имеющие ограничение на чтение, то вызов функции НайтиПоСсылке можно выполнять только в привилегированном модуле, иначе может возникать ошибка такого рода:
НайтиПоСсылкам(Ссылки) {(1)}: Ошибка при вызове метода контекста (НайтиПоСсылкам): У пользователя недостаточно прав на исполнение операции над базой данных.
Для 7-рки – НайтиСсылки
Находит ссылки на объекты, переданные в списке значений.
Синтаксис:
НайтиСсылки(<Объекты>,<Ссылки>)
Англоязычныйсиноним:
FindReferences
Параметры:
<Объекты> Конкретное значение объекта илиобъект типа СписокЗначений, в котором данной процедуре передаются объекты, по которым надо найти ссылки.
<Ссылки> Идентификатор объекта типа ТаблицаЗначений, в который данная процедура помещает найденные ссылки на объекты. Таблица значений состоит из 3 колонок: 1. Объект — объект, на который ссылаются; 2. Ссылка — объект, который содержит ссылку; 3. Комментарий — комментарий кссылке.
Описание:
Процедура НайтиСсылки находит ссылки на переданные в списке объекты, и помещает их в таблицу значений.
Код 1C v 7.x
СсылкиТЗ=СоздатьОбъект("ТаблицаЗначений");
НайтиСсылки(СсылкаНаТовар,СсылкиТЗ);
//В результате мы получаем ТЗ с ссылками на данный элемент
Работая в конфигурациях 1С, иногда приходится сталкиваться с ситуациями, когда нужно понять, в каких документах, регистрах, либо справочниках применяется определенный объект (к примеру, контрагент, ОС, банковский счет, кредитное учреждение и прочее). Эти сведения требуются для того, чтобы проверить ведение учетных данных в базе. Также они пригодятся при появлении определенных неточностей или несоответствии информации. Для этого в программе 1С 8.3 предусмотрена особая обработка – «Поиск ссылок на объект». Разберем особенности ее использования на примере конфигурации 1С: Бухгалтерия, редакция 3.0.
Поиск ссылок на объект в 1С: Бухгалтерия
Открыть обработку через меню «Функции для технического специалиста» (до редакции решения 8.3.17 – Все функции).
В перечне найти «Стандартные» – «Поиск ссылок на объекты»:
В появившемся окне в поле «Объект» через 3 точки выбрать объект, требующий анализа.
Например, необходима проверка того, какие документы корректировались определенным пользователем. Для этих целей в поле «Объект» выбрать «Пользователь»:
Появляется дополнительное окно с указанием всех пользователей этой конфигурации.
По нажатию кнопки «Найти ссылки» конфигурация выдаст все справочники, документы, регистры, где записан интересующий нас пользователь.
Кроме того, в доступных ссылках можно отыскать определенный документ, например, «Начисление заработной платы», нажав на кнопку «Найти».
В итоге получится следующее:
То есть в рассматриваемом примере под необходимым пользователем создавался лишь один документ начисления заработной платы. Эти данные помогут руководителю контролировать работников.
Кроме того, эта обработка пригодится и в иных ситуациях. К примеру, при задвоении номенклатурных позиций (для того, чтобы удалить лишний элемент), либо при поиске мест применения отмеченных для удаления элементов справочника (для того, чтобы исправить учетную информацию в базе).
Программа 1С в своей структуре позволяет определить ссылочный тип данных для реквизитов справочников, документов, измерений регистров и т. д. Источником информации для таких элементов будут данные других объектов.
Обработка в программе 1С Поиск ссылок на объект позволяет найти в базе данных все места, где использован указанный объект. Функцию используют:
- для проверки ссылки перед удалением, чтобы не повредить целостность базы;
- быстрого поиска всех объектов, где использовался элемент, например, для его замены;
- просмотра истории использования элемента в других объектах.
Механизм поиска ссылок встроен во все типовые конфигурации. Примеры рассмотрены на 1С 8.3 Бухгалтерия.
Содержание
- 1 Запуск и использование обработки в режиме 1С:Предприятия
- 2 Поиск ссылок на объект в конфигураторе
- 3 Программный поиск ссылок на объекты
- 3.1 Вам будет интересно
Запуск и использование обработки в режиме 1С:Предприятия
Чтобы начать поиск ссылок на объекты в 1С 8.3:
Программа 1С хоть и позволяет выделить в окне выбора несколько элементов, но в конечное поле Объект поместить только один, выделенный последним. Т. е. задать поиск сразу по нескольким ссылкам невозможно.
Поиск ссылок на объект в конфигураторе
В работу конфигуратора тоже встроен механизм поиска ссылок на объект. Только ссылки он ищет не в информационной базе среди данных, введенных пользователем, а в структуре конфигурации на использование выбранного объекта метаданных в других элементах конфигурации.
Для запуска нажатием правой кнопкой мыши по объекту вызовите контекстное меню и выберите команду Поиск ссылок на объект.
В окне Поиск ссылок отметьте места, которые требуется проанализировать на наличие искомого объекта:
В результат поиска не включаются макеты, на которых расположены одноименные с искомым объектом параметры. Для подобного анализа лучше воспользуйтесь Глобальным поиском.
Исключения возникают, только если свойство ПараметрРасшифровки ячейки макета совпадает с наименованием источника поиска.
Список мест в окне Поиск ссылок является фиксированным, его нельзя дополнить или изменить.
Результат поиска отображается в виде служебного сообщения.
Поиск выполняется только по одному объекту, его нельзя применить к группе или нескольким выделенным объектам. Но можно использовать на реквизитах, табличных частях, командах, формах целиком и т. д. Для элементов формы функция не применяется.
Программный поиск ссылок на объекты
В 1С поиск ссылок на объект программно осуществляется с помощью встроенной в конфигуратор функции НайтиПоСсылкам(). Описание можно найти в Синтакс-помощнике: Глобальный контекст — Процедуры и функции работы с данными информационной базы.
Область поиска — данные информационной базы. В качестве параметра в функцию передается ссылка на реальный объект в базе. В отличие от других подобных механизмов программный поисковый анализ может быть произведен сразу по нескольким объектам, переданным функции в виде массива со списком ссылок.
Функция НайтиПоСсылкам() выполняется на сервере, встроена в платформу начиная с версии 8.3.5. Используется в коде стандартных обработках конфигураций — таких, как Удаление помеченных объектов, Скрытие конфиденциальной информации и др.
При запуске механизма поиска из любого режима работы программы следует учитывать, что при большом размере базы поиск ссылок на объект может занять длительное время. В зависимости от требуемого результата команду Поиск ссылок на объект запускают либо в конфигураторе, либо в режиме работы 1С.
Обычные пользователи работают только с данными в информационной базе, поэтому им переходить в конфигуратор не потребуется: обработка Поиск ссылок на объект в пользовательском режиме произведет полный анализ всех данных и выдаст исчерпывающий результат по запрашиваемому объекту.
См. также:
- Использование кнопки «Все функции» в 1С 8.3
- Поиск и замена значений в 1С Бухгалтерия 8.3
- Обнаружено неправомерное использование 1C — как убрать
- Интерфейс 1С 8.3 Бухгалтерия 3.0
- Как посмотреть, какая версия 1С 8.3 установлена
- Как в 1С посмотреть историю изменения документа
- Пропало главное меню в 1С 8.3
- Как в 1С выделить несколько объектов
- Как подключиться к 1С через тонкий клиент
Поставьте вашу оценку этой статье:
Загрузка…
Дата публикации: Дек 9, 2020
Поставьте вашу оценку этой статье:
Загрузка…
Для 8.х НайтиПоСсылкам (FindDataByRef)
Синтаксис:
НайтиПоСсылкам (< Список ссылок> )
Параметры:
<Список ссылок> Обязательный
Тип: Массив. Массив со списком ссылок на объекты, ссылки на которые нужно найти.
Возвращаемое значение:
Тип: ТаблицаЗначений. Таблица значений, состоящая из колонок с индексами: 0 – Искомая ссылка; 1 – Ссылка на объект, который содержит искомую ссылку.
Описание:
Осуществляет поиск ссылок на объекты.
Код 1C v 8.х
//Примеры:
Ссылки = НайтиПомеченныеНаУдаление();
ТабСсылок = НайтиПоСсылкам (Ссылки);
Для Каждого Ссылка из ТабСсылок Цикл
Сообщить (" " + Сокр(Ссылка[0]) + " " + Сокр(Ссылка[1]));
КонецЦикла;
//или
Массив = Новый Массив;
Массив.Добавить(СвылкаНаИскомыйОбъект);
СсылкиНаОбъект = НайтиПоСсылкам(Массив);
Для каждого элем из СсылкиНаОбъект цикл
Сообщить(элем);
ОбработкаПрерыванияПользователя();
КонецЦикла;
Функция НайтиПоСсылке имеет особенность: для корректной её работы необходимо, чтоб все объекты были доступны на чтение. Если у вас есть роли, имеющие ограничение на чтение, то вызов функции НайтиПоСсылке можно выполнять только в привилегированном модуле, иначе может возникать ошибка такого рода:
НайтиПоСсылкам(Ссылки) {(1)}: Ошибка при вызове метода контекста (НайтиПоСсылкам): У пользователя недостаточно прав на исполнение операции над базой данных.
Для 7-рки – НайтиСсылки
Находит ссылки на объекты, переданные в списке значений.
Синтаксис:
НайтиСсылки(<Объекты>,<Ссылки>)
Англоязычныйсиноним:
FindReferences
Параметры:
<Объекты> Конкретное значение объекта илиобъект типа СписокЗначений, в котором данной процедуре передаются объекты, по которым надо найти ссылки.
<Ссылки> Идентификатор объекта типа ТаблицаЗначений, в который данная процедура помещает найденные ссылки на объекты. Таблица значений состоит из 3 колонок: 1. Объект — объект, на который ссылаются; 2. Ссылка — объект, который содержит ссылку; 3. Комментарий — комментарий кссылке.
Описание:
Процедура НайтиСсылки находит ссылки на переданные в списке объекты, и помещает их в таблицу значений.
Код 1C v 7.x
СсылкиТЗ=СоздатьОбъект("ТаблицаЗначений");
НайтиСсылки(СсылкаНаТовар,СсылкиТЗ);
//В результате мы получаем ТЗ с ссылками на данный элемент
Информация взята с сайта http://helpf.pro