Почему не работает параметр в Запросе

1. Nik21 12.08.21 09:11 Сейчас в теме
Выдает ошибку "Неверные параметры "Спр1". Если в запрос вставляю текст Справочник.Контрагенты - все проходит нормально.

Запрос=Новый Запрос;
Запрос.УстановитьПараметр("Спр1", "Справочник.Контрагенты");
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
ТекстЗапроса="ВЫБРАТЬ ПЕРВЫЕ 10
| Спр1.Наименование КАК Наименование,
| Спр1.Код КАК Код
|ПОМЕСТИТЬ ВТТаб
|ИЗ
| &Спр1 КАК Спр1";
Запрос.Текст=ТекстЗапроса;
Запрос.Выполнить();

Почему не идет?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. user705522_constantin_h 35 12.08.21 09:36 Сейчас в теме
(1)Обычно это делается через СтрЗаменить:
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Спр1", "Справочник.Контрагенты")
7. Begemot39 29 12.08.21 10:15 Сейчас в теме
(1)
Запрос=Новый Запрос;
Запрос.УстановитьПараметр("Спр1", "Справочник.Контрагенты");
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
ТекстЗапроса="ВЫБРАТЬ ПЕРВЫЕ 10
| Спр1.Наименование КАК Наименование,
| Спр1.Код КАК Код
|ПОМЕСТИТЬ ВТТаб
|ИЗ
| &Спр1 КАК Спр1";
Запрос.Текст=ТекстЗапроса;
Запрос.Выполнить();


а если так?
	Запрос=Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 10
			| Спр1.Наименование КАК Наименование,
			| Спр1.Код КАК Код
			|ИЗ
			| &Спр1 КАК Спр1");   
	Запрос.Текст = СтрЗаменить(Запрос.Текст,"&Спр1", "Справочник.Контрагенты");
	РЗапроса= Запрос.Выполнить();
	ТабЗнач = РЗапроса.Выгрузить();
Показать
8. пользователь 12.08.21 10:16
Сообщение было скрыто модератором.
...
2. alxarz 31 12.08.21 09:13 Сейчас в теме
(1) справочник, это ж не параметр,
может лучше так?
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&Спр1","Справочник.Контрагенты");
3. Aftee 12.08.21 09:23 Сейчас в теме
Передаете в параметр строку, из которой хотите что-то выбрать? Немного странно...
4. VZyryanov 12.08.21 09:36 Сейчас в теме
Такие запросы используются и работают для таблицы значений:

Запрос.УстановитьПараметр("Спр1", МояТаблицаЗначений);
6. VmvLer 12.08.21 09:51 Сейчас в теме
(4) да,
если выборка из таблицы значений,
то используем в секции ИЗ параметр

|ИЗ
| &Тз1 КАК Т1"; 
Запрос.УстановитьПараметр("Тз1", "Тз1); 


если выборка из таблицы базы данных, вид которой определяем в алгоритме,
то используем в секции ИЗ хештег. Конструктор запроса с хештегом открывается.

ИЗ
| #Т1 КАК Т1";
Запрос.Текст = СтрЗаменить(Запрос.Текст,"#Т1","Справочник.Контрагенты");


При таком подходе с полувзгляда понятно, что задумал автор.
Оставьте свое сообщение

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