Проект

Общее

Профиль

Дополнительные обработки » История » Версия 4

Всеволод Дорофеев, 14.10.2018 13:35

1 1 Всеволод Дорофеев
h1. Дополнительные обработки
2 1 Всеволод Дорофеев
3 3 Всеволод Дорофеев
h3. 1. Обработка заполнения данных формы без записи объекта
4 2 Всеволод Дорофеев
5 1 Всеволод Дорофеев
https://its.1c.ru/db/bsp246doc#content:31:1:issogl2_%D1%84%D0%BE%D0%BD%D0%BE%D0%B2%D0%BE%D0%B5_%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B4%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B9
6 4 Всеволод Дорофеев
7 4 Всеволод Дорофеев
h3. 2. Сохраняемые параметры дополнительной обработки
8 4 Всеволод Дорофеев
9 4 Всеволод Дорофеев
При необходимости задать параметры для дополнительной обработки можно воспользоваться реквизитом ХранилищеНастроек справочника ДополнительныеОтчетыИОбработки. Например, для заполнения документа Распределение прочих затрат необходимо получать цены по определенному, специально созданному для этих целей виду цен. Этот вид цен можно задавать с помощью сохраняемого параметра. В общем виде в реквизите ХранилищеНастроек можно сохранять произвольные параметры дополнительной обработки .(например, в виде структуры). Для доступа к реквизиту ХранилищеНастроек в команду выполнения обработки передается ссылка на связанный с ней элемент справочника ДополнительныеОтчетыИОбработки.
10 4 Всеволод Дорофеев
11 4 Всеволод Дорофеев
Пример кода для чтения параметра:
12 4 Всеволод Дорофеев
13 4 Всеволод Дорофеев
<pre>
14 4 Всеволод Дорофеев
ХранилищеНастроек = ОбщегоНазначения.ЗначениеРеквизита(ОбработкаСсылка,"ХранилищеНастроек");
15 4 Всеволод Дорофеев
НастройкиСтруктура = ХранилищеНастроек.Получить();
16 4 Всеволод Дорофеев
</pre>
17 4 Всеволод Дорофеев
18 4 Всеволод Дорофеев
для записи:
19 4 Всеволод Дорофеев
20 4 Всеволод Дорофеев
<pre>
21 4 Всеволод Дорофеев
ДополнительнаяОбработкаОбъект = Параметры.ДополнительнаяОбработкаСсылка.ПолучитьОбъект();
22 4 Всеволод Дорофеев
ДополнительнаяОбработкаОбъект.ХранилищеНастроек = НовыйХранилищеЗначения(НастройкиСтруктура);
23 4 Всеволод Дорофеев
ДополнительнаяОбработкаОбъект.Записать();
24 4 Всеволод Дорофеев
</pre>