Внешняя обработка регламентное задание Розница 2.2

1. tolyan_ekb 104 09.10.17 15:16 Сейчас в теме
Создал внешнюю обработку. Заполнил данные для команды
Функция СведенияОВнешнейОбработке() Экспорт
  ПараметрыРегистрации = Новый Структура;
  ПараметрыРегистрации.Вставить("Вид", "ДополнительнаяОбработка");
  ПараметрыРегистрации.Вставить("Наименование", "Выгрузка остатков и ср. продаж"); //Наименование обработки, которым будет заполнено наименование элемента справочника
  ПараметрыРегистрации.Вставить("Версия", "1.0");
  ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
  ПараметрыРегистрации.Вставить("Информация", "Обработка ежедневно выгружает остатки и раз в месяц средние продажи"); //Краткая информация по обработке, описание обработки
 // ПараметрыРегистрации.Вставить("ВерсияБСП", "1.2.1.4");
  ТаблицаКоманд = ПолучитьТаблицуКоманд();
  ДобавитьКоманду(ТаблицаКоманд,
          "Выгрузка", //представление команды в пользовательском интерфейсе
          "Выгрузка", //идентификатор команды; любая строка, уникальная в пределах данной обработки
          "ВызовСерверногоМетода");
  ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
  Возврат ПараметрыРегистрации;
КонецФункции

Функция ПолучитьТаблицуКоманд()
  Команды = Новый ТаблицаЗначений;
  Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
  Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
  Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
  Возврат Команды;
КонецФункции  

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
  НоваяКоманда = ТаблицаКоманд.Добавить();
  НоваяКоманда.Представление = Представление;
  НоваяКоманда.Идентификатор = Идентификатор;
  НоваяКоманда.Использование = Использование;
  НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
  НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды) Экспорт
  // Реализация логики команды
  Если ИдентификаторКоманды = "Выгрузка" Тогда
	  // Выберем остатки по магазинам
		сообщить("Начало выгрузки "+ТекущаяДата());
  Конецесли;
КонецПроцедуры
Показать

При нажатии кнопки "Выполнить" в форме дополнительные отчеты и обработки.
Выводится сообщение:
Не удалось выполнить команду.
Недостаточно фактических параметров

{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(2418)}: Недостаточно фактических параметров
ВнешнийОбъект.ВыполнитьКоманду(ИдентификаторКоманды);

Не понимаю чего на хватает. Подскажите, пожалуйста. Может этот код уже не работает на новой платформе?
greenfest; echo77; +2 Ответить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Абушев 135 09.10.17 15:20 Сейчас в теме
(1)
Функция СведенияОВнешнейОбработке() Экспорт
	    
    ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
    
    ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
    ПараметрыРегистрации.Версия = "1.1";
    
    НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
    НоваяКоманда.Представление = "Выгрузка остатков и ср. продаж";
    НоваяКоманда.Идентификатор = "ВыгрузкаОстатковИПродаж";
    НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
    НоваяКоманда.ПоказыватьОповещение = Ложь;
    
    Возврат ПараметрыРегистрации;
    
КонецФункции
Показать
3. tolyan_ekb 104 09.10.17 15:32 Сейчас в теме
(2) Мне не нужно открывать форму. Это регламентное задание
6. spacecraft 09.10.17 16:14 Сейчас в теме
(1) в данном случае будет достаточно:
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды = Неопределено) Экспорт
MVitsen; poyson; romulanin; tdml; BrainWashed; gaspard; Matveev_VS; tokmakov1904; user1954423; Misanets; justaria; wolfsoft; krikmarin; Lapitskiy; Veric; Sobmih; tolyan_ekb; +17 Ответить
7. tolyan_ekb 104 10.10.17 07:06 Сейчас в теме
(6)
ПараметрыВыполненияКоманды = Неопределено

ошибки с запуском нет, спасибо.
10. krikmarin 2 30.06.22 16:34 Сейчас в теме
12. romulanin 18.12.23 17:22 Сейчас в теме
(6)
ПараметрыВыполненияКоманды


есть пример как передать эти самые параметры ?
13. poyson 25.12.23 09:49 Сейчас в теме
(6)
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды = Неопределено) Экспорт

тоже помогло! Спасибо!
4. tolyan_ekb 104 09.10.17 15:33 Сейчас в теме
при установке параметра
НоваяКоманда.Использование =ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
та же ошибка
5. Абушев 135 09.10.17 15:41 Сейчас в теме
(4)
Комментарии к функции

Функция ТипКомандыВызовСерверногоМетода() Экспорт

// Возвращает имя типа команд с вызовом серверного метода. Для выполнения команд такого типа
// в модуле объекта следует определить экспортную процедуру по шаблону:
//
// Для глобальных отчетов и обработок (Вид = "ДополнительнаяОбработка" или Вид = "ДополнительныйОтчет"):
// // Обработчик серверных команд.
// //
// // Параметры:
// // ИдентификаторКоманды - Строка - Имя команды, определенное в функции СведенияОВнешнейОбработке().
// // ПараметрыВыполнения - Структура - Контекст выполнения команды.
// // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка обработки.
// // Может использоваться для чтения параметров обработки.
// // Пример см. в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы().
// //
// Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполнения) Экспорт
// // Реализация логики команды.
// КонецПроцедуры
//
// Для печатных форм (Вид = "ПечатнаяФорма"):
// // Обработчик печати.
// //
// // Параметры:
// // МассивОбъектов - Массив - Ссылки на объекты, которые нужно распечатать.
// // КоллекцияПечатныхФорм - ТаблицаЗначений - Информация о табличных документах.
// // Используется для передачи в параметрах функции УправлениеПечатью.СведенияОПечатнойФорме().
// // ОбъектыПечати - СписокЗначений - Соответствие между объектами и именами областей в табличных документах.
// // Используется для передачи в параметрах процедуры УправлениеПечатью.ЗадатьОбластьПечатиДокумента().
// // ПараметрыВывода - Структура - Дополнительные параметры сформированных табличных документов.
// // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка обработки.
// // Может использоваться для чтения параметров обработки.
// // Пример см. в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы().
// //
// // Пример:
// // ПечатнаяФорма = УправлениеПечатью.СведенияОПечатнойФорме(КоллекцияПечатныхФорм, "<ИдентификаторПечатнойФормы>");
// // Если ПечатнаяФорма <> Неопределено Тогда
// // ТабличныйДокумент = Новый ТабличныйДокумент;
// // ТабличныйДокумент.КлючПараметровПечати = "<КлючСохраненияПараметровПечатнойФормы>";
// // Для Каждого Ссылка Из МассивОбъектов Цикл
// // Если ТабличныйДокумент.ВысотаТаблицы > 0 Тогда
// // ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
// // КонецЕсли;
// // НачалоОбласти = ТабличныйДокумент.ВысотаТаблицы + 1;
// // // ... код по формированию табличного документа ...
// // УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НачалоОбласти, ОбъектыПечати, Ссылка);
// // КонецЦикла;
// // ПечатнаяФорма.ТабличныйДокумент = ТабличныйДокумент;
// // КонецЕсли;
// //
// Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
// // Реализация логики команды.
// КонецПроцедуры
//
// Для обработок создания связанных объектов (Вид = "СозданиеСвязанныхОбъектов"):
// // Обработчик серверных команд.
// //
// // Параметры:
// // ИдентификаторКоманды - Строка - Имя команды, определенное в функции СведенияОВнешнейОбработке().
// // ОбъектыНазначения - Массив - Ссылки объектов, для которых вызвана команда.
// // СозданныеОбъекты - Массив - Ссылки новых объектов, созданных в результате выполнения команды.
// // ПараметрыВыполнения - Структура - Контекст выполнения команды.
// // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка обработки.
// // Может использоваться для чтения параметров обработки.
// // Пример см. в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы().
// //
// Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполнения) Экспорт
// // Реализация логики команды.
// КонецПроцедуры
//
// Для обработок создания связанных объектов (Вид = "ШаблонСообщения"):
// // Обработчик серверных команд.
// //
// // Параметры:
// // ИдентификаторКоманды - Строка - Имя команды, определенное в функции СведенияОВнешнейОбработке().
// // ОбъектыНазначения - Массив - Ссылки объектов, для которых вызвана команда.
// // СозданныеОбъекты - Массив - Ссылки новых объектов, созданных в результате выполнения команды.
// // ПараметрыВыполнения - Структура - Контекст выполнения команды.
// // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка обработки.
// // Может использоваться для чтения параметров обработки.
// // Пример см. в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы().
// //
// Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполнения) Экспорт
// // Реализация логики команды.
// КонецПроцедуры
//
// Для обработок заполнения (Вид = "ЗаполнениеОбъекта"):
// // Обработчик серверных команд.
// //
// // Параметры:
// // ИдентификаторКоманды - Строка - Имя команды, определенное в функции СведенияОВнешнейОбработке().
// // ОбъектыНазначения - Массив - Ссылки объектов, для которых вызвана команда.
// // - Неопределено - для команд "ЗаполнениеФормы".
// // ПараметрыВыполнения - Структура - Контекст выполнения команды.
// // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка обработки.
// // Может использоваться для чтения параметров обработки.
// // Пример см. в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы().
// //
// Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, ПараметрыВыполнения) Экспорт
// // Реализация логики команды.
// КонецПроцедуры
//
// Возвращаемое значение:
// Строка - имя типа команд с вызовом серверного метода.
//
Показать


По ходу еще не хватает

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполнения) Экспорт
  // Реализация логики команды
  Если ИдентификаторКоманды = "Выгрузка" Тогда
      // Выберем остатки по магазинам
        сообщить("Начало выгрузки "+ТекущаяДата());
  Конецесли;
КонецПроцедуры
Показать
8. p.ugrumov 171 05.12.19 15:56 Сейчас в теме
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды = Неопределено)

Спасибо, ПараметрыВыполненияКоманды = Неопределено выручило!
user973528; krikmarin; daab; Andrei_Ivanov; echo77; +5 Ответить
9. Tohichbest 27.10.21 17:39 Сейчас в теме
Встретился с такой ошибкой, оказалось причина в не указанной версии БСП = ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
wauri; tdml; Raritek; ricken; user1559729; fratriaArzgir; mrflatcher; +7 Ответить
11. vechiy 35 15.09.22 15:51 Сейчас в теме
а без БСП работать будет?
Оставьте свое сообщение

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