СсылкаНаОбъект

1. Protocolicmp 03.09.18 16:22 Сейчас в теме
Создал печатную форму, простую, при нажатии на сотрудника - печать, ввыводится трудовой договор, где автоматом проставляется его фамилия, все работает, НО, я так понял моя ссылка на фамилию сотрудника работает только в справочнике - сотрудники, т.к. в ней есть реквизиты ФИО, дак вот вопрос, я хочу из другого справочника достать еще (к примеру) Должность сотрудника, но как правильно оформить ссылку на другой справочник я не могу понять, прошу помощи!!! и если я не ошибаюсь, то при создании внешней обработки (печатной формы), в интерфейсе еще есть пункт добавить реквизиты, добавить то я их могу, но как их использовать, точнее ссылаться на них в коде, т.е. сейчас ссылка на данные такая:
ОбластьШапки.Параметры.ФИО = СсылкаНаОбъект.ФизическиеЛица.ФИО;
а мне нужна типо такой:
ОбластьШапки.Параметры.ФИОЖены = СсылкаНаОбъект.ФизическиеЛицаЖены.ФИО;

про фио жены - условно, для наглядности примера, понятно что мне не эти данные нужны.

код прилагаю в текстовом формате.
а на скрине показываю какие реквизиты хочу использовать в коде, но не могу, т.к. путь не верен.
Прикрепленные файлы:
печатная форма на половину готовая моя.txt
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
12. Raskad 10 03.09.18 18:02 Сейчас в теме +0.1 $m
	МассивСотрудников = Новый Массив;
	МассивСотрудников.Добавить(СсылкаНаОбъект);
	
	МассивКадровыхДанных = Новый Массив;
	МассивКадровыхДанных.Добавить("Должность");
	МассивКадровыхДанных.Добавить("ГрафикРаботы");
	
	СтрокаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Ложь, МассивСотрудников, МассивКадровыхДанных)[0];
	ОбластьШапки.Параметры.Должность = СтрокаКадровыхДанных.Должность;
	ОбластьШапки.Параметры.РежимРаботы = СтрокаКадровыхДанных.ГрафикРаботы.РежимРаботы;
Показать
Anchoret; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
6. azali 03.09.18 16:56 Сейчас в теме
(1)
Зачем вам реквизит должность ?
Чтобы получать данные по сотрудникам в ЗУП 3 лучше пользоваться общими фунrциями

Например.
массивкадровыхданных=новый Массив;
массивкадровыхданных.Добавить("должность");
и т д и т п

кадровыеданные= КадровыйУчет.КадровыеДанныеСотрудников(Истина, Сотрудник,массивкадровыхданных, Дата);
8. Protocolicmp 03.09.18 17:43 Сейчас в теме +0.13 $m
(6)а что значит (Дата) в последней строке кода у вас?зачем она там, я так понял вы описали функцию, где мы в новый массив заносим данные должности, и прочих, потом говорим от куда это все берем, т.е. из кадровыеданные= КадровыйУчет.КадровыеДанныеСотрудников, а что в скобках означает понять не могу
11. azali 03.09.18 17:55 Сейчас в теме
(8)
Откройте в конфигураторе этот модуль, там в комментариях указаны что за реквизиты ?

Вы через заполнения массивакадровыхданных указываете какие данные вам нужны, через сотрудника указываете по какому сотруднику вы их собираете дата - на какую дату вы хотите получить данные.
Например.
массивкадровыхданных=новый Массив; 
массивкадровыхданных.Добавить("должность"); 
массивкадровыхданных.Добавить("Подразделение");
массивкадровыхданных.Добавить("ДатаПриема");
2. Timur.V 79 03.09.18 16:43 Сейчас в теме
Запросы умеешь писать?
Имея ссылку, при помощи запроса можно получить остальные данные.
3. Protocolicmp 03.09.18 16:46 Сейчас в теме
(2)не умею, приведи пример пжлста,
4. Timur.V 79 03.09.18 16:49 Сейчас в теме
(3)
в яндексе или гугле: 1с запрос примеры
Protocolicmp; +1 Ответить
5. NatalkaBal 28 03.09.18 16:54 Сейчас в теме
Для ЗУП 3.1 можно воспользоватся типовым решением КадровыйУчет.СоздатьВТКадровыеДанныеСотрудников. Поищи в коде пример вызова.
Protocolicmp; +1 Ответить
7. NatalkaBal 28 03.09.18 16:57 Сейчас в теме
Например
	СоздатьВТКадровыеДанныеСотрудника(Запрос);
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ДоговорРаботыУслуги.Сотрудник КАК Сотрудник,
	|	КадровыеДанныеСотрудников.ФизическоеЛицо КАК ФизическоеЛицо,
	|	КадровыеДанныеСотрудников.ФИОПолные КАК ФИОПолные,
	|	КадровыеДанныеСотрудников.Фамилия КАК Фамилия,
	|	КадровыеДанныеСотрудников.Имя КАК Имя,
	|	КадровыеДанныеСотрудников.Отчество КАК Отчество,
	|	КадровыеДанныеСотрудников.ДокументПредставление КАК ДокументПредставление,
	|	КадровыеДанныеСотрудников.АдресПоПропискеПредставление КАК АдресПоПропискеПредставление,
	|	КадровыеДанныеСотрудников.ТелефонМобильныйПредставление КАК ТелефонМобильныйПредставление
	|ИЗ
	|	Документ.ДоговорРаботыУслуги КАК ДоговорРаботыУслуги
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВТКадровыеДанныеСотрудников КАК КадровыеДанныеСотрудников
	|		ПО ДоговорРаботыУслуги.Сотрудник = КадровыеДанныеСотрудников.Сотрудник
	|			И (&Период = КадровыеДанныеСотрудников.Период)
	|ГДЕ
	|	ДоговорРаботыУслуги.Ссылка В(&МассивСсылок)
	|
	|УПОРЯДОЧИТЬ ПО
	|	ДоговорРаботыУслуги.Ссылка";
	
	Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();

Пока Выборка.Следующий() Цикл
		ОбластьДоговора.Параметры.ПолноеФИОСотрудника   = Выборка.ФИОПолные;

		ОбластьДоговора.Параметры.АдресМестаРегистрации = Выборка.АдресПоПропискеПредставление;
		ОбластьДоговора.Параметры.ПаспортныеДанные      = Выборка.ДокументПредставление;
		ОбластьДоговора.Параметры.СНИЛС                 = Выборка.ФизическоеЛицо.СтраховойНомерПФР;
		
КонецЦикла;
Показать


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

Показать
Protocolicmp; +1 Ответить
10. Protocolicmp 03.09.18 17:51 Сейчас в теме
(7)если можно, о чем оооочень прошу, можете написать пример с комментарием, на две строки данных, чтобы мне было проще понять что за что отвечает. например: я хочу вывести данные ФИО сотрудника в печатную форму и данные Режима работы данного сотрудника. (фио находится в Справочники-ФизическиеЛица-ФИО), а режим работы находится в (Справочники-ГрафикиРаботыСотрудников-РежимРаботы). вот как мне написать запрос, и вплоть до функции вывода на пустую печатную форму? не сочтите за наглость, просто уже 4 день работаю не вылазия из компьютера, сроки уже просрочил, мне пообещали если я разберусь в том как составить форму печатную, то возьмут на работу и отправят на учебу по 1с.
Для справки, я открывал стандартные запросы (печать кадровых приказов) смотрел код, но он слишком непонятен. Так же пытался вставить часть кода готового с этих стандартных справочников, но пишет в итоге при открытии формы (недостаточно фактических параметров).
9. Raskad 10 03.09.18 17:50 Сейчас в теме
Здравствуйте.
Добавьте в код следующий блок:

	Список = Новый СписокЗначений;
	Список.Добавить(СсылкаНаОбъект);
	
	ОбластьШапки.Параметры.Должность = КадровыйУчет.КадровыеДанныеСотрудников(Ложь, Список, "Должность")[0].Должность;


Ну в макете, само собой, параметр "Должность" должен присутствовать в области "Шапка".
Protocolicmp; +1 Ответить
13. Protocolicmp 03.09.18 18:04 Сейчас в теме
(9)от куда взят путь Кадровый Учет-кадровые данные сотрудников? у меня его нигде нету...
12. Raskad 10 03.09.18 18:02 Сейчас в теме +0.1 $m
	МассивСотрудников = Новый Массив;
	МассивСотрудников.Добавить(СсылкаНаОбъект);
	
	МассивКадровыхДанных = Новый Массив;
	МассивКадровыхДанных.Добавить("Должность");
	МассивКадровыхДанных.Добавить("ГрафикРаботы");
	
	СтрокаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Ложь, МассивСотрудников, МассивКадровыхДанных)[0];
	ОбластьШапки.Параметры.Должность = СтрокаКадровыхДанных.Должность;
	ОбластьШапки.Параметры.РежимРаботы = СтрокаКадровыхДанных.ГрафикРаботы.РежимРаботы;
Показать
Anchoret; +1 Ответить
14. Protocolicmp 03.09.18 18:11 Сейчас в теме
(12)Работает) осталось только разобраться что к чему, вы не могли бы сказать от куда взят этот путь КадровыйУчет.КадровыеДанные? я просто нигде его не могу найти, и как можно посмотреть его дополнительные пути, чтобы я знал что от туда смогу при запросе получить, к примеру в вашем коде Режим работы не отобразился, видимо режим у меня в базе не заполнен просто,
16. Xershi 1490 03.09.18 18:23 Сейчас в теме
(14) найдите в конфигурации модуль "КадровыйУчет" и в нем функцию "КадровыеДанныеСотрудников". Она возвращает ТЗ.
17. Protocolicmp 03.09.18 18:27 Сейчас в теме
(16)поиском пробежался, но модуля не нашел, есть форма кадровый учет, реквизит, и команда, а модуля нету
18. Xershi 1490 03.09.18 19:13 Сейчас в теме
(17) значит у вас модуль немного по другому назван ищи везде просто функцию "КадровыеДанныеСотрудников". В описании обычно пишут входные и выходные параметры!
19. Raskad 10 04.09.18 09:14 Сейчас в теме
(18) согласитесь, если бы модуль был назван по-другому, то мой код не работал бы. На практике - иначе.
20. Xershi 1490 04.09.18 09:16 Сейчас в теме
(19) автор сказал, что у него не модуль, а обработка с таким названием есть. Либо он плохо ищет, либо говорит не то что есть!
22. Raskad 10 04.09.18 09:55 Сейчас в теме
(14) Да, скорей всего, режим работы просто не задан в базе.
15. Protocolicmp 03.09.18 18:23 Сейчас в теме
(12)как можно узнать какие данные я могу запросить в (КадровыйУчет.КадровыеДанныеСотрудников)?
например мне нужно запросить дату трудоустройства, город трудоустройства, и данные директора...
или где можно узнать все возможные варианты КадровыйУчет.КадровыеДанныеСотрудников? т.е. какие там есть поля
21. Raskad 10 04.09.18 09:51 Сейчас в теме
(15) Для того, чтобы ответить на вопрос "где можно узнать все возможные варианты" придется проанализировать код. Ну вот для примера некоторые варианты данных, которые можно получить с помощью данной функции:

- Территория;
- Организация;
- СуммированныйУчетРабочегоВремени;
- Состояние;
- СрочныйДоговор;
- ДатаДоговораКонтракта;
- НомерДоговораКонтракта;
- ТрудовойДоговорДата;
- ТрудовойДоговорНомер;
- КоличествоДнейОсновногоОтпуска;

Город трудоустройства? В смысле фактический адрес организации? Или юридический? Или адрес обособленного подразделения?

Руководителя можно получить так:
ОбластьШапки.Параметры.Руководитель = СведенияОбОтветственныхЛицах.СведенияОбОтветственныхЛицах(СтрокаКадровыхДанных.Организация, "Руководитель, ДолжностьРуководителя").Руководитель;
Protocolicmp; +1 Ответить
23. Protocolicmp 06.09.18 21:05 Сейчас в теме
(21)Город трудоустройства...
Оставьте свое сообщение

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