Имя: Пароль:
1C
1С v8
ЗаписатьСвойствоУОбъекта
0 Kurbash
 
26.12.14
12:14
всем привет. есть ОМ УправлениеСвойствами , там процедура ЗаписатьСвойстваУОбъекта. Хочу вызвать ее из дополнительной формы. Пишу так:

    ТаблицаДопРеквизитов = Новый ТаблицаЗначений;
    ТаблицаДопРеквизитов.Колонки.Добавить("Свойство", Новый ОписаниеТипов("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения"));
    ТаблицаДопРеквизитов.Колонки.Добавить("Значение");
    
    НС=ТаблицаДопРеквизитов.Добавить();
    НС.Свойство=ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Заголовок","Мой реквизит");
    НС.Значение=КодДляПланирования;    
    УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Объект,ТаблицаДопРеквизитов);

ругается что Объект не обнаружен, прбовал уже и ЭтаФОрма.Объект и ЭтотОбъект-не получается...где ошибся?
1 Бригада бронепоезда
 
26.12.14
12:16
УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Объект.ссылка,ТаблицаДопРеквизитов);
2 Kurbash
 
26.12.14
12:18
уже пробовал

{Справочник.Номенклатура.Форма.ФормаКонфигуратораКодаДляПланирования.Форма(40,48)}: Переменная не определена (Объект)
    УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(<<?>>Объект.Ссылка,ТаблицаДопРеквизитов); (Проверка: Сервер)
3 Бригада бронепоезда
 
26.12.14
12:20
(2) если форма обычная, пиши просто
правлениеСвойствами.ЗаписатьСвойстваУОбъекта(Ссылка,ТаблицаДопРеквизитов);
4 DexterMorgan
 
26.12.14
12:20
Где весь свой код пишешь? в какой переменной ссылка на объект свойства которого хочешь записать?
5 Шапокляк
 
26.12.14
12:21
А в этой дополнительной форме объект, которому надо свойства записать, в каком виде участвует? Вы его в поле ввода указываете или что?
6 DexterMorgan
 
26.12.14
12:22
(5) да нет там объекта походу, произвольная форма
7 vicof
 
26.12.14
12:24
(0) Автор, ты какую метлу предпочитаешь?
8 DexterMorgan
 
26.12.14
12:24
(7) Самоутверждаешься?)
9 Kurbash
 
26.12.14
12:25
(6)да, форма произвольная, поэтому не знгаю как на объект выйти
10 DexterMorgan
 
26.12.14
12:27
(9) да чего объект? в какой переменной ссылка свойство которого хочешь записать?
11 vicof
 
26.12.14
12:27
(8) о, да))))
(9) В произвольной форме нет "объекта". Ты можешь рискнуть положить его туда сам, но думаю, это надолго.
12 DexterMorgan
 
26.12.14
12:28
(9) у тебя форма произвольная, нет у нее основного реквизита, андестенд?
13 Kurbash
 
26.12.14
12:29
(12) да это ясно, как мне объект получить?
14 DexterMorgan
 
26.12.14
12:30
ТС я хочу записать свойство у объекта, правда не знаю у какого объекта, как мне получить объект?
15 vicof
 
26.12.14
12:30
(13) Из ссылки на объект. Из кода. Да хоть из рукава достать.
16 DexterMorgan
 
26.12.14
12:30
(13) ОБЪЕКТ ЧЕГО?!
17 Kurbash
 
26.12.14
12:31
объект элемента справочника, у которого я завел эту произвольную форму
18 Шапокляк
 
26.12.14
12:32
Добавь на свою произвольную форму поле ввода и ручками забей туда нужную ссылку. А потом нажми кнопочку со своей процедурой и для выбранной тобой ссылки запишется что ты хочешь.
19 Kurbash
 
26.12.14
12:32
я ее вызываю из формы элеиментьа...через параметры если только объект передать, в модуле произволной формы в переменную общую и дальше...
20 DexterMorgan
 
26.12.14
12:33
(17) без реквизита на форме никак
21 DexterMorgan
 
26.12.14
12:34
(19) вооот, передавай ссылку через параметры, записывай в реквизит формы а ее уже передавай в ЗаписатьСвойстваУОбъекта
22 Kurbash
 
26.12.14
12:34
(21) не через ..опу получается?
23 DexterMorgan
 
26.12.14
12:36
(22) Да нет, с чего через ж0пу то
24 Бригада бронепоезда
 
26.12.14
12:36
пля, да

объект = Неопределено;


ВвестиЗначение(объект, "Введите объект")
25 DexterMorgan
 
26.12.14
12:37
(24) Да не надо ему вводить эту ссылку, она есть у формы владельца
26 Kurbash
 
26.12.14
12:42
блин, не взлетело

{ОбщийМодуль.УправлениеСвойствамиСлужебный.Модуль(153)}: Значение не является значением объектного типа (Ссылка)
        ТипСсылки = ТипЗнч(ВладелецСвойств.Ссылка)
27 Бригада бронепоезда
 
26.12.14
12:43
какой-то вынос мозга.
как открываешь форму?
28 Kurbash
 
26.12.14
12:44
сек, сейчас отладчиком пройдусь
29 Kurbash
 
26.12.14
12:48
при открытии все видно, параметром передается

    ПараметрыОткрытия=Новый структура;

    ПараметрыОткрытия.Вставить("нашОбъект",Объект.Ссылка);
    ОткрытьФорму("Справочник.Номенклатура.Форма.МояФорма",ПараметрыОткрытия,ЭтаФОрма);

на открываемой форме

Перем НашОбъект;

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
НашОбъект=Параметры.НашОбъект;
КонецПроцедуры

УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(НашОбъект,ТаблицаДопРеквизитов);
30 Kurbash
 
26.12.14
12:48
а в саму функцию НашОбъект пустое значение приходит
31 DexterMorgan
 
26.12.14
12:54
(30) не ключевые параметры существуют только при создании на сервере, говорю же записывай в реквизит формы или в переменную
32 DexterMorgan
 
26.12.14
12:55
(30) а все правильно же, НашОбъект - это реквизит формы?
33 Kurbash
 
26.12.14
12:56
так я в переменную и пишу
Перем НашОбъект;
34 Kurbash
 
26.12.14
12:58
с реквизитом сканало
35 DexterMorgan
 
26.12.14
13:20
Ваще странно, ЗаписатьСвойстваУОбъекта ты же с сервера вызываешь? И переменная объявлена с неявной директивой НаСервере, должна заполняться
Основная теорема систематики: Новые системы плодят новые проблемы.