Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Открыть все табличные части (с закладками) в отдельной форме с возможностью редактирования
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
Constantus
Приветствую, форумчане!

8.3.6, УФ, полностью самописная

Имеется формы "Заказы". На форме имеютются несколько ТЧ на нескольких вкладках.

Возможно ли нажатием некой кнопки открыть отдельно модально форму со всеми этими ТЧ, вкладками, чтобы можно было редактировать, потом просто закрыть с сохранением всех изменений?

Нужна из-за того, что из-за большого объема данных в шапке и подвале, табличные данные слишком узкие и не видно все данные в ТЧ

Может лучше так задать вопрос.

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

Как правильно вызвать эту форму, чтобы данные, измененные в новой форме автоматически сохранялись в основной?
Bernet
Constantus @ Сегодня, 16:30 необходимо зарегистрироваться для просмотра ссылки ,
В новой форме после закрытия делаете структуру с данными этой формы и передаете структуру параметром в функцию "Оповестить" (старая форма должна быть установлена Владельцем новой). В старой форме делаете обработчик события ОбработкаОповещения и там считываете эти реквизиты из структуры в свой основной объект
takefive
Constantus @ Сегодня, 16:30 необходимо зарегистрироваться для просмотра ссылки ,

Процедура ПриОткрытии(Отказ)
    КопироватьДанныеФормы(ЭтаФорма.ВладелецФормы.Объект,ЭтаФорма.Объект);
КонецПроцедуры


Процедура ПриЗакрытии(ЗавершениеРаботы)
    КопироватьДанныеФормы(ЭтаФорма.Объект, ЭтаФорма.ВладелецФормы.Объект);
КонецПроцедуры


Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
    ЭтаФорма.Модифицированность = Ложь;//чтобы не было вопросов...
КонецПроцедуры


владельца не забыть передать...

Процедура ОткрытьДубльФорму(Команда)
    ОткрытьФорму("имя формы",,ЭтаФорма);
КонецПроцедуры
Constantus
takefive @ Вчера, 20:31 необходимо зарегистрироваться для просмотра ссылки ,


А где все эти процедуры размещать? В менеджере, модуле формы, в модуле объекта, на клиенте, на сервере?
takefive
модуль формы на клиенте. Это же события. Конфигуратор сам все создает. Если будете копировать - помните о привязке к событиям
Constantus
Я тут увидел, что у поля формы списка есть событие "Нажатие".

Создал дублирующее поле, на него повесил код:

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


Не сработало... Надеялся, что откроет дублирующую форму (создал форму копированием и просто скрыл сворачиваемостью) Что не так? Или это событие реагирует на что-то другое?
Vidocq05
Constantus @ Сегодня, 13:38 необходимо зарегистрироваться для просмотра ссылки ,
Если конфигурация самописная, то как вариант, изменить форму. Сделать чтобы форма состояла полностью из вкладок. Первая вкладка это шапка документа, вторая и т.д. это табличные части документа.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.