|
8.3. Работа с реквизитом типа ХранилищеЗначений в управляемой форме |
☑ |
0
SeiOkami
29.06.13
✎
22:46
|
Здравия всем!
Дело такое. Версия 1С 8.3.3.658. Конфигурация своя. Хочу сделать банальное, а именно: в реквизит документа (ХранилищеЗначения) помещать форматированный документ на форме. В общем, то что описано в статье
Однако, не могу обратиться в форме к реквизиту объекта. Ни на клиенте ни на сервере. А в списке реквизитов формы такая надпись:
Что я не так делаю?
|
|
1
SeiOkami
29.06.13
✎
22:47
|
Надпись: "недоступен в данных формы"
|
|
2
Cyberhawk
29.06.13
✎
23:13
|
Реквизита-то должно быть два: формы с типом "ФД" и объекта с типом "ХЗ"
|
|
3
SeiOkami
29.06.13
✎
23:15
|
(2), да, но ведь, чтобы сохранять значения ФД в документе, то мне нужно его поместить в ХЗ. А вот к ХЗ я как раз обратиться и не могу. ХЗ почему)
|
|
4
Cyberhawk
29.06.13
✎
23:22
|
Модуль формы (у объекта есть ТЧ, в которой один из реквизитов - ХЗ):
&НаКлиенте
Процедура ВложенияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
Отказ = Истина;
ДобавитьВложение();
КонецПроцедуры
&НаКлиенте
Процедура ДобавитьВложение()
Перем ВыбранноеИмя;
Перем АдресВременногоХранилища;
НовыйОбъект = Объект.Ссылка.Пустая();
Если ПоместитьФайл(АдресВременногоХранилища, "", ВыбранноеИмя, Истина) Тогда
Файл = Новый Файл(ВыбранноеИмя);
НовоеВложение = Объект.Вложения.Добавить();
НовоеВложение.Имя = Файл.Имя;
НовоеВложение.ИмяФайлаИсточника = ВыбранноеИмя;
НовоеВложение.Пиктограмма = ПиктограммаФайла(Файл);
ПоместитьФайлОбъекта(АдресВременногоХранилища,НовоеВложение.НомерСтроки-1);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПоместитьФайлОбъекта(АдресВременногоХранилища,Индекс)
ТекЗадача = РеквизитФормыВЗначение("Объект");
ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресВременногоХранилища);
ТекЗадача.Вложения[Индекс].Хранилище = Новый ХранилищеЗначения(ДвоичныеДанные);
ТекЗадача.Записать();
УдалитьИзВременногоХранилища(АдресВременногоХранилища);
ЗначениеВРеквизитФормы(ТекЗадача, "Объект");
КонецПроцедуры
|
|
5
Cyberhawk
29.06.13
✎
23:23
|
Ну т.е. все манипуляции с реквизитом объекта типа ХЗ выполнять на сервере
|
|
6
SeiOkami
29.06.13
✎
23:24
|
(5), я же уже все описал в (0)...
Не могу обратиться к реквизиту с типом ХЗ на форме. Ни на клиенте, ни на сервере
|
|
7
Cyberhawk
29.06.13
✎
23:28
|
Сравни свой код с (4) и проделай работу над ошибками. Не справишься - запости сюда свой код, в котором ты не можешь обратиться к реквизиту с типом ХЗ
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой