ВсеКонтактыПоНачалуНаименования (БСП)

Автор: 1С
ОбщийМодуль.Взаимодействия
БСП

Все контакты по началу наименования. Формирует текст запроса для поиска контактов по началу наименования и выполняет его.

// Формирует текст запроса для поиска контактов по началу наименования и выполняет его.
//
// Параметры:
//  Наименование - Строка - строка, содержащая начало наименования контакта.
//
// Возвращаемое значение:
//  ТаблицаЗначений - Результат выполненного запроса выгруженный в таблицу значений.
//
Функция ВсеКонтактыПоНачалуНаименования(Наименование) Экспорт
	
	МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ОписанияКонтактов();
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	СправочникКонтакт.Ссылка       КАК Контакт,
	|	СправочникКонтакт.Наименование КАК Наименование,
	|	""""                           КАК НаименованиеВладельца,
	|	""""                           КАК Представление
	|ИЗ
	|	Справочник.Пользователи КАК СправочникКонтакт
	|ГДЕ
	|	СправочникКонтакт.Наименование ПОДОБНО &Наименование
	|	И (НЕ СправочникКонтакт.ПометкаУдаления)
	|";
	
	Для каждого ЭлементМассиваОписания Из МассивОписанияТиповКонтактов Цикл
		
		Если ЭлементМассиваОписания.Имя = "Пользователи" Тогда
			Продолжить;
		Иначе
			
			ТекстЗапроса =ТекстЗапроса +  "
			|ОБЪЕДИНИТЬ ВСЕ
			|
			|ВЫБРАТЬ
			|	ТаблицаСправочника.Ссылка,
			|	ТаблицаСправочника." + ЭлементМассиваОписания.ИмяРеквизитаПредставлениеКонтакта + " КАК Наименование,
			|	" + ?(ЭлементМассиваОписания.ЕстьВладелец," ТаблицаСправочника.Владелец.Наименование","""""") + ",
			|	""""
			|ИЗ
			|	Справочник." +ЭлементМассиваОписания.Имя +" КАК ТаблицаСправочника
			|ГДЕ
			|	ТаблицаСправочника.Наименование ПОДОБНО &Наименование "+?(ЭлементМассиваОписания.Иерархический, " И (НЕ ТаблицаСправочника.ЭтоГруппа)","")+"
			|	И (НЕ ТаблицаСправочника.ПометкаУдаления)";
			
		КонецЕсли;
	
	КонецЦикла;
	
	ТекстЗапроса = ТекстЗапроса + "
	|УПОРЯДОЧИТЬ ПО
	|	Наименование";	
	
	Запрос = Новый Запрос;
	Запрос.Текст = ТекстЗапроса;
	
	Запрос.УстановитьПараметр("Наименование", Наименование + "%");
	Возврат Запрос.Выполнить().Выгрузить(); 
	
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ВсеКонтактыПоНачалуНаименованияСАдресамиЭлектроннойПочты (БСП)

НаименованиеИАдресаЭлектроннойПочтыКонтакта (БСП)

ОписанияКонтактов (БСП)

КонтактыВзаимодействий (БСП)

УстановитьТекущимКонтакт (БСП)

ОсуществитьПоискКонтактовПоСтроке (БСП)

РассчитатьРассмотреноПоКонтактам (БСП)

НовоеОписаниеКонтакта (БСП)

ЗаполнитьНайденныеКонтакты (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз