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

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

Установить текущим контакт. Устанавливает текущим контакт в форме "Адресной книге" и "Выборе контактов".

// Устанавливает текущим контакт в форме "Адресной книге" и "Выборе контактов".
//
// Параметры:
//  Контакт - СправочникСсылка - контакт на котором необходимо спозиционироваться в форме.
//  Форма   - ФормаКлиентскогоПриложения - форма для которой выполняются действия.
//
Процедура УстановитьТекущимКонтакт(Контакт, Форма) Экспорт
	
	Если ТипЗнч(Контакт) = Тип("СправочникСсылка.Пользователи") Тогда
		
		Форма.Элементы.СтраницыСписки.ТекущаяСтраница = Форма.Элементы.СтраницаПользователей;
		Форма.Элементы.СписокПользователей.ТекущаяСтрока = Контакт;
		
	Иначе
		
		МассивОписанийКонтактов = ВзаимодействияКлиентСервер.ОписанияКонтактов();
		ИмяМетаданныхКонтакта = Контакт.Метаданные().Имя;
		
		Для каждого ЭлементМассиваОписания Из МассивОписанийКонтактов Цикл
			Если ЭлементМассиваОписания.Имя = ИмяМетаданныхКонтакта Тогда
				Форма.Элементы.СтраницыСписки.ТекущаяСтраница = 
					Форма.Элементы["Страница_" + ?(ЭлементМассиваОписания.ЕстьВладелец,
					                               ЭлементМассиваОписания.ИмяВладельца,
					                               ЭлементМассиваОписания.Имя)];
				Форма.Элементы["Таблица_" + ЭлементМассиваОписания.Имя].ТекущаяСтрока = Контакт;
				Если ЭлементМассиваОписания.ЕстьВладелец Тогда
					Форма.Элементы["Таблица_" + ЭлементМассиваОписания.ИмяВладельца].ТекущаяСтрока = Контакт.Владелец;
					ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
						Форма["Список_" + ЭлементМассиваОписания.Имя],"Владелец",Контакт.Владелец,,,Истина);
				КонецЕсли;
			ИначеЕсли ЭлементМассиваОписания.ИмяВладельца = ИмяМетаданныхКонтакта Тогда
				Форма.Элементы.СтраницыСписки.ТекущаяСтраница = 
					Форма.Элементы["Страница_" + ЭлементМассиваОписания.ИмяВладельца];
				ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
					Форма["Список_" + ЭлементМассиваОписания.Имя],"Владелец",Контакт,,,Истина);
			КонецЕсли;
		КонецЦикла;
		
	КонецЕсли;
	
КонецПроцедуры

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

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

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

ЗаполнитьКонтактыПоПредмету (БСП)

УстановитьОтборПоЗначениюВТекущейКолонке (БСП)

УстановитьОбщиеПараметрыЗапросов (БСП)

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

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

УстановитьФлагАктивностиПользователяВОбласти (БСП)

УстановитьПараметрРаботыРасширения (БСП)

УстановитьПараметрыЗапросов (БСП)

TurboConf - расширение Конфигуратора 1С