Помогите разобраться , пожалйста.

1. user1053113 15.11.18 15:00 Сейчас в теме
Помогите, пожалуйста, разобраться, начинающему. Имеется такое задание:
Цели и задачи:
Изменение печатной формы УПД (Универсальный передаточный документ). Печать документа производится из документов «Расходная накладная», «Счет-фактура выданный». Необходимо в печатной форме заполнить поле должность.
Решение:
Справочник «Физические лица». Добавляем новое свойство «Должность». В модуле печати УПД нужно получить это свойство и вывести на печатную форму. Данный механизм должен работать в обоих документах («Расходная накладная» и «Счет-фактура выданный»).
Т.е нужно чтобы вместо ответственных лиц организации было любое произвольное лицо и его должность . Запрос делаю к регистру свойств объектов, но не знаю как сделать правильно условие.

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

	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		Должность = ВыборкаДетальныеЗаписи.Наименование;
	КонецЦикла;
	
	//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА



	Если ЗначениеЗаполнено(ДанныеДляПечати.КладовщикДляУПД) Тогда
		ФамилияИмяОтчествоФизЛица  	  = ФормированиеПечатныхФорм.ФамилияИмяОтчество(ДанныеДляПечати.КладовщикДляУПД, ДанныеДляПечати.ДатаДокументаДляУПД);
		ФамилияИмяОтчествоКладовщика  = ФамилияИмяОтчествоФизЛица.Фамилия + " " + ФамилияИмяОтчествоФизЛица.Имя + " " + ФамилияИмяОтчествоФизЛица.Отчество;
		ФИОКладовщика         		  = ОбщегоНазначения.ФамилияИнициалыФизЛица(ФамилияИмяОтчествоКладовщика);
		ФИОКладовщика = ФИОКладовщика  + ?(ЗначениеЗаполнено(ДанныеДляПечати.ЗаКладовщикаПоПриказуДляУПД), " " + ДанныеДляПечати.ЗаКладовщикаПоПриказуДляУПД, "");
		
		//ПодразделениеДолжностьФизЛица = ФормированиеПечатныхФорм.ДолжностьОтветственногоЛица(ДанныеДляПечати.КладовщикДляУПД, ДанныеДляПечати.ДатаДокументаДляУПД, ДанныеДляПечати.Организация);
		//ДолжностьКладовщика       	  = ПодразделениеДолжностьФизЛица.Должность;
		 ДолжностьКладовщика = Должность;
	Иначе
		ФИОКладовщика		          = "";
		//ДолжностьКладовщика 		  = "";
		 ДолжностьКладовщика = Должность;
	КонецЕсли;
	
	ДанныеДляПечати.Вставить("ФИОКладовщика", 		ФИОКладовщика);
	ДанныеДляПечати.Вставить("ДолжностьКладовщика", ДолжностьКладовщика);
	
КонецПроцедуры // СформироватьФИОКладовщикаДляПечатиУнив
Показать
Найденные решения
2. acanta 15.11.18 15:12 Сейчас в теме
Вариант вставить в текст запроса примерно такое (если это доп.свойство накладной):

	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК КладовщикДляУПД
	|		ПО РеализацияТоваровУслуг.Ссылка = КладовщикДляУПД.Объект
	|			И ((ВЫРАЗИТЬ(КладовщикДляУПД.Свойство.Наименование КАК СТРОКА(15))) = ""КладовщикДляУПД"")
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ДолжностьКладовщикаДляУПД
	|		ПО РеализацияТоваровУслуг.Ссылка = ДолжностьКладовщикаДляУПД.Объект
	|			И ((ВЫРАЗИТЬ(ТТНДата.Свойство.Наименование КАК СТРОКА(25))) = ""ДолжностьКладовщикаДляУПД"")


И далее получать обычной выборкой в запросе.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. acanta 15.11.18 15:12 Сейчас в теме
Вариант вставить в текст запроса примерно такое (если это доп.свойство накладной):

	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК КладовщикДляУПД
	|		ПО РеализацияТоваровУслуг.Ссылка = КладовщикДляУПД.Объект
	|			И ((ВЫРАЗИТЬ(КладовщикДляУПД.Свойство.Наименование КАК СТРОКА(15))) = ""КладовщикДляУПД"")
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ДолжностьКладовщикаДляУПД
	|		ПО РеализацияТоваровУслуг.Ссылка = ДолжностьКладовщикаДляУПД.Объект
	|			И ((ВЫРАЗИТЬ(ТТНДата.Свойство.Наименование КАК СТРОКА(25))) = ""ДолжностьКладовщикаДляУПД"")


И далее получать обычной выборкой в запросе.
3. user1053113 15.11.18 15:34 Сейчас в теме
как то сложно получается, сейчас в консоли запросов буду пробовать
4. user1053113 19.11.18 17:01 Сейчас в теме
(2)Это почти решение )) Должность не дополнительное свойство накладной, а свойство Физического лица
Оставьте свое сообщение
Вакансии
Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день