Имя: Пароль:
1C
1С v8
Данные заполнения = Неопределено
0 Charm
 
29.11.14
11:40
Всем доброго времени суток! Задача: Из справочника контрагенты по кнопке в зависимости от вида контрагента должен открываться документ определенной формы.
Пишу в контрагентах
Если Объект.ЮридическоеФизическоеЛицо = ЮрЛиц() тогда
ПараметрыФормы = Новый Структура("ДанныеЗаполнения",Объект.Ссылка);
Форма =ПолучитьФорму("Документ.Анкета.Форма.ДляЮРлиц",ПараметрыФормы, ЭтотОбъект, ЭтотОбъект);
Форма.Открыть();
В документе
Если ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда ....
Но ДанныеЗаполнения = Неопределено, Почему? Что я не так делаю?
1 Адский плющ
 
29.11.14
12:10
Не ДанныеЗаполнения, а ЗначенияЗаполнения
2 RomanYS
 
29.11.14
12:10
в каком месте "документа" ты это пишешь?
3 Адский плющ
 
29.11.14
12:11
Хотя тут логичнее, имхо, основание.
4 RomanYS
 
29.11.14
12:13
+(2) почему ты ожидаешь, что параметры ФОРМЫ попадут сами собой в обработку заполнения ДОКУМЕНТА?
5 Charm
 
29.11.14
12:17
(1) Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
Причем тут значение?
(2) Процедура ОбработкаЗаполнения, документ вводится на основание Справочник.Контрагенты
(4) ПараметрыФормы = Новый Структура("ДанныеЗаполнения",Объект.Ссылка); Содержит данные со справочника, имеет тип СправочникСсылка.Контрагенты

К кому же, если использовать стандартную кнопку ввести на основание все работает.
6 Адский плющ
 
29.11.14
12:28
(5) А притом, что параметр в обработке заполнения и имя параметра формы это Х... и трамвайная ручка.
7 RomanYS
 
29.11.14
12:30
(5) на (4) ты ответил неправильно
в обработку заполнения параметр не попадет сам... даже если он называется "ДанныеЗаполнения"

Если хочешь вызвать обработку заполнения с нужным параметром, вызывай явно (где-нибудь в форме, например перед открытием):
ЭтотОбъект.Заполнить(Параметр);
8 Адский плющ
 
29.11.14
12:30
Короче, напиши тупо

ПараметрыФормы = Новый Структура("Основание",Объект.Ссылка);
Форма =ПолучитьФорму("Документ.Анкета.Форма.ДляЮРлиц",ПараметрыФормы, ЭтотОбъект, ЭтотОбъект);

А подумаешь потом.
9 Адский плющ
 
29.11.14
12:32
(4)(7) Мимо.
10 RomanYS
 
29.11.14
12:32
(5) а вот ВводНаОсновании как раз вызывает обработку заполнения, передавая основание в качестве параметра
11 RomanYS
 
29.11.14
12:34
Я бы вообще сначала создал документ, заполнил, а уже потом открывал его форму
12 Адский плющ
 
29.11.14
12:36
(12) Как и все люди, в глаза не видавшие УФ.
13 Адский плющ
 
29.11.14
12:36
(12)->(11)
14 RomanYS
 
29.11.14
12:39
(12) про УФ здесь ни слова
15 Charm
 
29.11.14
12:43
(8) Такой вариант тоже не работает, может что дельное напишешь?
(10)Как?
16 RomanYS
 
29.11.14
12:45
(15) формы обычные или УФ?
17 Charm
 
29.11.14
12:51
(16) УФ,1С:Предприятие 8.3 (8.3.5.1119)
18 Адский плющ
 
29.11.14
13:03
(15) А может быть СП почитаешь про параметры расширения объектов?
19 RomanYS
 
29.11.14
13:06
(17) тогда (8) должно работать, только что у вас в УФ "ЭтотОбъект" делает, я не понимаю
20 Адский плющ
 
29.11.14
13:23
(19) Как и все кто не видел последние версии 8.3...