Получить параметры запроса в процедуре на клиенте

1. user1619761 05.08.21 16:49 Сейчас в теме
Здравствуйте. Подскажите, пожалуйста, можно ли каким то образом запрос.установитьпараметр ("НачПериода") и ("КонПериода") отправить с серверной функции в процедуру на клиенте?



&НаКлиенте
Процедура ВыполнитьКоманду(Команда)
	
	ВыборкаДетальныеЗаписи = ПолучитьДанныеНаСервере();
	
	ТекущаяСтрока = ВладелецФормы.Объект.Товары.Добавить();

	Пока ВыборкаДетальныеЗаписи.Следующий()Цикл
			
		ТекущаяСтрока.ТоварыНоменклатура = ВыборкаДетальныеЗаписи.Номенклатура;
		ТекущаяСтрока.ТоварыКоличество = ВыборкаДетальныеЗаписи.Количество;
		////ТекущаяСтрока.ТоварыСчетУчета = 
		////ТекущаяСтрока.ТоварыСчетПередачи = 
			
	КонецЦикла;

	
КонецПроцедуры

&НаСервере
Функция ПолучитьДанныеНаСервере()
	
			
	Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("НачПериода", ВладелецФормы.Объект.Дата-90*(3600*24));
	Запрос.УстановитьПараметр("КонПериода", ВладелецФормы.Объект.Дата);
	Запрос.УстановитьПараметр("ВПереработку",Перечисления.ВидыОперацийПередачаТоваров.ВПереработку);
	Запрос.Текст =
	"ВЫБРАТЬ
	|	ХозрасчетныйДвиженияССубконто.Регистратор КАК Регистратор,
	|	ХозрасчетныйДвиженияССубконто.СубконтоДт2 КАК СубконтоДт2,
	|	СУММА(ХозрасчетныйДвиженияССубконто.КоличествоДт) КАК КоличествоДт
	|ИЗ
	|	РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
	|			&НачПериода,
	|			&КонПериода,
	|			ТИПЗНАЧЕНИЯ(Регистратор) = ТИП(Документ.ПередачаТоваров)
	|				И СчетДт В (&СписокСчетов)
	|				И Регистратор.ВидОперации = &ВПереработку,
	|			,
	|			) КАК ХозрасчетныйДвиженияССубконто
	|
	|СГРУППИРОВАТЬ ПО
	|	ХозрасчетныйДвиженияССубконто.СубконтоДт2,
	|	ХозрасчетныйДвиженияССубконто.Регистратор";
	
			
	Список = Новый Массив;
	Список.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("10.07"));
	Список.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("45.01"));
	
	Запрос.УстановитьПараметр("СписокСчетов",Список);
	
	РезультатЗапроса = Запрос.Выполнить();   
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Возврат ВыборкаДетальныеЗаписи;
			
КонецФункции
Показать
По теме из базы знаний
Найденные решения
6. starik-2005 3033 05.08.21 16:55 Сейчас в теме
Функция ПолучитьДанныеНаСервере(ДатаСКлиента)
...
...
Запрос.УстановитьПараметр("Дата", ДатаСКлиента);
...
...
| КОНЕЦПЕРИОДА( ДОБАВИТЬКДАТЕ(&Дата, -90, ДЕНЬ), ДЕНЬ),
| НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ),
...
...
Показать
9. Papay72 05.08.21 17:04 Сейчас в теме
(8) Тогда как вариант, создать пустые переменные на клиенте, передать их в процедуру, и заполнить их на сервере, потом когда исполнение вернеться на клиент, у вас будут заполненные датами переменные
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 05.08.21 16:51 Сейчас в теме
А что, передавать данные в качестве параметров из клиентской процедуры в серверную процедуру уже стало не модным нынче? Или запрет какой вышел?

PS. Интересно, как вы выборку на клиент вернете. Хочу посмотреть.
3. user1619761 05.08.21 16:53 Сейчас в теме
(2) на клиенте в моем случае не удается запрос выполнить, вот такую ошибку выдает {ВнешняяОбработка.ЗаполнитьДокумент.Форма.СуммаДок.Форма(19,17)}: Тип не определен (Запрос)
Запрос = Новый <<?>>Запрос; (Проверка: Тонкий клиент)
4. FatPanzer 05.08.21 16:54 Сейчас в теме
(3) Удивительно! И в самом деле - запрет какой-то вышел, видимо ((( Запретили бедолагам на клиенте запросы исполнять (((
5. Papay72 05.08.21 16:55 Сейчас в теме
В чем проблема передать даты в качестве параметров В процедуру которая будет выполняться на сервере?
7. user1619761 05.08.21 17:00 Сейчас в теме
(5) тут дело в том, что конец периода заполняется из документа, если я на сервере эти параметры пытаюсь заполнить , то выдает ошибку {ВнешняяОбработка.ЗаполнитьДокумент.Форма.СуммаДок.Форма(25)}: Ошибка при получении значения атрибута контекста (ВладелецФормы)
Запрос.УстановитьПараметр("НачПериода", ВладелецФормы.Объект.Дата-90*(3600*24));
по причине:
Свойство недоступно на сервере
6. starik-2005 3033 05.08.21 16:55 Сейчас в теме
Функция ПолучитьДанныеНаСервере(ДатаСКлиента)
...
...
Запрос.УстановитьПараметр("Дата", ДатаСКлиента);
...
...
| КОНЕЦПЕРИОДА( ДОБАВИТЬКДАТЕ(&Дата, -90, ДЕНЬ), ДЕНЬ),
| НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ),
...
...
Показать
8. user1619761 05.08.21 17:00 Сейчас в теме
(6)
Показать
Спасибо! Сейчас попробую
9. Papay72 05.08.21 17:04 Сейчас в теме
(8) Тогда как вариант, создать пустые переменные на клиенте, передать их в процедуру, и заполнить их на сервере, потом когда исполнение вернеться на клиент, у вас будут заполненные датами переменные
10. user1619761 05.08.21 17:06 Сейчас в теме
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

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

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

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

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