Запрос

1. user1355092 20.05.20 11:31 Сейчас в теме
Здравствуйте.

Помогите.

Создал запрос:

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДолжностиДополнительныеРеквизиты.Ссылка КАК СсылкаДолжность,
| ДолжностиДополнительныеРеквизиты.Значение КАК ЗначениеКатегорияРаботника
|ИЗ
| Справочник.Должности.ДополнительныеРеквизиты КАК ДолжностиДополнительныеРеквизиты";

РезультатЗапроса = Запрос.Выполнить();

Дальше ступор, знаний не хватает.
Как найти по "СсылкаДолжность" - "ЗначениеКатегорияРаботника" и вставить в форму?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
18. Vlan 36 20.05.20 14:57 Сейчас в теме +0.2 $m
Что-то вроде этого должно быть:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДолжностиДополнительныеРеквизиты.Ссылка КАК СсылкаДолжность,
| ДолжностиДополнительныеРеквизиты.Значение КАК ЗначениеКатегорияРаботника
|ИЗ
| Справочник.Должности.ДополнительныеРеквизиты КАК ДолжностиДополнительныеРеквизиты"
|ГДЕ
|ДолжностиДополнительныеРеквизиты.Ссылка = &Должность
|;
Запрос.УстановитьПараметр("Должность", ДанныеНаПечать.РаботаДолжность);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
Если ВыборкаДетальныеЗаписи.Следующий() Тогда
//..тут делаем то, что нужно с ВыборкаДетальныеЗаписи.ЗначениеКатегорияРаботника
Показать
user1355092; +1 Ответить
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
19. EVKash 14 20.05.20 15:05 Сейчас в теме
(1)
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
					|	ДолжностиДополнительныеРеквизиты.Значение КАК ЗначениеКатегорияРаботника
					|ИЗ
					|	Справочник.Должности.ДополнительныеРеквизиты КАК ДолжностиДополнительныеРеквизиты
					|ГДЕ
					|	ДолжностиДополнительныеРеквизиты.Ссылка = &СсылкаДолжность
					|	И ДолжностиДополнительныеРеквизиты.Свойство.Имя = &ИмяДопРек";
	Запрос.УстановитьПараметр("СсылкаДолжность", СсылкаДолжность);
	Запрос.УстановитьПараметр("ИмяДопРек", "ИмяДополнительногоРеквизитаДляРазработчиков");

	РезультатЗапроса = Запрос.Выполнить();
Показать
20. user1355092 20.05.20 15:07 Сейчас в теме
(19) Огромное, Спасибо. Помогли.
2. platon_ 10 20.05.20 11:55 Сейчас в теме
При записи в доп реквизитах устанавливается "Имя" для программного получения.
Сначала по этому имени в ПВХ "ДополнительныеРеквизитыИСведения" находите ваш доп. реквизит.
Потом в ТЧ вашего договора находите это Свойство и получаете Значение
3. Vlan 36 20.05.20 12:14 Сейчас в теме
Возьмите любую Консоль запросов и проверьте, что получает в итоге запрос. В вашем случае таблица пустая. А если сделать выборку не из табличной части, а из справочника, тогда появляются должности. Что-то вроде этого:
ВЫБРАТЬ
ДолжностиДополнительныеРеквизиты.Ссылка КАК СсылкаДолжность,
ДолжностиДополнительныеРеквизиты.ДополнительныеРеквизиты.(
Значение)
ИЗ
Справочник.Должности КАК ДолжностиДополнительныеРеквизиты
4. user1355092 20.05.20 14:03 Сейчас в теме
(3) Таблица не пустая.

Но вопрос не в этом. Не могу написать код, так чтобы зная Должность(СсылкаДолжность) получить и вставить - "ЗначениеКатегорияРаботника" в "документ"
Прикрепленные файлы:
5. Vlan 36 20.05.20 14:11 Сейчас в теме
(4) В таком случае, вам в запросе нужен параметр (Должность), по нему будут отсекаться все остальные должности, оставляя только нужные категории.
6. user1355092 20.05.20 14:15 Сейчас в теме
(5)Делаю параметр таблица пустая.

ВЫБРАТЬ
ДолжностиДополнительныеРеквизиты.Ссылка КАК СсылкаДолжность,
ДолжностиДополнительныеРеквизиты.ДополнительныеРеквизиты.(
Значение КАК Значение
) КАК ДополнительныеРеквизиты
ИЗ
Справочник.Должности КАК ДолжностиДополнительныеРеквизиты
ГДЕ
ДолжностиДополнительныеРеквизиты.Ссылка = &СсылкаДолжность
7. Vlan 36 20.05.20 14:17 Сейчас в теме
(6) Вы в консоли проверяете? А параметр задали?
8. user1355092 20.05.20 14:23 Сейчас в теме
9. Vlan 36 20.05.20 14:24 Сейчас в теме
У вас там ссылка "Параметры запроса". Там задавали параметр?
Прикрепленные файлы:
10. user1355092 20.05.20 14:34 Сейчас в теме
(9)Если не трудно, поясните, "там ссылка "Параметры запроса" - это где?
11. Vlan 36 20.05.20 14:35 Сейчас в теме
(10) Прикрепил картинку. Консоли разные, но у каждой есть ссылка или вкладка Параметры, где нужно указать нужное значение

У вас окно "Текст запроса", а над ним ссылка с параметрами
12. user1355092 20.05.20 14:39 Сейчас в теме
(11)Нашел. Вроде все стоит.
Прикрепленные файлы:
13. Vlan 36 20.05.20 14:40 Сейчас в теме
(12) СсылкаДолжность заполните. Лучше по-другому назвать параметр, чтобы не путаться
14. user1355092 20.05.20 14:45 Сейчас в теме
(13)Вы имеете ввиду, заполнить "Значение" выбрав там должность?
15. Vlan 36 20.05.20 14:46 Сейчас в теме
16. user1355092 20.05.20 14:50 Сейчас в теме
Наименование должности, берется из кода. ДанныеНаПечать.РаботаДолжность.
17. Vlan 36 20.05.20 14:51 Сейчас в теме
(16) Это в обработке. В консоли можно вручную задать. Лучше давайте ваш модуль сразу поправим. Добавьте в запрос условие с параметром и сам параметр передайте через переменную.
18. Vlan 36 20.05.20 14:57 Сейчас в теме +0.2 $m
Что-то вроде этого должно быть:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДолжностиДополнительныеРеквизиты.Ссылка КАК СсылкаДолжность,
| ДолжностиДополнительныеРеквизиты.Значение КАК ЗначениеКатегорияРаботника
|ИЗ
| Справочник.Должности.ДополнительныеРеквизиты КАК ДолжностиДополнительныеРеквизиты"
|ГДЕ
|ДолжностиДополнительныеРеквизиты.Ссылка = &Должность
|;
Запрос.УстановитьПараметр("Должность", ДанныеНаПечать.РаботаДолжность);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
Если ВыборкаДетальныеЗаписи.Следующий() Тогда
//..тут делаем то, что нужно с ВыборкаДетальныеЗаписи.ЗначениеКатегорияРаботника
Показать
user1355092; +1 Ответить
21. EVKash 14 20.05.20 15:07 Сейчас в теме
(18) так выберет значения всех дополнительных реквизитов, а не только нужное.
22. user1355092 20.05.20 15:09 Сейчас в теме
(18)Огромное, Спасибо. Помогли.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

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

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

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

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