Имя: Пароль:
1C
1С v8
БСП Заполнение объекта. не отрабатывает в форме документа
0 Shved_72
 
06.06.13
09:41
скопировал из БСП обработку. ничо не правил. подключил себе. в формах списка и документа появилось "Заполнить". в списке отрабатывает. в документ ваще тишина

команды там со всеми возможными видами:

// Возвращает сведения о внешней обработке.
Функция СведенияОВнешнейОбработке() Экспорт
   
   Сообщить ("Функция СведенияОВнешнейОбработке");  
   
   //ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("1.2.1.4");
   ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.3.1");
   
   ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта();
   ПараметрыРегистрации.Версия = "0.7";
   ПараметрыРегистрации.БезопасныйРежим = Истина;
   ПараметрыРегистрации.Назначение.Добавить("Документ.ПеремещениеТоваров");
   
   НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
   НоваяКоманда.Представление = НСтр("ru = 'Заполнить реквизит ""Полное наименование"" (вызов серверного метода)'");
   НоваяКоманда.Идентификатор = "ЗаполнитьПолноеНаименование";
   НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
   НоваяКоманда.ПоказыватьОповещение = Истина;
   
   НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
   НоваяКоманда.Представление = НСтр("ru = 'Добавить префикс к реквизиту ""Наименование"" (открытие формы)...'");
   НоваяКоманда.Идентификатор = "ДобавитьПрефиксКНаименованию";
   НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
   НоваяКоманда.ПоказыватьОповещение = Ложь;
   
   НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
   НоваяКоманда.Представление = НСтр("ru = 'Комплексная очистка (вызов серверного метода)'");
   НоваяКоманда.Идентификатор = "ОчиститьВсе";
   НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
   НоваяКоманда.ПоказыватьОповещение = Ложь;
   
   НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
   НоваяКоманда.Представление = НСтр("ru = 'Комплексное заполнение (вызов клиентского метода)'");
   НоваяКоманда.Идентификатор = "ЗаполнитьВсе";
   НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовКлиентскогоМетода();
   НоваяКоманда.ПоказыватьОповещение = Истина;
   
   НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
   НоваяКоманда.Представление = НСтр("ru = 'Заполнить реквизит ""ИНН"" не записывая объект (заполнение формы)'");
   НоваяКоманда.Идентификатор = "ЗаполнитьИНН";
   НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыЗаполнениеФормы();
   НоваяКоманда.ПоказыватьОповещение = Ложь;
   НоваяКоманда.Скрыть = Истина;
   
   Возврат ПараметрыРегистрации;
   
КонецФункции
1 Shved_72
 
06.06.13
09:42
БП 3.0.20.
Может ли быть что в БП сидит старая БСП, а обработка напсиано уже на свежий БСП? раньше по другому регались команды в СведенияОВнешнейОбработке
2 Shved_72
 
06.06.13
18:58
отмечусь, что почемуто БСП не во всех документах внедрено.
чтоб заработало, надо вставить в форму:

////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ КОМАНД ФОРМЫ

// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

&НаКлиенте
Процедура Подключаемый_ВыполнитьНазначаемуюКоманду(Команда)
   
   Если НЕ ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьНазначаемуюКомандуНаКлиенте(ЭтаФорма, Команда.Имя) Тогда
       РезультатВыполнения = Неопределено;
       ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(Команда.Имя, РезультатВыполнения);
       ДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтаФорма, РезультатВыполнения);
   КонецЕсли;
   
КонецПроцедуры

// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ

// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

&НаСервере
Процедура ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(ИмяЭлемента, РезультатВыполнения)
   
   ДополнительныеОтчетыИОбработки.ВыполнитьНазначаемуюКомандуНаСервере(ЭтаФорма, ИмяЭлемента, РезультатВыполнения);
   
КонецПроцедуры

// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки
3 Shved_72
 
06.06.13
19:25
решение: добавить в форму документа
// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

&НаКлиенте
Процедура Подключаемый_ВыполнитьНазначаемуюКоманду(Команда)
   
   Если НЕ ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьНазначаемуюКомандуНаКлиенте(ЭтаФорма, Команда.Имя) Тогда
       РезультатВыполнения = Неопределено;
       ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(Команда.Имя, РезультатВыполнения);
       ДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтаФорма, РезультатВыполнения);
   КонецЕсли;
   
КонецПроцедуры

// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ  

// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

&НаСервере
Процедура ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(ИмяЭлемента, РезультатВыполнения)
   
   ДополнительныеОтчетыИОбработки.ВыполнитьНазначаемуюКомандуНаСервере(ЭтаФорма, ИмяЭлемента, РезультатВыполнения);
   
КонецПроцедуры

// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки
4 Shved_72
 
06.06.13
19:25
почему то не во все документы БСП внедрено