0
k_aleks80
16.03.15
✎
11:25
|
Следующая ситуация: имеется внешняя обработка с некоторым набором реквизитов (СписокСтатей1, ..., СписокСтатей9, ВидРасчета - тип: СписокЗначений). У обработки есть две управляемые формы - "Форма" и "ФормаНастройки". Из "Формы" вызывается "ФормаНастройки", затем по кнопке "ВосстановитьПоУмолчанию" происходит заполнение реквизитов формы:
[code]
&НаСервере
Процедура ВосстановитьНаСервере()
ТекОбработка = РеквизитФормыВЗначение("ОбработкаОбъект");
ТекОбработка.СписокСтатей1.Очистить(); //Оплата за сверхурочные часы, включая НДФЛ 13%:
ТекОбработка.СписокСтатей1.Добавить(ПланыВидовРасчета.Начисления.НайтиПоКоду("СВХУР"));
ТекОбработка.СписокСтатей1.Добавить(ПланыВидовРасчета.Начисления.НайтиПоКоду("ПРАЗД"));
ТекОбработка.СписокСтатей1.Добавить(ПланыВидовРасчета.Начисления.НайтиПоКоду("ПРДОП"));
// и т.д.
ТекОбработка.ВидРасчета.Очистить();
ТекОбработка.ВидРасчета.Добавить(ПланыВидовРасчета.Начисления.НайтиПоКоду("БЛН"));
ЗначениеВРеквизитФормы(ТекОбработка, "ОбработкаОбъект");
КонецПроцедуры
&НаКлиенте
Процедура Восстановить(Команда)
ВосстановитьНаСервере();
КонецПроцедуры [/code]
Все ясно и понятно. Теперь, при вызове "Формы" и нажатии кнопки "Заполнить" должно выполняться заполнение данных на этой форме, с выполнением запроса к БД. В качестве параметра в запросе используется реквизит обработки ВидРасчета, но он пустой!
Как я понимаю, проблема при заполнении реквизитов обработки в "ФормеНастройки". Т.е. если бы это был внутренний прикладной объект БД (Справочник, Документ), тогда перед обновлением реквизита на форме (ЗначениеВРеквизитФормы) достаточно было бы записать объект и тогда на "Форме" значение реквизита ВидРасчета было бы с данными. Однако в данном случае у объекта ВнешняяОбработка метода Записать() нет. Как мне заполнить реквизиты обработки, чтобы я мог использовать их в запросе, в другой форме?
|
|
2
k_aleks80
16.03.15
✎
12:13
|
А не слишком ли это круто? Получается из модуля формы, например, "Форма1" я не могу программно заполнить реквизиты обработки, чтобы значения этих реквизитов (заполненные в предыдущей форме) получить в модуле 2-й формы ("Форма2")?
|
|
3
DexterMorgan
16.03.15
✎
12:16
|
(2) можешь, все зависит от ключа:
ХранилищеНастроекМенеджер.<Имя хранилища> (SettingsStorageManager.<Имя хранилища>)
Сохранить (Save)
Синтаксис:
Сохранить(<КлючОбъекта>, <КлючНастроек>, <Настройки>, <ОписаниеНастроек>, <ИмяПользователя>)
Параметры:
<КлючОбъекта> (обязательный)
Тип: Произвольный.
Ключ объекта настройки.
<КлючНастроек> (необязательный)
Тип: Строка.
Ключ сохраняемых настроек.
<Настройки> (обязательный)
Тип: Произвольный.
Содержит настройки, которые нужно сохранить в хранилище.
<ОписаниеНастроек> (необязательный)
Тип: ОписаниеНастроек.
Описание настроек.
<ИмяПользователя> (необязательный)
Тип: Строка.
Имя пользователя, настройки которого сохраняются.
Если не указан, то сохраняются настройки текущего пользователя.
Описание:
Сохраняет настройку в хранилище.
Вызывает обработчик ОбработкаСохранения.
Доступность:
Сервер, толстый клиент, внешнее соединение.
|
|