Замена запроса к таблице заглушкой

Однажды мне в типовом коде понадобилось убрать из запроса обращение к таблице регистрации изменений.

Сначала я просто закомментировал левое соединение с этой таблицей, но после этого пришлось также комментировать и обращения к полям этой таблицы.

Это немного напрягало при обновлениях, поэтому я хотел сначала добавить условие «ложь» в ГДЕ, чтобы ни одна запись из таблицы не отбиралась. Но все равно обращение к таблице было бы.

Поэтому я решил заменить таблицу на виртуальную.

Выглядело это так:

//Вставляем вместо изменений заглушку...
"ВЫБРАТЬ
|	"""" КАК Кодд,
|	НЕОПРЕДЕЛЕНО КАК ПравилоОбмена,
|	НЕОПРЕДЕЛЕНО КАК Узел
|ПОМЕСТИТЬ КодыТоваровПодключаемогоОборудованияOffline_Заглушка"
+ ";"  
+ Запрос.Текст;

//2022-05-26 удаляем таблицу регистрации изменений
ИскМаркер = "РегистрСведений.КодыТоваровПодключаемогоОборудованияOffline.Изменения";
Запрос.Текст = СтрЗаменить(
Запрос.Текст, 
ИскМаркер, 
"КодыТоваровПодключаемогоОборудованияOffline_Заглушка");

Работает быстро, замена короткая и эффективная. Рекомендую.

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *