Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 сен 2024, 08:29

Получить Значение реквизитов справочника (упр.форма)

Автор Vasya Povar, 24 окт 2016, 09:53

0 Пользователей и 1 гость просматривают эту тему.

Vasya Povar

На форме обработки есть обьект с типом докуммент Ссылка. Мне необходимо в модуле формы получить значение реквизитов формы подчиненного справочника одного из реквизитов этого документа.
Обьект.ВыданнаяНН.Организация ----это справочник
Из него нужно взять на форме значения ЮрАдресОрганизации

Запись.ЗаписатьНачалоЭлемента("HLOCSEL");
             Форма = Объект.НалоговыйДокумент.Организация.ПолучитьФорму("ФормаОрганизации");
Адресс = Форма.ЭлементыФормы.ЮрАдресОрганизации;
Запись.ЗаписатьТекст(Строка(Адресс));
Запись.ЗаписатьКонецЭлемента();


Интерактивные операции недоступны

На сервере я так понимаю нельзя получить форму. Просто как тогда по-другому достучатся к реквизиту.

alex0402

Спасибо за Сказать спасибо

ilyay

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

Vasya Povar

Цитата: ilyay от 24 окт 2016, 10:51
Если поле есть в базе, тяните его запросом. Однако, если оно хитрым образом формируется и попадает в реквизит формы, тогда на клиенте получаете форму нужного объекта и достаете из нее значение реквизита.
Вот именно, что реквизит сделан на самой форме
Можно пример как на клиенте вытащить и как потом на сервере обратится
Добавлено: 24 окт 2016, 11:05


Цитата: alex0402 от 24 окт 2016, 10:30
значение хранится не на форме, а в базе.
В базе нету этого реквизита, он на форме создан.
Добавлено: 24 окт 2016, 12:30


Помогите плз!

alex0402

Цитата: Vasya Povar от 24 окт 2016, 11:01В базе нету этого реквизита, он на форме создан.

тогда в модуле формы есть алгоритм вычисления этого реквизита, нужно повторить его на сервере в 99% случаев помогает!
Спасибо за Сказать спасибо

ilyay

Примерно такой код на клиенте:

ПараметрыФормы = Новый Структура("Ключ", Объект.НалоговыйДокумент.Организация);
ФормаПодчиненногоОбъекта = ПолучитьФорму("Справочник.Организации.Форма.ФормаОрганизации", ПараметрыФормы);
Адрес  = ФормаПодчиненногоОбъекта.ЮрАдресОрганизации; // это реквизит формы. В форме смотрите на какой реквизит ссылка в ПутьКДанным у визуального элемента.

Добавлено: 24 окт 2016, 14:29


Но вообще так стоит делать в крайнем случае, обычно когда только в форме есть функция, которая работает с данными, существующими только на форме.

Vasya Povar

Цитата: ilyay от 24 окт 2016, 14:28
Примерно такой код на клиенте:

ПараметрыФормы = Новый Структура("Ключ", Объект.НалоговыйДокумент.Организация);
ФормаПодчиненногоОбъекта = ПолучитьФорму("Справочник.Организации.Форма.ФормаОрганизации", ПараметрыФормы);
Адрес  = ФормаПодчиненногоОбъекта.ЮрАдресОрганизации; // это реквизит формы. В форме смотрите на какой реквизит ссылка в ПутьКДанным у визуального элемента.

Добавлено: 24 окт 2016, 14:29


Но вообще так стоит делать в крайнем случае, обычно когда только в форме есть функция, которая работает с данными, существующими только на форме.

Поле объекта не обнаружено (Организация)
   ПараметрыФормы = Новый Структура("Ключ", Объект.НалоговыйДокумент.Организация);

На клиенте не можно обратится к реквизитам докуммента.
Добавлено: 24 окт 2016, 14:47



Добавлено: 24 окт 2016, 14:48


Цитата: alex0402 от 24 окт 2016, 13:57
Цитата: Vasya Povar от 24 окт 2016, 11:01В базе нету этого реквизита, он на форме создан.

тогда в модуле формы есть алгоритм вычисления этого реквизита, нужно повторить его на сервере в 99% случаев помогает!

Там большой алгоритм. Мне проще уже готовое значение вытащить. Верняк есть способ как

ilyay


Цитировать
ПараметрыФормы = Новый Структура("Ключ", ПолучитьОрганизацию(Объект.НалоговыйДокумент));
...


&НаСервереБезКонтекста
Функция ПолучитьОрганизацию(Док)
    Возврат Док.Организация;
КонецФункции

Vasya Povar



Спасибо!! По отладке вижу что значение получил. Теперь дело теехники!!! Спасибо еше раз! Вроде просто, но не получалось)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск