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

Оповещение во внешней заполнялке 1с

Оповещение во внешней заполнялке 1с
Я
   Симпатяга
 
03.06.19 - 10:31
Есть внешняя обработка для Бух 3.0. БСП
Делаю заполнялку для документа. с вводом доп.параметров пользователем.
В основной форме написал вызов другой формы.
ОткрытьФорму("ВнешняяОбработка.ЗаполнитьПоЗаявке.Форма.ФормаНастроек");
Во второй форме

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

И на основной описал Обработку оповещения

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
    
    Если ИмяСобытия = "ПеренестиНоменклатуру" Тогда
           Сообщить("111");
    КонецЕсли;
    
    
КонецПроцедуры

Но оповещение не  работает. Не заходит в процедуру.
Что я делаю не так. Прошу сильне не пинать. Переобучаюсь с основных форм(
 
 
   Симпатяга
 
1 - 03.06.19 - 10:32
Есть предположение, что оповещение не отрабатывает, потому что по факту - основная форма не открывается.
Она нужна для механизмов БСП "ВызовКлиентскогоМетода"
   Симпатяга
 
2 - 03.06.19 - 10:47
хэлп
   ам794123
 
3 - 03.06.19 - 10:52
(0) я делаю так :

Функция СведенияОВнешнейОбработке() Экспорт
    
    ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
    ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта();
    
...

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


В форме обработки:

&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт
    ОткрытьФорму("ВнешняяОбработка.МояОбработка.Форма", ,ВладелецФормы);
КонецПроцедуры


Пользователь вводит необходимые параметры и нажимает кнопку "Заполнить"
   Симпатяга
 
4 - 03.06.19 - 10:55
(3) а можете показать код на форме параметров по кнопке "заполнить"
   ам794123
 
5 - 03.06.19 - 11:00
(4) &НаКлиенте
Процедура ЗаполнитьЦеныДокумента(Команда)
    ОшибокНет = Истина;
    ПрочитатьТаблицуЦенИзЭкселя();
    Если ЗначениеЗаполнено(ТаблицаЦен) Тогда 
        ФормаДокумента = ВладелецФормы.ЭтаФорма;
        Для Каждого Элемент Из ФормаДокумента.Объект.Товары Цикл
            Артикул = ПолучитьАртикулНоменклатуры(Элемент.Номенклатура);
            Если ЗначениеЗаполнено(Артикул) Тогда 
                НайденныеСтроки = ТаблицаЦен.НайтиСтроки(Новый Структура("Артикул", Артикул));
                Если НайденныеСтроки.Количество() = 0 Тогда 
                    
                    ОшибокНет = Ложь;
                    Сообщить("В строке " + Элемент.НомерСтроки + " не найден артикул " + Артикул);
                Иначе
                    Элемент.Цена = НайденныеСтроки[0].Цена;
                    ЦенаПриИзменении(Элемент, ФормаДокумента);
                КонецЕсли;
            Иначе
                ОшибокНет = Ложь;
                Сообщить("В строке " + Элемент.НомерСтроки + " у номенклатуры " + Элемент.Номенклатура + " не заполнен артикул");
            КонецЕсли;
        КонецЦикла;
    КонецЕсли;
    Если ОшибокНет Тогда 
        ЭтаФорма.Закрыть();
    КонецЕсли;
КонецПроцедуры
   Симпатяга
 
6 - 03.06.19 - 11:44
Спасибо

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