Имя: Пароль:
1C
1С v8
Печать внешней обработки
0 LittlePumpkin
 
23.07.20
13:28
Добрый день! Управление торговлей 11
Создал внешнюю обработку для печати документа "Реализация товаров и услуг" по необходимому макету. При попытке запустить выдает ошибку:

Метод объекта не обнаружен (Печать)
{ОбщийМодуль.УправлениеПечатью.Модуль(1510)}:    ВнешняяОбработкаОбъект.Печать(
{ОбщаяФорма.ПечатьДокументов.Форма(413)}:        УправлениеПечатью.ПечатьПоВнешнемуИсточнику(

Процедуру Печать сделал экспортной. Не понимаю в чем проблема, подскажите пожалуйста.
1 LittlePumpkin
 
23.07.20
13:39
В общем модуле "Управление печатью" сваливается здесь
ВнешняяОбработкаОбъект.Печать(
        ПараметрыИсточника.ОбъектыНазначения,
        КоллекцияПечатныхФорм,
        ОбъектыПечати,
        ПараметрыВывода);

Функцию "Печать" в обработке сделал так:

&НаКлиенте
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    ПараметрыПечати = Новый Структура;
    
    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "УПДВнешний") Тогда
        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
            КоллекцияПечатныхФорм,
            "УПДВнешний",
            НСтр("ru = 'Реализация товаров'"),
            СформироватьПечатнуюФормуНакладная(МассивОбъектов, ОбъектыПечати, ПараметрыПечати),
            ,
            "УниверсальныйПередаточныйДокумент");
    КонецЕсли;

КонецПроцедуры
2 Галахад
 
гуру
23.07.20
13:45
Угу. В общем модуле "&НаКлиенте".
3 LittlePumpkin
 
23.07.20
13:54
То есть проблема в том, что с сервера не видно клиентскую функцию правильно понимаю?
Но проблема тогда в том, что функция "Печать" вызывает функцию "СформироватьПечатнуюФормуНакладная" в которой используется "установить параметр" для запроса. А "установить параметр" на сервере недоступен. Поэтому обе функции ("печать" и "СформироватьПечатнуюФормуНакладная") приходится определять на клиенте. Подскажите как разрешить этот момент?
4 LittlePumpkin
 
23.07.20
13:58
Наверное непонятно написал. Схема такая
Печать -----> СформироватьПечатнуюФомуНакладная
                       |
                       |
                   используется "установить параметр" для запроса

При определении функций на сервере ругается на "установить параметр"
5 Uzyf
 
23.07.20
14:01
Ты про этот параметр?

УстановитьПараметр (SetParameter)
Синтаксис:
УстановитьПараметр(<Имя>, <Значение>)
Параметры:
<Имя> (обязательный)
Тип: Строка.
Имя устанавливаемого параметра. Оно должно соответствовать требованиям, предъявляемым к именованию переменных встроенного языка.
<Значение> (обязательный)
Тип: Произвольный.
Значение устанавливаемого параметра.
Описание:
Устанавливает параметр запроса. Параметры доступны для обращения в тексте запроса. С помощью этого метода можно передавать переменные в запрос, например, для использования в условиях запроса.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
6 LittlePumpkin
 
23.07.20
14:10
Да, про этот, при определении на сервере выдает

Процедура или функция с указанным именем не определена (УстановитьПараметр)
                <<?>>УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", Неопределено); (Проверка: Сервер)
7 Uzyf
 
23.07.20
14:13
(6)
Пример:
Запрос.УстановитьПараметр("ДатаКонца", РабочаяДата);
Запрос.УстановитьПараметр("Товар", ВыбТовар);
8 LittlePumpkin
 
23.07.20
14:15
Да, про него, используется так:

Если НаборыСервер.ВыводитьТолькоЗаголовок(ВыборкаПоТоварам, ИспользоватьНаборы) Тогда
                УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", Неопределено);
            Иначе
                НомерСтроки = НомерСтроки + 1;
                УстановитьПараметр(ОбластьНомераСтроки, "НомерСтроки", НомерСтроки);
            КонецЕсли;
9 Uzyf
 
23.07.20
14:19
(8) это какая-то ваша процедура, которая не описана у вас. Запрос.УстановитьПараметр - это другое