1. user753151 06.09.19 10:59 Сейчас в теме

Программная активизация уже открытой формы

Программная активизация уже открытой формы в Документообороте 2.1.12.2 на платформе 1С:Предприятие 8.3 (8.3.15.1489)

1) Регистрируем входящий документ
2) Переключаемся на вложенный пункт меню Журнал передачи (подчиненный регистр сведений)
3) Создаём Запись журнала передачи [Записать и закрыть]


В обработке данной формы "ФормаЗаписи" ПослеЗаписи "ЖурналПередачиДокументов" прописан код, который возвращает пользователя обратно на открытый входящий документ.
В предыдущих версиях платформы работало стабильно, после перехода на 1С:Предприятие 8.3 (8.3.15.1489) вместо того чтобы переключить на уже открытый документ, открывает его же по новой.
Причем если документ не создавать с нуля, а созданный документ закрыть и снова открыть и перейти в журнал передачи и добавить запись, то обработка отработает корректно, переключится на окно открытого документа.

Что это? очередной баг сырой платформы 1С:Предприятие 8.3 (8.3.15.1489) ?
ещё один баг есть, с правами, на составном типе данных.
Как обходить не понятно, откатывать обратно версию платформы не резон, вроде бы появились новые удобные объекты

&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
      ОткрытьФорму("Справочник.ВходящиеДокументы.Форма.ФормаЭлемента", Новый Структура("Ключ", Запись.Документ));
    .......
КонецПроцедуры
Вознаграждение за ответ
Показать полностью
Ответы
Избранное Подписка Сортировка: Древо
2. 603692 1 10.09.19 15:17 Сейчас в теме
(1) Вы просто не записали документ, когда в меню Журнал передачи перешли и форме передался пустой "Ключ", т.е. не записаный пустой документ, поэтому при возврате и открывает пустой/новый/не записаный документ
3. user753151 11.09.19 04:59 Сейчас в теме
(2)записал при регистрации входящего документа и ключ не пустой, в отладке видно и при этом открывает не пустой, а как раз его же созданный просто в новом окне, что не нужно, на предыдущей платформе такого бага не было
4. 603692 1 11.09.19 18:48 Сейчас в теме
(3) это же просто проверить) если на самом деле баг платформы, то при запуске на более старой версии платформы он не проявится - вот и будет ответ на вопрос.
5. user753151 12.09.19 06:42 Сейчас в теме
(4) вопрос в том как это обойти, чтобы всё это работало на новой платформе
6. VmvLer 18.09.19 09:43 Сейчас в теме
(5) написать свой патч в расширении, отправить решение в баг-отдел, лелеять надежу, что в следующей эре исправят.

сейчас так модно работать с эффективными современными технологиями.
самое смешное и грустное, что выбора нет.
7. user753151 23.09.19 10:40 Сейчас в теме

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

Показать


Так вот, формадок.Открыта(), сразу же после создания входящего документа, всегда определяется как "Ложь".
Но если закрыть документ и снова открыть и перейти
в "Журнал передачи" и в Журнале передачи в обработке ПослеЗаписи(), формадок.Открыта() определится как "Истина".
Может тогда стоит игнорировать проверку формы на "Открыта" и сразу активизировать?
Насколько это безопасно? другой же ведь документ он не откроет, так как объект прописан точно Структура("Ключ", Запись.Документ)
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Бизнес-аналитик 1С
Санкт-Петербург
зарплата от 100 000 руб.
Полный день

Программист 1С
Нижний Новгород
зарплата от 80 000 руб. до 130 000 руб.
Полный день

Технический лидер, архитектор 1С, руководитель проектов
Санкт-Петербург
зарплата от 150 000 руб.
Полный день

Программист 1С
Москва
зарплата от 150 000 руб. до 250 000 руб.
Полный день