7.7 Как открыть форму нового документа из не сохраненного

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Asttoxa, 24 май 2012.

  1. TopicStarter Overlay
    Asttoxa
    Offline

    Asttoxa Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    525
    Симпатии:
    0
    Баллы:
    26
    Идея в следующем:
    При заполнении большого количества документов была создана кнопка "Новый документ" чтобы сохранить (или нет) предыдущую форму и начать заполнять новую.
    Так вот процедурка у кнопки "Новый документ" такая:

    Код:
    Процедура ЗаписатьИсоздать()
    Перем Рез;
    Если Модифицированность()=1 Тогда
    Рез=Вопрос("Заявка не сохранена, хотите ли вы сохранить заявку перед созданием новой?","Да+Нет",30);
    Иначе
    Рез = "Нет"
    КонецЕсли;
    
    Если Рез = "Да" Тогда
    Записать();
    Форма.Закрыть(0);
    ОткрытьФорму("Документ.ЗаявкиТоргов");
    ИначеЕсли Рез="Нет" Тогда
    Форма.Закрыть(0);
    ОткрытьФорму("Документ.ЗаявкиТоргов");
    Иначе
    Возврат;
    КонецЕсли;
    КонецПроцедуры
    
    Все работает как надо если документ уже есть в базе или если жмешь кнопку "ДА", но вот если нажимаешь в новом документе (еще не записанным в базе) то он не открывает новый документ. Просто закрывает старый без сохранения и все.
  2. dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    Ибо "Форма.Закрыть(0);" отработает только после завершения процедуры, а одновременно открыть два новых документа одного вида платформа не позволит
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Проверяйте... Записан документ или нет. Выбран()
  4. TopicStarter Overlay
    Asttoxa
    Offline

    Asttoxa Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    525
    Симпатии:
    0
    Баллы:
    26
    Ну тоесть это не возможно. Понятно. Тогда оставим так :)
    Спасибо.
  5. dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    Стандартными средствами - нет, только если открытие новой формы вынести в другой модуль..
    Но можно попробовать вк FormEx.

    Код:
    FormEx = CreateObject("FormEx");
    FormEx.AssignForm(Form);
    pForm = FormEx.GetForm();
    pForm.Close(0);
    [/code1C]

Поделиться этой страницей