К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Упр формы. получение объекта

Гость
0 - 23.01.2013 - 09:10
конфигурация НЕ типовая и стандартной подсистемы внешних обработок НЕТ

из документа открывается обработка
в форме обработки. Владелец формы - Управляемая форма самого документа

цель получить Объект документа, для возможности использовать разработанные ранее процедуры и функции

попытался так...
текОбъект = ДанныеФормыВЗначение(ВладелецФормы.Объект, Тип("ДокументОбъект.ХХХ"));
Ошибка при получении .... Свойство недоступно на сервере



Гость
1 - 23.01.2013 - 09:36
помести свои процедуры в модуль менеджера и обращайся к ним Документы.ТвойОбъект.ТвояПроцедураФункция
Гость
2 - 23.01.2013 - 09:37
или тебе нужны обработчики?
Гость
3 - 23.01.2013 - 09:44
штука такая пользователь открывает документ проводит над ним некие действия после чего запускает сервис, который обрабатывая эти данные модифицирует (НЕ ЗАМЕНЯЕТ) табличную часть, после чего принимает решение сохранять или нет

я не могу использовать ссылку. так как я не увижу данные , которые внес пользователь, те мне нужен объект если говорить про разработку в обычном виде

Все требуемые процедуры лежат в общем модуле (те по сути тоже самое /может я и не прав/, в любом случае мне в качестве параметра нужно передавать НЕ форму, а Объект)
Гость
4 - 23.01.2013 - 10:04
Так не получится. Это извращение.
Гость
5 - 23.01.2013 - 10:25
это тогда недоделка 1С....
те если открыть документ
Объект - тип данныеФормаСтруктура
Получить реквизиты в виде объекта мы можем

если берем обработку
Владелец - Управляемая форма
ВладелецФормы.Объект - тип данныеФормаСтруктура
Получить реквизиты в виде объекта мы не можем....
вот это действительно извращение... тут могу тут не могу...
Гость
6 - 23.01.2013 - 11:00
5-ktvofffka >Вот как у меня работает
&НаКлиенте
Процедура ВводВеса(Команда)
Вв = новый Структура;
Вв.Вставить("Продукция",Объект.Номенклатура);
Вв.Вставить("Характеристика",Объект.Характеристика );
Форма = ПолучитьФорму("Обработка.ВводВесаПродукции.Форма.Ф ормаУпр",Вв);
Форма.ОткрытьМодально();
Объект.ВесПродукции = Форма.Объект.ВесПродукции;
СерверПересчитатьКоличествоМатериала();
КонецПроцедуры
Гость
7 - 23.01.2013 - 20:36
5-ktvofffka > Ну так брось 1С если тебе учиться лень. Очевидно, что в архитектуре тонкого или веб-клиента изменять данные объекта может только одна форма, отображающая его данные. Ты же пытаешься поставить 1С в абсолютно неестественную для нее позу, да еще и недоумеваешь: "Почему ей не нравится, когда я ее заставляю правой ногой чесать левое ухо касаясь коленом задницы???"
Гость
8 - 23.01.2013 - 21:17
несколько раз перечитал сообщение автора, но так и не понял чего же он хочет? что за сервис запускается, от куда и зачем? При чем здесь форма и общий модуль?
В обычном приложение делал некое извращение: на форму обработки вешал документ объект, обработчики формы объекта отрабатывались и в обработке, на управляемой форме не знаю, сканает такое или нет.
Гость
9 - 24.01.2013 - 07:34
(7) как же меня бесят умники...
я не спрашиваю тривиальных вещей... я прошу подсказать решение, тк как сам разобраться не смог.

Прошу тогда объяснить мне тупому чем же отличается логика??
есть процедура
ДанныеФормыВЗначение(<Объект>, <Тип>)
Где Объект - Данные форма структура (Структура данных для моделирования данных, редактируемых в управляемой форме. Моделирует объект с набором свойств)
так чем же объясните мне отличается Объект из текущей формы от объекта из фладельца формы????
Если это "по логике" должна быть просто структура описывающая данные
Гость
10 - 24.01.2013 - 07:38
(8) В обычном приложении это не извращение это типовой прием к примеру заполнение ТЧ. В Тонком клиенте понятия объект нет. Есть некая структура описывающая форму которая и визуализируется на клиенте. Для получения данных необходимо перейти на сервер, где хранятся данные и получить их, обработать, а затем передать клиенту для визуализации... как то так
Гость
11 - 24.01.2013 - 10:06
проблему решил. Вдруг кому пригодится
сделано след образом в обработке добавляется новый реквизит типа ДокументОбъект

&НаКлиенте
Процедура Выполнить()
КопироватьДанныеФормы(ВладелецФормы.Объект, ДокОбъект);
ЗаполнениеДанных();
КопироватьДанныеФормы(Док, ВладелецФормы.Объект);
КонецПроцедуры

&НаСервере
Процедура ЗаполнениеДанных(СписокОшбок)
Об = ДанныеФормыВЗначение(Док, Тип("ДокументОбъект.ХХХ"));
.........
ЗначениеВДанныеФормы(Об, ДокОбъект)
КонецПроцедуры
Гость
12 - 24.01.2013 - 10:07
КопироватьДанныеФормы(Док, ВладелецФормы.Объект);
Об = ДанныеФормыВЗначение(Док, Тип("ДокументОбъект.ХХХ"));
очепятка
вместо "док" "ДокОбъект"
Гость
13 - 24.01.2013 - 10:11
короче итогово))) а то опять очепятку нашел

&НаКлиенте
Процедура Выполнить()
КопироватьДанныеФормы(ВладелецФормы.Объект, ДокОбъект);
ЗаполнениеДанных();
КопироватьДанныеФормы(ДокОбъект, ВладелецФормы.Объект);
КонецПроцедуры

&НаСервере
Процедура ЗаполнениеДанных()
Об = ДанныеФормыВЗначение(ДокОбъект, Тип("ДокументОбъект.ХХХ"));
.........
ЗначениеВДанныеФормы(Об, ДокОбъект)
КонецПроцедуры


К списку вопросов






Copyright ©, Все права защищены