Получить представление адреса

1. user822247 01.03.19 09:50 Сейчас в теме
Здравствуйте

Подскажите возможно ли получить представление адреса без увеличения длины строки реквизита "наименование"(оно при запись берет получены результат реквизита "Представление" но срезает по допустимой длине строки наименования)

Возможно ли как то открыть форму обработки по объекту , вызвать процедуру формирования и получить этот реквизит.

Функция ПолучитьПредставлениеАдреса(Запись) Экспорт

	ТекПредставление = "";

	Если СокрЛП(Запись.Поле1) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + СокрЛП(Запись.Поле1);
	КонецЕсли;

	Если СокрЛП(Запись.Поле2) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + СокрЛП(Запись.Поле2);
	КонецЕсли;

	Если СокрЛП(Запись.Поле3) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + СокрЛП(Запись.Поле3);
	КонецЕсли;

	Если СокрЛП(Запись.Поле4) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + СокрЛП(Запись.Поле4);
	КонецЕсли;

	Если СокрЛП(Запись.Поле5) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + СокрЛП(Запись.Поле5);
	КонецЕсли;

	Если СокрЛП(Запись.Поле6) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + СокрЛП(Запись.Поле6);
	КонецЕсли;

	ТипДома = Неопределено;
	ТипКорпуса = Неопределено;
	ТипКвартиры = Неопределено;
	Если ТипЗнч(Запись) = Тип("Структура") Тогда
		Запись.Свойство("ТипДома",     ТипДома);
		Запись.Свойство("ТипКорпуса",  ТипКорпуса);
		Запись.Свойство("ТипКвартиры", ТипКвартиры);
	Иначе
		ТипДома     = Запись.ТипДома;
		ТипКорпуса  = Запись.ТипКорпуса;
		ТипКвартиры = Запись.ТипКвартиры;
	КонецЕсли;

	Если СокрЛП(Запись.Поле7) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + ?(ЗначениеЗаполнено(ТипДома), ТипДома, "дом") + " № " + СокрЛП(Запись.Поле7);
	КонецЕсли;

	Если СокрЛП(Запись.Поле8) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + ?(ЗначениеЗаполнено(ТипКорпуса), ТипКорпуса, "корпус") + " " + СокрЛП(Запись.Поле8);
	КонецЕсли;

	Если СокрЛП(Запись.Поле9) <> "" Тогда
		ТекПредставление = ТекПредставление + ", " + ?(ЗначениеЗаполнено(ТипКвартиры), ТипКвартиры, "кв.") + СокрЛП(Запись.Поле9);
	КонецЕсли;
	Если СтрДлина(ТекПредставление) > 2 Тогда
		ТекПредставление = Сред(ТекПредставление, 3);
	КонецЕсли;
	
	Возврат ТекПредставление;

КонецФункции
Показать
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. YannikAlx 27 01.03.19 10:25 Сейчас в теме
У вас самописная конфигурация?
В типовых уже есть Представление и нужно его просто взять, а не создавать самому...
Прикрепленные файлы:
3. N0t_F0und 10 05.03.19 15:42 Сейчас в теме
Поищите в общих модулях процедуры и функции для работы с контактной информацией. Вам останется только использовать готовые функции
4. N0t_F0und 10 05.03.19 15:44 Сейчас в теме
Например, в УправлениеКонтактнойИнформацией Функция ПолучитьАдресИзКонтактнойИнформации(Объект, ТипАдреса = "")
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот