• г. Москва,
    м. Ольховая,
    Дубровка

Меню
Каталог Клиенты и отзывы Кейсы Акции Компания Статьи Контакты

Проверка на битую ссылку в 1С 8

Если речь идет о регистре, допустим, о пустом значении одного из его измерений, то в запросе поможет подобная инструкция:


	...
ИЗ    
РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах ГДЕ     ПартииТоваровНаСкладах.ДокументОприходования.Ссылка ЕСТЬ NULL

Такой запрос поможет, если необходимо проверить на пустую ссылку измеренияДокументОприходования.

В некоторых случаях необходимо проверять на NULL не саму ссылку, а ее представление:

ГДЕ ПартииТоваровНаСкладах.ДокументОприходования.Ссылка.Представление ЕСТЬ NULL

Рассмотрим другие способы проверки на битые ссылки на платформе 1С

Cпособ через конвертацию в строку:

Найти(Строка(Ссылка),"<Объект не найден>") <> 0

Есть еще способ через функцию ПолучитьОбъект():

Ссылка.ПолучитьОбъект() = Неопределено

Это будет выполняться только в случае, если ссылка битая.

Способ через универсальную функцию, которая определяет для любого значения ссылки, является ли она битой

Функция ОбъектБДСуществует(ТестоваяСсылка) Экспорт        МД = Метаданные.НайтиПоТипу(ТипЗнч(ТестоваяСсылка));      ИмяОбъекта = МД.Имя;      ПолноеИмяОбъекта = МД.ПолноеИмя();        Запрос = новый Запрос();      Запрос.Текст =      "ВЫБРАТЬ      |   " + ИмяОбъекта + ".Ссылка КАК СсылкаБД      |ИЗ      |   " + ПолноеИмяОбъекта + " КАК " + ИмяОбъекта + "      |ГДЕ      |   " + ИмяОбъекта + ".Ссылка = &Cсылка";      Запрос.УстановитьПараметр("Cсылка", ТестоваяСсылка);      РезультатЗапроса = Запрос.Выполнить();        Возврат Не РезультатЗапроса.Пустой();    КонецФункции

Читайте также: Удаление битых и пустых ссылок в 1С


Возврат к списку


Сорокин Сергей

Есть вопросы по работе с 1С?

Оставьте заявку прямо сейчас!
Руководитель компании MoscowSoft, Сорокин Сергей, может помочь с решением Ваших вопросов. Пишите нам на почту: task@moscowsoft.com или звоните: +7 (499) 67-333-75

Перезвоните мне