Вход | Регистрация
 

Функция на сервере с контекстом

Функция на сервере с контекстом
Я
   Varlant1n
 
14.01.21 - 11:18
Здравствуйте, дорогие форумчане. Мне надо через функцию на сервере с контекстом, с помощью запроса, узнать есть ли документ у менеджера и передать это значение в процедуру на клиенте для дальнейшей обработки. Вот, что у меня есть на данный момент, но у меня конфигуратор ругается на "Недостаточно фактических параметров". Можете подсказать в чем может заключаться ошибка. Код:

&НаКлиенте
Процедура МенеджерПриИзменении(Элемент)
    Если ЗначениеЗаполнено(Объект.Менеджер) Тогда
        МенеджерПриИзмененииНаСервере(Менеджер);
        Если РезультатЗапроса.Пустой() Тогда
            /////
        Иначе ////
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

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

И тут можно поправить
  Запрос.УстановитьПараметр("Менеджер", Объект.Менеджер);
   DrShad
 
2 - 14.01.21 - 11:22
да тут намного больше ошибок
   Varlant1n
 
3 - 14.01.21 - 11:26
(2) ?
   ДенисЧ
 
4 - 14.01.21 - 11:27
МенеджерПриИзмененииНаСервере(Менеджер);
        Если РезультатЗапроса.Пустой() Тогда

Что такое результатзапроса?

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

Где возврат значения?
   Mankubus
 
5 - 14.01.21 - 11:30
"ВЫБРАТЬ ПЕРВЫЕ 1
    |    ЗаданиеМенеджера.Ссылка КАК Ссылка
    |ИЗ
    |    Документ.Менеджер КАК Менеджер

ЗаданиеМенеджера -- это что? Почему не пользуешься конструктором запроса?
   Varlant1n
 
6 - 14.01.21 - 11:32
(1) Исправил, но конфигуратор все равно ругается:

&НаКлиенте
Процедура МенеджерПриИзменении(Элемент)
    Если ЗначениеЗаполнено(Объект.ФизическоеЛицо) Тогда
        МенеджерПриИзмененииНаСервере(Менеджер);
    КонецЕсли;
КонецПроцедуры

&НаСервереБезКонтекста
Функция МенеджерПриИзмененииНаСервере(Менеджер)
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ ПЕРВЫЕ 1
    |    ЗаданиеМенеджера.Ссылка КАК Ссылка
    |ИЗ
    |    Документ.ЗаданиеМенеджера КАК ЗаданиеМенеджера
    |ГДЕ
    |  ЗаданиеМенеджера.Проведен = ИСТИНА
    |    И НАЧАЛОПЕРИОДА(ЗаданиеМенеджера.Дата, День) = НАЧАЛОПЕРИОДА(&ТекущаяДата, День)
    |    И ЗаданиеМенеджера.Менеджер= &Менеджер";
    Запрос.УстановитьПараметр("Экспедитор", Менеджер);
    Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());
    РезультатЗапроса = Запрос.Выполнить();
    
    Если РезультатЗапроса.Пустой() Тогда
        Резульат = Истина
    Иначе
        Резульат = Ложь
    КонецЕсли;
    
    Возврат Резульат;
КонецФункции
   Varlant1n
 
7 - 14.01.21 - 11:32
(5) Это документ. Я использовал конструктор

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.