Имя: Пароль:
1C
 
8.3 Не срабатывает оповещение
0 illiona
 
naïve
04.08.20
09:58
Добрый день. Не срабатывает оповещение. Режим запуска обычное приложение
&НаКлиенте
Процедура ВыбратьДокументПоступления()
    
    СобытияФормМДЛПКлиентПереопределяемый.ОткрытьФормуВыбораДокументаПоступлениеТоваров(
        ЭтотОбъект, Объект, Новый ОписаниеОповещения("ПослеВыбораДокументаПоступления", ЭтотОбъект));
    
КонецПроцедуры

&НаКлиенте
Процедура ПослеВыбораДокументаПоступления(ВыбранныйДокумент, ДополнительныеПараметры) Экспорт
КонецПроцедуры
1 lucbak
 
04.08.20
10:10
(0) Для обычного приложения есть небольшой ньюанс при использовании "оповещения" а именно необходимо процедуру оповещения расположить еще и в модуле объекта.
2 illiona
 
naïve
04.08.20
10:13
(1) попробую, просто повторить в модуле процедуру ПослеВыбораДокументаПоступления?
3 lucbak
 
04.08.20
10:24
(2) да, в модуле объекта
4 lucbak
 
04.08.20
10:26
(3) причем процедуру можно просто пустую вставить (без кода внутри)
5 illiona
 
naïve
04.08.20
14:14
(4) Все равно не получилось(
6 lucbak
 
04.08.20
15:32
(5) Покажи как написал код в модуле объекта и в модуле формы?
7 ZDenis
 
04.08.20
15:39
Может я что-то не понимаю, но если "Режим запуска обычное приложение" - то форма то какая открывается?
8 lucbak
 
04.08.20
16:05
(7) В обычном приложении никто не мешает открывать управляемые формы.
9 ZDenis
 
04.08.20
16:09
(8) Как это?
10 ДенисЧ
 
04.08.20
16:26
(9) Как обычную. Если она в конфигурации, а не внешняя
11 ZDenis
 
04.08.20
16:29
(10) что-то никогда так не пробовал делать. И что откроется прямо эта форма с ее процедурами или как если бы у объекта не было назначенных форм?
12 ДенисЧ
 
04.08.20
16:44
(11) Откроется нормальная управляемая форма.
Ща пример покажу
13 ДенисЧ
 
04.08.20
16:48
http://pics.wfido.ru/img/frm_vtbvi.png

Это управляемая форма в обычном приложении.
14 ZDenis
 
04.08.20
16:57
(13) Ха, точно. Попробовал сейчас в ЗУП 2.5 управляемые формы позапускать. Вот же. Никогда бы не подумал
15 polosov
 
04.08.20
17:07
(0) Не пробовал внимательно читать СП по ОткрытьФорму?
16 polosov
 
04.08.20
17:08
(0) Оповещай сам, короче.
17 illiona
 
naïve
05.08.20
06:00
(6)
Это в документе на форме
&НаКлиенте
Процедура ВыбратьДокументПоступления()
    СобытияФормМДЛПКлиентПереопределяемый.ОткрытьФормуВыбораДокументаПоступлениеТоваров(
        ЭтотОбъект, Объект, Новый ОписаниеОповещения("ПослеВыбораДокументаПоступления", ЭтотОбъект));
КонецПроцедуры

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

В модуле этого же документа
&НаКлиенте
Процедура ПослеВыбораДокументаПоступления(ВыбранныйДокумент, ДополнительныеПараметры)
КонецПроцедуры
18 ДенисЧ
 
05.08.20
06:22
Может СобытияФормМДЛПКлиентПереопределяемый.ОткрытьФормуВыбораДокументаПоступлениеТоваров кривая?

ЧТо там в ней? ИЛи она закрыта?
19 illiona
 
naïve
05.08.20
06:30
Процедура ОткрытьФормуВыбораДокументаПоступлениеТоваров(Форма, Объект, ОповещениеПриЗавершении) Экспорт
    ОткрытьФорму("Документ.ПоступлениеТМЦ.ФормаВыбора",,Форма,,,,ОповещениеПриЗавершении);
КонецПроцедуры
20 ДенисЧ
 
05.08.20
06:32
(19) Вроде нормально. Может ФормаВыбора кривая? Не оповещает о выборе?
21 illiona
 
naïve
05.08.20
06:33
а что в форме выбора прописать?
22 ДенисЧ
 
05.08.20
06:35
Форма (Form)
ОповеститьОВыборе (NotifyChoice)
Синтаксис:
ОповеститьОВыборе(<ЗначениеВыбора>)
Параметры:
<ЗначениеВыбора> (обязательный)
Тип: Произвольный.
Результат выбора.
Описание:
Посылает оповещение владельцу формы о выполнении выбора или подбора, передает ему выбранное значение. Закрывает форму в соответствии со значением свойства ЗакрыватьПриВыборе. Данное действие аналогично выполнению выбора в форме, открытой для выбора в поле ввода или ячейке табличного поля.
Доступность:
Толстый клиент.
Примечание:
Может применяться в случае, когда открытие формы выбора или подбора выполнено средствами языка.
Пример:
ОповеститьОВыборе(ТекущаяСтрока);
См. также:
Форма, событие ОбработкаВыбора
Использование в версии:
Доступен, начиная с версии 8.0.
     Методическая информация
23 illiona
 
naïve
05.08.20
12:03
(20) не оповещает, даже в функцию не заходит оповещание выбора
24 polosov
 
05.08.20
13:34
(23) см (15)
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.