Имя: Пароль:
1C
1С v8
Подписка на событие в конфигурации на управляемых формах не отрабатывает. Баг или фича ?
0 ЧессМастер
 
18.09.19
15:12
Всем доброе время суток !

Ситуация следующая.

Конфигурация на управляемых формах. Конкретно БП 3.0.

Создаю подписку на событие.

Источник - ДокументОбъект.
Событие - ОбработкаПроведения
Привязываю обработчик.

Применяю изменений. Открываю форму документа, провожу нужный документ - в подписку не попадает.

При этом если в форме списка  щелкнуть правой кнопкой мыши и выбрать "провести" то в подписку попадает.

Это глюк платформы или так и должно на управляемых формах отрабатывать ?

На обычных формах в подписку попадает вне зависимости каким образом проводится документ.

Платформа 1С:Предприятие 8.3 (8.3.13.1513)


Кто сталкивался с подобным - просьба подсказать.
1 H A D G E H O G s
 
18.09.19
15:14
(0) ТолстыйКлиентУправляемыйРежим ?
2 ЧессМастер
 
18.09.19
15:16
(1) Тонкий клиент управляемый режим
3 hhhh
 
18.09.19
15:18
(2) что такое "применяют изменений"?
4 ЧессМастер
 
18.09.19
15:21
(3) Конфигурацию сохраняю и применяю изменения.

Написал во избежание вопросов "а ты конфигурацию сохранил ? а изменения применил ?"
5 ам794123
 
18.09.19
15:33
попробуй туже подписку для другого документа, ну и традиционно кеш почисти
6 ИУБиПовиц
 
18.09.19
15:52
на 8.3.12 в подписку у меня попадает на БП 3.
7 Cyberhawk
 
18.09.19
15:53
"Открываю форму документа, провожу нужный документ" // Видимо он не проводится
8 Вафель
 
18.09.19
16:02
(1) в таких случаях ругается что или метод не найден или передача мутабельного значения
9 ЧессМастер
 
18.09.19
16:30
(5) В подписку попадает при проведении правой кнопкой мыши. При проведении из формы не попадает. Почему ?
10 ЧессМастер
 
18.09.19
16:30
(7) Проводится
11 ЧессМастер
 
18.09.19
16:32
(7) После проведения я вижу все движения документа  по всем регистрам по которым он проводится.
Если бы не проводился этого бы не было.
12 Вафель
 
18.09.19
16:33
попробуй другой релиз 1с
13 Cyberhawk
 
18.09.19
16:33
(11) Ну поставь точку останова в модуле набора записей любого из этих регистров
14 runoff_runoff
 
18.09.19
16:36
может Отказ срабатывает раньше..
15 sqr4
 
18.09.19
16:38
да как нибудь фоном делается. А в процедуру проведения документа заходит? То что в обработчике записано делает?
16 piter3
 
18.09.19
16:39
А что там с модулем из подписки,вообще входит?
17 Cyberhawk
 
18.09.19
16:40
Вообще давно пора уже 1С реализовать в платформе из коробки возможность сформировать все движения документа в обход обработки проведения
18 Вафель
 
18.09.19
16:45
(17) так есть такая возможность. и конфы такие есть что ее юзают.
только это полный Пэ
19 ДенисЧ
 
18.09.19
16:48
(17) А что, её в новых платформах брали? О_о
20 Cyberhawk
 
18.09.19
16:51
(18) Самописные конфы наверное. В типовых-то ты никак в общем случае не повторишь логику проведения, не вызывая саму обработку проведения.
21 Вафель
 
18.09.19
16:52
(20) на послдених типа ерп уже можно
22 singlych
 
18.09.19
16:52
А ты посмотри, че там за кнопка Провести. Может это не стандартная команда документа, а какой-нибудь прикол из (18)
23 ам794123
 
18.09.19
16:54
Платформа - это framework, не понимаю о чем речь вообще
24 ЧессМастер
 
18.09.19
17:11
(13) Смотри какой фокус интересный получается.

Если запускать конфигуратор с локальной машины то отладчик не работает.

Если запускать конфигуратор на сервере 1С (на той же машине где установлен сервер 1С) то отладка работает.

Режим отладки на сервере конечно же включен.

То есть одна и та же база.

Берем Процедура ПередЗаписью()

Ставим точку останова.

При запуске конфигуратор с локальной машины то отладчик не работает.

Если запускать конфигуратор на сервере 1С (на той же машине где установлен сервер 1С) то отладка работает.

Одна и та же база но поведение разное.
25 dezss
 
18.09.19
17:25
(24) А на локальной подключилась отладка на сервере?
Может брендмауэр шалит?
26 3achem
 
18.09.19
17:25
(24) Клиент-сервер?
27 Fish
 
18.09.19
17:33
(24) Попробуй на клиенте запустить отладку, а потом дополнительно её отключить и подключить снова. Был у нас такой глюк на 13й вроде платформе.
28 Fish
 
18.09.19
17:34
+(27) В 15-й этот глюк исчез.
29 PolarBear
 
18.09.19
17:52
(10) Вот абсолютно уверены, что "проводится"? Документ изначально проведён уже?
30 eTmy
 
18.09.19
17:55
Да пади отладка на сервере не отрабатывает
31 Сияющий в темноте
 
18.09.19
23:08
документ можно записать,поставив Проведен=ИСТИНА
32 EugeniaK
 
19.09.19
05:24
Если при перепроведении движения не изменились, то они не перезаписываются.
Соответсвенно и обработчики не вызываются.
Попробуй отменить проведение, а потом провести.
33 Cyberhawk
 
19.09.19
08:59
(24) "отладка работает" // Покажи на картинке
34 Ботаник Гарден Меран
 
19.09.19
09:20
Как может не вызываться обработчик проведения при перепроведении?
35 Cyberhawk
 
19.09.19
09:48
(34) Никак. А где ты увидел что такое написано?)
36 Ботаник Гарден Меран
 
19.09.19
09:58
(35)
Как где? Вот в (32) прямо "обработчики не вызываются".
37 Cyberhawk
 
19.09.19
10:00
(36) Она про обработчики регистров
38 Ботаник Гарден Меран
 
19.09.19
10:02
(37)
Да я понял. Но написано небрежно и не по теме.
39 Cyberhawk
 
19.09.19
10:04
(38) Согласен, что отсылка в ее сообщении например к (13) гарантированно исключила бы неясности в толковании)
40 ЧессМастер
 
23.09.19
09:52
(13) "Ну поставь точку останова в модуле набора записей любого из этих регистров"

Провел эксперимент.

Модуль набора записей регистра бухгалтерии Хозрасчетные.

Процедура ПередЗаписью(Отказ, РежимЗаписи)

Ставим точку останова на первой строчке.


Открываем с локального компьютера. Тонкий клиент управляемое приложение.

Открываем документ "Начисление зарплаты". Нажимаем на форме документа кнопку провести.

Документ проводится. Отладка не отрабатывает.


Открываем на сервере 1С. Тонкий клиент управляемое приложение.

Открываем документ "Начисление зарплаты". Нажимаем на форме документа кнопку провести.

Документ проводится. Отладка тут же срабатывает.


Если бы отладка была выключена на сервере то отладка не отрабатывала бы вообще.

Ну тут другая картина.
41 ЧессМастер
 
23.09.19
09:52
Извиняюсь что на время пришлось покинуть обсуждение. В связи с увольнением начальника была сильная занятость в передаче дел.
42 Fish
 
23.09.19
09:53
(40) Пробовал (27)?
43 ЧессМастер
 
23.09.19
09:55
(27) "Попробуй на клиенте запустить отладку, а потом дополнительно её отключить и подключить снова"

Не соображу как это сделать. Перезапускать отладку ? Пробовал.
44 JeHer
 
23.09.19
09:55
(43) Выключи брандмаэур виндовый
45 Fish
 
23.09.19
09:56
(43) Не перезапустить, а из Меню конфигуратора - Отладка - > Подключение
46 JeHer
 
23.09.19
09:57
Или добавь в исключения 1С-овские файлы, если одмин не хочет вырубать антивирус с брандмауэром. По-любому они рубят
47 Fish
 
23.09.19
10:00
(46) Не, это тут ни при чём скорее всего.
48 ЧессМастер
 
23.09.19
10:01
(44) "Выключи брандмаэур виндовый"

У меня на других базах с этого же локального компа прекрасно работает отладка.
Правда на обычных формах.
49 unenu
 
23.09.19
10:06
хотим познать прелести проведения из УФ последних конфигураций?

тогда учтем, что в УФ формах типовых кнопки "Провести", "Провести и закрыть" и "Записать"
это не системные кнопки, а только похожие на системные.
По этим кнопкам выполняются соответствующие команды, обвешанные дополнительными проверками и функционалом
как на клиенте так и на сервере.
Но в подписку проведения мы все равно должны попасть, но только в том случае если чудо-команды увидят в этом смысл.
50 Cyberhawk
 
23.09.19
10:17
Еще проводки могут формироваться в другом сеансе (ФЗ).
Но все-таки ставлю на бакланистость автора)
51 Cyberhawk
 
23.09.19
10:17
Ну и переходи на ХТТП-отладку
52 Ботаник Гарден Меран
 
23.09.19
10:17
ТС давно бы уже расставил Сообщить("Точка останова ##").
53 ЧессМастер
 
23.09.19
10:22
(49) Не понятен один момент.

Ну ладно "тогда учтем, что в УФ формах типовых кнопки "Провести", "Провести и закрыть" и "Записать"
это не системные кнопки, а только похожие на системные."

Но есть набор записей Хозрасчетный. У него есть модуль набора записей. Как платформа в одном случае позволяет поймать отладку в этом наборе записей а в другом нет ? Если записать набор записей обойдя это место нельзя.
54 ЧессМастер
 
23.09.19
10:25
(50) "Но все-таки ставлю на бакланистость автора"

Могу дать подключение по тимвьюверу сам убедишься.

И тогда посмотрим кто бакланит а кто нет.
55 Fish
 
23.09.19
10:26
(54) Ты попробовал отключить/включить отладку?
56 JeHer
 
23.09.19
10:26
(54) давай
57 Cyberhawk
 
23.09.19
11:30
(54) Это и есть бакланистость) Вместо того, чтобы следовать понятным текстовым рекомендациям и выполнять роль тупого исполнителя, ты начинаешь "умничать")
58 ЧессМастер
 
07.10.19
20:57
(57) "Это и есть бакланистость)"

Не строй из себя самого умного. У тебя плохо получается.

"Вместо того, чтобы следовать понятным текстовым рекомендациям и выполнять роль тупого исполнителя, ты начинаешь "умничать")"

Я сделал все что мне советовали. Ничего не помогло. Отладка на клиенте как не работала так и не работает.

Причем тут "бакланистость" одному тебе известно.
59 palsergeich
 
07.10.19
23:25
(58) Порты в брандмауэре открой
60 palsergeich
 
07.10.19
23:26
(59) Ну или пни ответственных за это, стандартная ошибка же, когда отладка включена, а на машинеотладки нет
61 vde69
 
07.10.19
23:28
(9) проведение - это запись...

сделай подписку "при записи", внутри

где (источник.проведен и не источник.ссылка.проведен) или (режимзаписи = или режимзаписидокумента.проведение) тогда
// тут точно проведение :)
62 palsergeich
 
07.10.19
23:31
(61) Вариантов в принципе 3:
1) Фоновое проведение, это объясняет почему стандартной командой все работает, а по кнопке нет, можно проверить автоподключением фоновых.
2) Беда с портами в брандмауэре.
3) Кеш. Неоднократно были чудеса с отладкой из-за локального кеша. первое с чего начинается любое расследование чудес - очистки кеша.
63 Glavkomnn
 
08.10.19
01:42
Подписку где сделал- в конфе или в расширении?
если второе- права ей выдал?

роль Полные права не отрабатывает на добавленные в расширении объекты, если её этому не научить
64 Cyberhawk
 
08.10.19
08:57
(58) Слабенько)
65 ЧессМастер
 
08.10.19
14:30
(56) Большое спасибо за помощь !
66 ЧессМастер
 
08.10.19
14:31
(62) "2) Беда с портами в брандмауэре."

Дело в этом было.