|
Изменение реквизита вновь созданного объекта | ☑ | ||
---|---|---|---|---|
0
Powerfool
24.01.13
✎
05:52
|
Доброго всем времени суток! Проблема: пишу на 8ке (8.2.17.143) и потребовалось мне, чтобы справочник был связан с регистром сведений (связь впринципе аналогична связи записей с документами регистраторами). На форме элемента этого справочника я завел ТП и вываливаю туда список записей этого регистра с отбором по элементу справочника. Кроме этого завел для ТП ком. панель со стандартными кнопками (добавить, копировать и т.д.) и теперь хочу, чтобы при нажатии кнопки "добавить" у меня открывалась форма регистра а в ней уже проставлялось значение этого справочника. Пробовал уже через Владельца формы регистра пролезть, но там ТП, а как форму на которой расположено ТП получить не знаю.
|
|||
1
SeraFim
24.01.13
✎
06:35
|
наоборот:
На форме, на которой расположено ТП в событии ПередНачаломДобавления - получаешь нужную форму, заполняешь всё, что нужно, показываешь. СтандартнуюОбработку - отключаешь |
|||
2
Powerfool
24.01.13
✎
07:10
|
(1)
"наоборот: На форме, на которой расположено ТП в событии ПередНачаломДобавления - получаешь нужную форму" Как получить нужную форму? В Процедуре ПередНачаломДобавления есть только два параметра "Отказ" и "Копирование", а где взять форму? |
|||
3
Рэйв
24.01.13
✎
07:12
|
(2)
Форма=РегистрыСведений.Твой.Получитьформу("ЕеИмя"); Форма.Открыть(); |
|||
4
Powerfool
24.01.13
✎
07:32
|
(3) Предложение понятно и имеет место быть. Да вот только одна беда, теперь мне везде прийдется прописывать вручную процедуру добавления и копирования (и бог знает что ещё). Я думал может быть есть способ более или менее автоматизированный? (например поймать форму или объект в памяти, создание которого я только что инициализировал и задать ему значение реквизита)
|
|||
5
Рэйв
24.01.13
✎
07:40
|
(4)Поставь для регистра форму записи какую надо и не парься.
При добавлении она автоматом откроется с заполненным влдельцем,т.к. у тебя установлен отбор |
|||
6
Powerfool
24.01.13
✎
07:42
|
(1) (3) Да и кстати фокус "СтандартнаяОбработка = Ложь;" тут не будет работать, ибо такого параметра процедура неимеет. Это нада переписывать стандартные процедуры добавления (которая выполняет при нажатии кнопки (+) ), копирования и т.д.
|
|||
7
Powerfool
24.01.13
✎
07:43
|
(5) Это работает только если в ТП с типом РегистрСведенийСписок сделать связь по регистратору. А регистратора у регистра нет. У этого регистра есть "регистраторозаменитель" в виде справочника.
|
|||
8
Рэйв
24.01.13
✎
07:51
|
(6)
Отказ=Истина Что ты как первый раз замужем... |
|||
9
Рэйв
24.01.13
✎
07:52
|
Форма=РегистрыСведений.Твой.Получитьформу("ЕеИмя");
Форма.РеквизитСправочник = Ссылка; Форма.Открыть(); |
|||
10
Powerfool
24.01.13
✎
08:03
|
(8) А вот и вправду, не выспался наверное. Кланяюсь тебе в ноги добрый человек.
Кстати если кому ещё нужно сделал так: Если Не Копирование Тогда Форма=РегистрыСведений.Твой.ПолучитьФорму("ЕеИмя"); Форма.РеквизитСправочник = Ссылка; Форма.Открыть(); Отказ = Истина; КонецЕсли; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |