Добрый день!

Подскажите, как можно из УФ списка документа передать параметр в УФ документа при нажатии в форме списка кнопок Добавить, Скопировать, Редактировать? В общем при любом открытии формы объекта из списка.
---
В общем-то да, но это мне, получается, надо переопределить все возможности открытия:

ПередНачаломДобавления - поставлю Отказ, напишу свою

Выбор - сниму стандартную обработку

А вот как перехватить Изменить(F2) кто-нибудь знает?
---
Допустим, на форме определен реквизит "Список", тип "ДинамическийСписок", основная таблица "Документ.ПоступлениеТоваровУслуг".
Тогда необходимо для этого списка переопределить события "Выбор", "ПередНачаломДобавления".

Пример:

```1c
    &НаКлиенте
    Процедура Список_ОбработкаЗакрытияФормыДокумента(РезультатОбработки, ДополнительныеПараметры = Неопределено) Экспорт

    //Возможные обработки после закрытия

    КонецПроцедуры // Список_ОбработкаЗакрытияФормыДокумента()

    &НаКлиенте
    Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)

    Отказ = Истина;

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

    //Определение дополнительных параметров формы
    //...
    ПараметрыФормы.Вставить("ТестовыйПараметр", Истина);

    ОбработчикЗакрытия = Новый ОписаниеОповещения("Список_ОбработкаЗакрытияФормыДокумента", ЭтаФорма);

    ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта", ПараметрыФормы, ЭтаФорма,,,, ОбработчикЗакрытия);

    КонецПроцедуры

    &НаКлиенте
    Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;

    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("Ключ", ВыбраннаяСтрока);

    //Определение дополнительных параметров формы
    //...
    ПараметрыФормы.Вставить("ТестовыйПараметр", Истина);

    ОбработчикЗакрытия = Новый ОписаниеОповещения("Список_ОбработкаЗакрытияФормыДокумента", ЭтаФорма);

    ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта", ПараметрыФормы, ЭтаФорма,,,, ОбработчикЗакрытия);

    КонецПроцедуры
```
---
Да, допустим, я их переопределю. А как из этих процедур передать параметры?
А пример процедуры не понял к чему
---
```1c
    ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта", ПараметрыФормы, ЭтаФорма,,,, ОбработчикЗакрытия);
```

Вот тут передаются параметры в открываемую форму в примере. А в самом документе в процедуре ПриСозданииНаСервере проверять

```1c
    Если Параметры.Свойство("Тест") Тогда
    Возврат;
    КонецЕсли;
```
---
Спасибо, как открывать форму с параметрами я знаю :-) А где вызвать открытие формы, вот в чем вопрос...
---
так вот во втором посту есть пример, он не подходит? в форме списка определяете указанные процедуры и заполняете параметры там
---
В общем-то да, но это мне, получается, надо переопределить все возможности открытия:

ПередНачаломДобавления - поставлю Отказ, напишу свою

Выбор - сниму стандартную обработку

А вот как перехватить Изменить(F2) кто-нибудь знает?
---
Все, сам нашел - это же ПередНачаломИзменения
---
Можно попробовать в вызванной форме обратиться к вызывающей форме через Этаформа.ВладелецФормы. Это отработает только в клиентском коде. Например, в событии ПриОткрытии (на ПриСоздании не отработает). Ну и нужно, чтобы в форме списка был, например, экспортный метод, возвращающий нужные параметры. Тогда вызвать этот метод и получить параметры.
Насколько пригодно это решение - зависит от логики использования получаемых параметров.
---
В том то и дело, что ПриОткрытии на клиенте мне уже поздно. Мне нужно ПриСозданииНаСервере. Да, хотел обратиться к владельцу, но он на сервере не доступен
---
Всем спасибо за ответы, монеты раздал