Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Web сервис не видит "Метод объекта"

Web сервис не видит "Метод объекта"
Я
   Radzhab
 
24.04.19 - 10:20
Создал простенький метод для веб-сервиса. Вне веб-сервиса(внешняя обработка) все работает корректно. А тут когда вызываю пишет ошибку - Метод объекта не обнаружен (СформироватьОтчет)"

Функция HelloBaza(username, date)
ОтчетРасчетныеЛисткиОрганизаций = Отчеты.РасчетныеЛисткиОрганизаций.Создать();
    
    ТиповыеОтчеты.УстановитьПараметр(ОтчетРасчетныеЛисткиОрганизаций.КомпоновщикНастроек, "НачалоПериода", НачалоМесяца(date));
    ТиповыеОтчеты.УстановитьПараметр(ОтчетРасчетныеЛисткиОрганизаций.КомпоновщикНастроек, "КонецПериода", КонецМесяца(date));
    ТиповыеОтчеты.УстановитьПараметр(ОтчетРасчетныеЛисткиОрганизаций.КомпоновщикНастроек, "Группировать", Ложь);
    ТиповыеОтчеты.УстановитьПараметр(ОтчетРасчетныеЛисткиОрганизаций.КомпоновщикНастроек, "ВидРасчетногоЛистка", "Для сотрудника");
    ТиповыеОтчеты.ДобавитьОтбор(ОтчетРасчетныеЛисткиОрганизаций.КомпоновщикНастроек, "ФизЛицо", username);
    
    ТабличныйДокументРасчетныйЛисток = Новый ТабличныйДокумент;
    ОтчетРасчетныеЛисткиОрганизаций.СформироватьОтчет(ТабличныйДокументРасчетныйЛисток);
    
    ИмяФайла = СокрЛП(username.Наименование);
    КаталогФайла = КаталогВременныхФайлов();
    
    ТекИмяФайла = КаталогФайла + ИмяФайла + ".xls";
    ТабличныйДокументРасчетныйЛисток.Записать(ТекИмяФайла, ТипФайлаТабличногоДокумента.XLS);
    
    //BASE64
    ВременныйФайл = ТекИмяФайла;          
    ДД_Файла = Новый ДвоичныеДанные(ВременныйФайл);
    СтрокаBase64 = Base64Строка(ДД_Файла);
    
    УдалитьФайлы(ВременныйФайл);
    
    Возврат СтрокаBase64;
КонецФункции

Вот кусок метода СформироватьОтчет

Функция СформироватьОтчет(Результат, ДанныеРасшифровки = Неопределено, ВыводВФормуОтчета = ложь, ВыводитьПоСтраницам = ложь) Экспорт
    
    #Если ТолстыйКлиентОбычноеПриложение Тогда
        СохранитьНастройкуТабличногоДокумента(Результат);
    #КонецЕсли
    
    Если ДанныеРасшифровки = Неопределено тогда
        ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
    КонецЕсли;
    
    НастрокаПоУмолчанию        = КомпоновщикНастроек.ПолучитьНастройки();
    ТиповыеОтчеты.ПолучитьПримененуюНастройку(ЭтотОбъект);
    
    ЗначениеПараметра = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Группировать"));
    
    Если ЗначениеПараметра.Использование и НЕ ЗначениеПараметра.Значение тогда
        УдалитьГруппировку();
    КонецЕсли;
    
    // Получить настройки схемы компоновки данных
    Настройки = КомпоновщикНастроек.Настройки;
 
 
   Radzhab
 
1 - 24.04.19 - 10:21
ps. Как тут форматировать код?
   ptiz
 
2 - 24.04.19 - 10:26
(0) Ищи конструкции вида #Если .... выше процедуры СформироватьОтчет().
   Radzhab
 
3 - 24.04.19 - 10:28
#Если ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение тогда
   Radzhab
 
4 - 24.04.19 - 10:28
   Жан Пердежон
 
5 - 24.04.19 - 10:32
ну так вынеси её оттуда
   Nuobu
 
6 - 24.04.19 - 10:34
(4) ИЛИ Сервер
   Radzhab
 
7 - 24.04.19 - 10:38
(6) Теперь ругается на другой кусок кода) 
Значение не является значением объектного типа (Наименование)"

ИмяФайла = СокрЛП(username.Наименование);// что то тут ему не нравится
   Жан Пердежон
 
8 - 24.04.19 - 10:40
вангую, username у тебя - строка
могу также научить пользоваться отладчиком (дорого)
   Mankubus
 
9 - 24.04.19 - 10:45
(1) справку читал? там все есть https://forum.mista.ru/about.php#newtopic
   Radzhab
 
10 - 24.04.19 - 11:30
(9) да читал
теперь такая ошибка 
 Процедура или функция с указанным именем не определена (ВосстановитьЗначение)
 
 Рекламное место пустует
   Radzhab
 
11 - 24.04.19 - 13:50
Короче исправил все что можно) Остался один момент 

Ошибка при установке значения атрибута контекста (Значение)

ПостроительОтчетов.Отбор[Имя].Значение = ЭлементОтбора.ПравоеЗначение;

Вот из отладчика данные
https://snag.gy/L3oxgw.jpg
https://snag.gy/Xy0mLT.jpg
   Nuobu
 
12 - 24.04.19 - 13:52
(11) Так там строка, а там - физлицо!

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