---
title: Обработка новостей клиент
slug: zup/обработка-новостей-клиент
---


## ПоказатьКонтекстныеНовости
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура показывает список значений новостей, из которого можно открыть новость или перейти к списку новостей.
//
// Параметры:
//  ФормаВладелец          - ФормаКлиентскогоПриложения - форма, в которой нужно открыть список значений;
//  СписокЛентНовостей     - СписокЗначений, Массив из СправочникСсылка.ЛентыНовостей, Неопределено - в каких лентах новостей искать новость;
//  ИмяМетаданных          - Строка - имя метаданных, обязательная часть идентификатора новости;
//  ИмяФормы               - Строка, Неопределено - имя формы, необязательная часть идентификатора новости;
//  ИмяСобытия             - Строка, Неопределено - имя события, необязательная часть идентификатора новости;
//  ПараметрыОткрытияФормы - Структура - структура, передаваемая форме контекстных новостей с ключами:
//    * ЗаголовокФормы                - Строка - заголовок формы контекстных новостей;
//    * СкрыватьКолонкуЛентаНовостей  - Булево - Истина, если надо скрыть колонку "ЛентаНовостей";
//    * СкрыватьКолонкуПодзаголовок   - Булево - Истина, если надо скрыть колонку "Подзаголовок";
//    * СкрыватьКолонкуДатаПубликации - Булево - Истина, если надо скрыть колонку "ДатаПубликации";
//    * ПоказыватьПанельПоиска        - Булево - Истина, если надо показать группу поиска текста в новостях;
//    * ПоказыватьПанельНавигации     - Булево - Истина, если надо показать гиперссылку перехода к списку всех новостей;
//    * ИнициаторОткрытияНовости      - Строка - произвольное значение для дальнейшей обработки в переопределяемых модулях;
//    * РежимОткрытияОкна             - Строка - режим открытия окна ("Независимый", "БлокироватьОкноВладельца" (по-умолчанию),
//                                         "БлокироватьВесьИнтерфейс");
//    * СписокНовостей                - СписокЗначений - Если передан непустой список новостей, то он полностью заменяет или дополняет
//                                         список контекстных новостей (в зависимости от параметра ПропуститьЗаполнениеНовостями);
//                                         Никакого контроля списка новостей (пометка на удаление, просроченность и т.п.) не осуществляется;
//    * СортировкаСпискаНовостей      - Строка - поля сортировки. Работает только если заполнен СписокНовостей;
///   * ПропуститьЗаполнениеНовостями - Булево - если Истина, то стандартного расчета списка контекстных новостей
//                                         производиться НЕ будет - все новости будут взяты из СписокНовостей.
//
Процедура ПоказатьКонтекстныеНовости( Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПоказатьКонтекстныеНовости();
```
</details>

## ОбработкаСобытия
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// В процедуре прописываются вызовы процедур и функций, обязательные для чтения новостей.
// После обработки стандартных событий, управление передается в переопределяемый модуль.
//
// Параметры:
//  НовостьСсылка    - СправочникСсылка.Новости - Ссылка на новость;
//  Форма            - ФормаКлиентскогоПриложения - Форма-владелец, откуда вызывается обработчик;
//  СписокПараметров - СписокЗначений - произвольный список параметров.
//
Процедура ОбработкаСобытия(НовостьСсылка, Форма, СписокПараметров) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ОбработкаСобытия(НовостьСсылка, Форма, СписокПараметров) 
```
</details>

## ПоказатьНовость
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция показывает новость в отдельном окне.
//
// Параметры:
//  НовостьСсылка          - СправочникСсылка.Новости - открываемая новость;
//  ПараметрыОткрытияФормы - Структура - параметры открытия формы новости. Можно заполнять:
//    * Ключ - Ссылка на новость;
//    * РежимОткрытияОкна - Строка - "БлокироватьОкноВладельца" или любое другое значение (которое будет воспринято как "Независимое");
//    * ИнициаторОткрытияНовости - Строка - произвольное значение для дальнейшей обработки в переопределяемых модулях.
//  ФормаВладелец          - ФормаКлиентскогоПриложения - форма, из которой нужно открыть форму новости;
//  Уникальность           - Произвольный - Уникальность открываемой формы. Ложь для уникальности по-умолчанию.
//
// Возвращаемое значение:
//  ФормаКлиентскогоПриложения, Неопределено - форма с новостью.
//
Функция ПоказатьНовость( Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПоказатьНовость();
```
</details>

## ПоказатьНовости
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция показывает несколько новостей в отдельном окне.
//
// Параметры:
//  ПараметрыОткрытияФормы   - Структура - параметры открытия формы новости. Можно заполнять:
//     * РежимОткрытияОкна    - Строка - или "БлокироватьОкноВладельца", или любое другое значение (которое будет воспринято как "Независимое");
//     * Заголовок            - Строка - Заголовок формы просмотра очень важных новостей;
//     * СписокНовостей       - СписокЗначений - Список новостей (дополняет параметр "АдресМассиваНовостей").
//                              Если передан список новостей, то в нем не производится отбор по идентификатору формы или идентификатору события,
//                                а также не осуществляется никакого другого контроля (пометка на удаление, просроченность и т.п.);
//     * АдресМассиваНовостей - Строка - Адрес временного хранилища с массивом структур новостей;
//     * ИдентификаторФормы   - Строка - идентификатор формы. Имеет смысл только вместе с параметром АдресМассиваНовостей;
//     * ИдентификаторСобытия - Строка - идентификатор события. Имеет смысл только вместе с параметром АдресМассиваНовостей;
//     * ИнициаторОткрытияНовости - Строка - произвольное значение для дальнейшей обработки в переопределяемых модулях.
//  ФормаВладелец            - ФормаКлиентскогоПриложения - форма, из которой нужно открыть форму новости;
//  Уникальность             - Произвольный - Уникальность открываемой формы. Ложь для уникальности по-умолчанию.
//
// Возвращаемое значение:
//  ФормаКлиентскогоПриложения, Неопределено - форма со списком новостей.
//
Функция ПоказатьНовости( Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПоказатьНовости();
```
</details>

## ПоказатьОсновнуюФормуНовостей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция показывает основную форму новостей с возможностью позиционирования на папке.
//
// Параметры:
//  ПараметрыОткрытияФормы   - Структура - параметры открытия формы новости. Можно заполнять:
//     * АктивироватьПапку_ВариантОтбора  - Число - 0 (позиционироваться на "Все новости") или 1 (позиционироваться на выбранной ленте новостей);
//     * АктивироватьПапку_ЗначениеОтбора - Неопределено, СправочникСсылка.ЛентыНовостей - значение ленты новостей (если выбран вариант позиционирования 1).
//  ФормаВладелец            - ФормаКлиентскогоПриложения - форма, из которой нужно открыть форму новости;
//  Уникальность             - Произвольный - Уникальность открываемой формы. Ложь для уникальности по-умолчанию.
//
// Возвращаемое значение:
//  ФормаКлиентскогоПриложения, Неопределено - форма с новостью.
//
Функция ПоказатьОсновнуюФормуНовостей( Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПоказатьОсновнуюФормуНовостей();
```
</details>

## КонтекстныеНовости_ОбработкаКомандыНовости
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура обрабатывает нажатие кнопки, принадлежащей механизму контекстных новостей.
// Должна вызываться из Подключаемый_ОбработкаНовости(Команда).
// После обработки стандартных событий, управление передается в переопределяемый модуль.
//
// Параметры:
//  Форма   - ФормаКлиентскогоПриложения - форма, в которой необходимо обработать нажатие на кнопку механизма контекстных новостей;
//  Команда - КомандаФормы, Структура - вызванная команда или Структура с ключом "Имя".
//
Процедура КонтекстныеНовости_ОбработкаКомандыНовости(Форма, Команда) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.КонтекстныеНовости_ОбработкаКомандыНовости(Форма, Команда) 
```
</details>

## КонтекстныеНовости_ОбработкаОповещения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура обрабатывает оповещение, приходящее в форму через обработчик ОбработкаОповещения.
//
// Параметры:
//  Форма        - ФормаКлиентскогоПриложения - форма, в которой необходимо обработать оповещение;
//  ИмяСобытия   - Произвольный - данные обработчика оповещения;
//  Параметр     - Произвольный - данные обработчика оповещения;
//  Источник     - Произвольный - данные обработчика оповещения.
//
Процедура КонтекстныеНовости_ОбработкаОповещения( Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.КонтекстныеНовости_ОбработкаОповещения();
```
</details>

## КонтекстныеНовости_ПриОткрытии
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура вызывается при открытии формы с контекстными новостями.
//
// Параметры:
//  Форма        - ФормаКлиентскогоПриложения - форма, в которой необходимо обработать событие ПриОткрытии.
//
Процедура КонтекстныеНовости_ПриОткрытии(Форма) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.КонтекстныеНовости_ПриОткрытии(Форма) 
```
</details>

## КонтекстныеНовости_ПоказатьНовостиТребующиеПрочтенияПриОткрытии
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура вызывается из подключаемой процедуры показа контекстных новостей для отображения
//  важных и очень важных новостей при открытии формы.
//
// Параметры:
//  Форма                            - ФормаКлиентскогоПриложения - форма, в которой необходимо обработать событие ПриОткрытии;
//  ИдентификаторыСобытийПриОткрытии - Строка, Массив из Строка - идентификаторы событий, по которым необходимо отбирать контекстные новости;
//  НастройкиПолученияНовостей       - Структура, Неопределено - структура с ключами:
//   * ПолучатьКатегорииНовостей     - Булево - если Истина, то в реквизите формы будут также сохраняться категории новостей.
//                                       Это может быть полезно для реализации особенного отбора новостей,
//                                         который невозможно реализовать с помощью регистров сведений ОтборыПоЛентамНовостей*.
//
Процедура КонтекстныеНовости_ПоказатьНовостиТребующиеПрочтенияПриОткрытии( Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.КонтекстныеНовости_ПоказатьНовостиТребующиеПрочтенияПриОткрытии();
```
</details>

## КонтекстныеНовости_ПоказатьНовостиТребующиеПрочтенияПриПроизвольномСобытии
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура отбирает новости по имени формы и имени события и, в зависимости от важности, отображает их.
// Эту процедуру следует вызывать, если в форме на клиенте хранится массив всех контекстных новостей.
// Если же на клиенте хранится только адрес временного хранилища всех новостей, то будет
//  невозможно просмотреть список важных новостей.
//
// Параметры:
//  Форма         - ФормаКлиентскогоПриложения, Структура - форма-владелец, в которой должен быть определен реквизит Новости произвольного типа (со структурой) с ключами:
//   * Новости                                  - Массив из Структура - массив структур всех новостей (со всеми важностями);
//   * АдресМассиваНовостей                     - Строка - адрес во временном хранилище (если массив Новости пустой);
//   * Метаданные                               - Строка - Имя метаданных этой формы;
//   * Форма                                    - Строка - Имя формы, по которому надо отбирать новости;
//   * ПолучатьНовостиНаСервере                 - Булево - Признак того, что новости были рассчитаны на сервере (Истина) или хранятся в кэше на клиенте (Ложь);
//   * ЗаголовокФормыКонтекстныхНовостей        - Строка - заголовок формы;
//   * МассивСтруктурВажныхНовостей             - Массив из Структура - Массив важных новостей для последовательного показа. Если он пустой, то перезаполняется заново;
//  ИдентификаторыСобытий - Строка, Массив из Строка - Имя события (имена событий), по которым надо отбирать новости;
//  НастройкиПолученияНовостей   - Структура, Неопределено - структура с ключами:
//   * ПолучатьКатегорииНовостей - Булево - если Истина, то в реквизите формы будут также сохраняться категории новостей.
//                                  Это может быть полезно для реализации особенного отбора новостей,
//                                    который невозможно реализовать с помощью регистров сведений ОтборыПоЛентамНовостей*.
//
Процедура КонтекстныеНовости_ПоказатьНовостиТребующиеПрочтенияПриПроизвольномСобытии( Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.КонтекстныеНовости_ПоказатьНовостиТребующиеПрочтенияПриПроизвольномСобытии();
```
</details>

## ПанельКонтекстныхНовостей_ЭлементПанелиНовостейНажатие
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура обрабатывает нажатие на элементах управления в элементе ПанельКонтекстныхНовостей.
//
// Параметры:
//  Форма   - ФормаКлиентскогоПриложения - форма, в которой необходимо обработать событие Нажатие;
//  Элемент - ЭлементУправления - элемент управления, на котором произвели нажатие мышкой.
//
Процедура ПанельКонтекстныхНовостей_ЭлементПанелиНовостейНажатие(Форма, Элемент) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_ЭлементПанелиНовостейНажатие(Форма, Элемент) 
```
</details>

## ПанельКонтекстныхНовостей_ЭлементПанелиНовостейОбработкаНавигационнойСсылки
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура обрабатывает переход по навигационным ссылкам в элементе ПанельКонтекстныхНовостей.
//
// Параметры:
//  Форма                          - ФормаКлиентскогоПриложения - форма, в которой необходимо обработать событие Нажатие;
//  Элемент                        - ЭлементУправления - элемент управления, на котором произвели нажатие мышкой;
//  НавигационнаяСсылкаЭлемента    - Строка - навигационная ссылка;
//  СтандартнаяОбработкаПлатформой - Булево - признак выполнения стандартной обработки.
//
Процедура ПанельКонтекстныхНовостей_ЭлементПанелиНовостейОбработкаНавигационнойСсылки( Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_ЭлементПанелиНовостейОбработкаНавигационнойСсылки();
```
</details>

## РазрешенаРаботаСНовостями
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает результат - можно ли работать с новостями.
// Это результат функциональной опции "РазрешенаРаботаСНовостями"
//   И доступны нужные роли
//   И это не внешний пользователь.
//
// Возвращаемое значение:
//  Булево - ИСТИНА, если есть возможность работы с новостями.
//
Функция РазрешенаРаботаСНовостями() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.РазрешенаРаботаСНовостями() 
```
</details>

## РазрешенаРаботаСНовостямиТекущемуПользователю
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает результат - можно ли работать с новостями текущему пользователю.
// Это результат функциональной опции "РазрешенаРаботаСНовостями"
//   И доступны нужные роли
//   И это не внешний пользователь
//   И задан параметр сеанса ТекущийПользователь (т.е. мы не зашли в базу с отключенным списком пользователей).
//
// Возвращаемое значение:
//  Булево - ИСТИНА, если есть возможность работы с новостями текущему пользователю.
//
Функция РазрешенаРаботаСНовостямиТекущемуПользователю() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.РазрешенаРаботаСНовостямиТекущемуПользователю() 
```
</details>

## РазрешенаРаботаСНовостямиЧерезИнтернет
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает результат - можно ли работать с новостями через интернет.
// Это результат функциональной опции "РазрешенаРаботаСНовостямиЧерезИнтернет"
//   И доступны нужные роли
//   И это не внешний пользователь.
//
// Возвращаемое значение:
//  Булево - ИСТИНА, если разрешена работа с новостями через интернет, ЛОЖЬ, если можно работать только с локальными новостями.
//
Функция РазрешенаРаботаСНовостямиЧерезИнтернет() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.РазрешенаРаботаСНовостямиЧерезИнтернет() 
```
</details>

## ПолучитьХТМЛТекстНовостей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает ХТМЛ или простой текст новости по ссылке на новость.
//
// Параметры:
//  Новости              - СправочникСсылка.Новости, Структура, Массив из СправочникСсылка.Новости - данные новости или списка новостей;
//  ПараметрыОтображения - Структура, Неопределено - параметры для отображения новости. Список возможных параметров:
//    * ОтображатьЗаголовок - Булево.
//
// Возвращаемое значение:
//  Строка - текст новости / новостей в формате HTML.
//
Функция ПолучитьХТМЛТекстНовостей(Новости, ПараметрыОтображения = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьХТМЛТекстНовостей(Новости, ПараметрыОтображения);
```
</details>

## ПолучитьЛентуНовостейПоКоду
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает ссылку на ленту новостей по ее коду.
//
// Параметры:
//  ЛентаНовостейКод - Строка - код ленты новостей.
//
// Возвращаемое значение:
//   СправочникСсылка.ЛентыНовостей - ссылка на ленту новостей или пустая ссылка, если нет ленты новостей с таким кодом.
//
Функция ПолучитьЛентуНовостейПоКоду(ЛентаНовостейКод) Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьЛентуНовостейПоКоду(ЛентаНовостейКод) 
```
</details>

## ПодключитьРаботуСНовостямиНаКлиенте
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Подключает необходимые для подсистемы Новости обработчики.
// Вызывается при подписке на событие ИнтеграцияПодсистемБИПКлиент.ПослеНачалаРаботыСистемы.
// Также необходимо вызывать после изменения значения, возвращаемого
//  ОбработкаНовостейКлиентПереопределяемый.РазрешенаРаботаСНовостямиТекущемуПользователю(Результат).
//
Процедура ПодключитьРаботуСНовостямиНаКлиенте() Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПодключитьРаботуСНовостямиНаКлиенте() 
```
</details>

## ПросмотрНовости_ОбработкаОповещения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Обработчик оповещения в формах показа новостей.
// Как правило, используется для интерактивной обработки представления новости в случае срабатывания действий новости типа "Оповещение".
//
// Параметры:
//  ИмяСобытия - Строка - произвольные параметры;
//  Параметр   - СписокЗначений - произвольные параметры;
//  Источник   - СписокЗначений - произвольные параметры;
//  Форма      - ФормаКлиентскогоПриложения - форма, в которой произошло оповещение.
//
Процедура ПросмотрНовости_ОбработкаОповещения(ИмяСобытия, Параметр, Источник, Форма) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПросмотрНовости_ОбработкаОповещения(ИмяСобытия, Параметр, Источник, Форма) 
```
</details>

## ПерейтиПоИнтернетСсылке
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура выполняет переход по интернет ссылке (HTTP, https).
// Если эта ссылка ведет на сайт с поддержкой авторизации ВебИТС,
//  то организовать переход таким образом. чтобы пользователю не пришлось повторно вводить логин / пароль.
//
// Параметры:
//  ИнтернетСсылка - Строка - URL, по которому необходимо перейти.
//
Процедура ПерейтиПоИнтернетСсылке(ИнтернетСсылка) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПерейтиПоИнтернетСсылке(ИнтернетСсылка) 
```
</details>

## ПолучитьДействиеОткрытияФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает описание оповещения открытия файла по его имени.
// Можно пользоваться для формирования гиперссылок открытия файла в окне показа оповещений пользователю.
//
// Параметры:
//  ПолноеИмяФайла - Строка - Полное имя файла, который необходимо открыть;
//  СпособОткрытия - Строка - Способ открытия файла, возможные значения:
//   * СредствамиОС - будет вызвано НачатьЗапускПриложения, но может быть ошибка о том. что нет соответствия расширению файла;
//   * КакТекстВ1С  - файл будет открыт как текстовый документ в 1С.
//
// Возвращаемое значение:
//   ОписаниеОповещения - указатель на функцию, открывающую файл.
//
Функция ПолучитьДействиеОткрытияФайла(ПолноеИмяФайла, СпособОткрытия) Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьДействиеОткрытияФайла(ПолноеИмяФайла, СпособОткрытия) 
```
</details>

## ПриВыбореФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура открывает файл средствами операционной системы или в 1С как текстовый документ.
//
// Параметры:
//  ДополнительныеПараметры - Структура - структура с ключами:
//   * ПолноеИмяФайла - Строка - Полное имя файла, который необходимо открыть.
//   * СпособОткрытия - Строка - Способ открытия файла, возможные значения:
//     ** СредствамиОС - будет вызвано НачатьЗапускПриложения, но может быть ошибка о том. что нет соответствия расширению файла;
//     ** КакТекстВ1С  - файл будет открыт как текстовый документ в 1С.
//
Процедура ПриВыбореФайла(ДополнительныеПараметры) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПриВыбореФайла(ДополнительныеПараметры) 
```
</details>

## ПриПоказеФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура открывает файл средствами 1С как текстовый документ.
//
// Параметры:
//  ДополнительныеПараметры - Структура - структура с ключами:
//   * ПолноеИмяФайла - Строка - Полное имя файла, который необходимо открыть;
//   * ЗаголовокОкна  - Строка - Заголовок окна, в котором надо открыть текстовый файл.
//
Процедура ПриПоказеФайла(ДополнительныеПараметры) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПриПоказеФайла(ДополнительныеПараметры) 
```
</details>

## ВыполнитьИнтерактивныеДействия
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура выполняет интерактивные действия, которые невозможно выполнить на сервере - оповещения и т.п.
//
// Параметры:
//  МассивДействий - Массив.
//
Процедура ВыполнитьИнтерактивныеДействия(МассивДействий) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ВыполнитьИнтерактивныеДействия(МассивДействий) 
```
</details>

## ПолучитьКонтекстныеНовостиИзКэшаПриложения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция получает контекстные новости из кэша. В случае необходимости кэш перезаполняется.
// Она используется в том случае, если выбрана стратегия отказа от расчета списка контекстных новостей в ПриСозданииНаСервере.
//
// Параметры:
//  ИдентификаторМетаданных           - Строка - Идентификатор метаданных, должен совпадать с таким же идентификатором в самой новости;
//  ИдентификаторФормы                - Строка - Идентификатор формы, должен совпадать с таким же идентификатором в самой новости;
//  ЗаголовокФормыКонтекстныхНовостей - Строка - ;
//  ИдентификаторыСобытийПриОткрытии  - Строка, Массив - строка или массив строк идентификаторов события "ПриОткрытии".
//                                        Если передано какое-то значение, то будет подсчитано количество очень важных контекстных
//                                        новостей. И если это количество > 0, то открывающая форма инициирует
//                                        открытие формы просмотра таких новостей;
//  НастройкиПолученияНовостей        - Структура, Неопределено - структура с ключами:
//   * ПолучатьКатегорииНовостей      - Булево - если Истина, то в реквизите формы будут также сохраняться категории новостей.
//                                        Это может быть полезно для реализации особенного отбора новостей,
//                                          который невозможно реализовать с помощью регистров сведений ОтборыПоЛентамНовостей*.
//
// Возвращаемое значение:
//   Структура - структура контекстных новостей для указанной комбинации ИдентификаторМетаданных / ИдентификаторФормы.
//       Ключи см. в ОбработкаНовостей.ПолучитьКонтекстныеНовостиДляФормы.
//
Функция ПолучитьКонтекстныеНовостиИзКэшаПриложения( Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьКонтекстныеНовостиИзКэшаПриложения();
```
</details>

## УдалитьКонтекстныеНовостиИзКэшаПриложения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура удаляет контекстные новости из кэша. Потом кэш перезаполняется.
// Ее надо запускать в том случае, когда у новостей изменился признак оповещения, чтобы кэш контекстных новостей перезаполнился.
// Она используется в том случае, если выбрана стратегия отказа от расчета списка контекстных новостей в ПриСозданииНаСервере.
//
// Параметры:
//  ИдентификаторМетаданных - Строка - Идентификатор метаданных, должен совпадать с таким же идентификатором в самой новости;
//  ИдентификаторФормы      - Строка - Идентификатор формы, должен совпадать с таким же идентификатором в самой новости.
//                                     Если Неопределено, то удаляются все контекстные новости для этого ИдентификаторМетаданных.
//
Процедура УдалитьКонтекстныеНовостиИзКэшаПриложения( Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.УдалитьКонтекстныеНовостиИзКэшаПриложения();
```
</details>

## ОптимизацияКонтекстныхНовостейВКэшеПриложения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура запускает оптимизацию кэша контекстных новостей
//  (глобальной переменной ПараметрыПриложения["ИнтернетПоддержкаПользователей.Новости.КэшКонтекстныхНовостей"])).
// Оптимизация заключается в:
// 1) Если есть структуры, полученные > 1 часа назад, то удалить их;
// 2) Если количество структур Метаданные / Форма >= 50, то удалить самые старые (по времени получения), чтобы осталось 40 структур.
//
Процедура ОптимизацияКонтекстныхНовостейВКэшеПриложения() Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ОптимизацияКонтекстныхНовостейВКэшеПриложения() 
```
</details>

## ПанельКонтекстныхНовостей_Автолистание
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура регулярно оповещает открытые формы о том, что надо "перелистнуть" новость в панели контекстных новостей.
//
Процедура ПанельКонтекстныхНовостей_Автолистание() Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_Автолистание() 
```
</details>

## ПанельКонтекстныхНовостей_ВыключениеАнимированныхИконок
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура регулярно проверяет открытые формы и меняет
//  анимированную иконку "ИнформацияНовости16Анимированная" на "ИнформацияНовости16Статичная".
// Данные хранятся в ПараметрыПриложения["ИнтернетПоддержкаПользователей.Новости.АнимированныеИконкиДляПанелейКонтекстныхНовостей"].
//
Процедура ПанельКонтекстныхНовостей_ВыключениеАнимированныхИконок() Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_ВыключениеАнимированныхИконок() 
```
</details>

## ПанельКонтекстныхНовостей_ОптимизацияОбработчиков
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура регулярно проверяет открытые формы и очищает глобальные переменные
//  ПараметрыПриложения["ИнтернетПоддержкаПользователей.Новости.АвтолистаниеДляПанелейКонтекстныхНовостей"]
//  ПараметрыПриложения["ИнтернетПоддержкаПользователей.Новости.АнимированныеИконкиДляПанелейКонтекстныхНовостей"]
//  от устаревших (закрытых форм).
//
Процедура ПанельКонтекстныхНовостей_ОптимизацияОбработчиков() Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_ОптимизацияОбработчиков() 
```
</details>

## ПанельКонтекстныхНовостей_ИзменитьВидимость
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура управляет видимостью панели контекстных новостей в форме, а также сохраняет настройки (дату закрытия),
//  чтобы через некоторое время снова открыть панель.
//
// Параметры:
//  Форма     - ФормаКлиентскогоПриложения - форма, в которой необходимо изменить видимость панели контекстных новостей;
//  Видимость - Булево - новое состояние видимости.
//
Процедура ПанельКонтекстныхНовостей_ИзменитьВидимость(Форма, Видимость) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_ИзменитьВидимость(Форма, Видимость));
```
</details>

## ПанельКонтекстныхНовостей_ПараметрыОбработчиков
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает основные параметры обработчиков панели контекстных новостей.
//
// Возвращаемое значение:
//   Структура - структура с ключами:
//    * ИнтервалАвтолистанияСекунд - Число - частота автолистания, 10..999 секунд. По-умолчанию - 15;
//    * ПаузаАвтолистанияПриРучнойПеремоткеСекунд - Число - пауза перед возобновлением автолистания,
//                если пользователь вручную переключился на другую новость, 10..999 секунд. По-умолчанию - 60 секунд;
//    * ВыключениеАнимированнойИконкиСекунд - Число - время, через которое анимированная иконка
//                станет статичной, 10...999 секунд. По-умолчанию - 30 секунд.
//
Функция ПанельКонтекстныхНовостей_ПараметрыОбработчиков() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_ПараметрыОбработчиков());
```
</details>

## ПанельКонтекстныхНовостей_УправлениеГлобальнымиОбработчиками
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Подключает / отключает глобальные обработчики:
//  - автолистание;
//  - замена анимированной иконки.
//
// Параметры:
//  Форма - ФормаКлиентскогоПриложения - форма, которую надо подключить / отключить от глобальных обработчиков.
//
Процедура ПанельКонтекстныхНовостей_УправлениеГлобальнымиОбработчиками(Форма) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПанельКонтекстныхНовостей_УправлениеГлобальнымиОбработчиками(Форма));
```
</details>

## НачатьПоследовательныйПоказВажныхНовостей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Начиная с 8.3.10.2168 все важные новости просто выводятся в цикле, и сама платформа отображает их пачками по 3 штуки.
// Подробности: https://wonderland.v8.1c.ru/blog/mekhanizm-opoveshcheniy-polzovatelya-i-tsentr-opoveshcheniy/.
//
// Параметры:
//  ВажныеНовости      - Массив структур - новости с важностью "Важная", где:
//    * Новость                        - СправочникСсылка.Новости - ссылка на новость, обязательный ключ;
//    * НовостьУникальныйИдентификатор - УникальныйИдентификатор, Неопределено - УИН от ссылки на новость, НЕобязательный ключ;
//    * НавигационнаяСсылка            - Строка - навигационная ссылка на новость, обязательный ключ;
//    * НовостьНаименование            - Строка - заголовок новости, обязательный ключ;
//    * НовостьПодзаголовок            - Строка - подзаголовок новости, обязательный ключ;
//    * ОповещениеВключено             - Булево, Неопределено - Признак, что оповещение включено, НЕобязательный ключ;
//    * ИконкаНовости                  - Картинка, Неопределено - иконка новости для оповещения пользователю.
//
Процедура НачатьПоследовательныйПоказВажныхНовостей(ВажныеНовостиСВключеннымиНапоминаниями) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.НачатьПоследовательныйПоказВажныхНовостей(ВажныеНовостиСВключеннымиНапоминаниями) 
```
</details>

## ПоказатьВажнуюНовость
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура показывает важную новость. Является "оболочкой" для функции ПоказатьНовость.
//
// Параметры:
//  ПараметрыОткрытияНовости - Структура - структура с ключами:
//   * НовостьСсылка          - СправочникСсылка.Новости - открываемая новость;
//   * ПараметрыОткрытияФормы - Структура - параметры открытия формы новости. Можно заполнять:
//     ** Ключ - Ссылка на новость;
//     ** РежимОткрытияОкна - Строка - "БлокироватьОкноВладельца" или любое другое значение (которое будет воспринято как "Независимое");
//     ** ИнициаторОткрытияНовости - Строка - произвольное значение для дальнейшей обработки в переопределяемых модулях.
//   * Уникальность           - Произвольный - Уникальность открываемой формы. Ложь для уникальности по-умолчанию.
//
Процедура ПоказатьВажнуюНовость(ПараметрыОткрытияНовости) Экспорт
```

Пример вызова
```bsl
ОбработкаНовостейКлиент.ПоказатьВажнуюНовость(ПараметрыОткрытияНовости) 
```
</details>

## ПолучитьСписокВсехСобытийЖурналаРегистрации
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает массив всех возможных событий журнала регистрации для событий подсистемы.
// Нужно для формирования журнала регистрации из Обработка.ЖурналРегистрации.Форма.ЖурналРегистрации.
//
// Возвращаемое значение:
//   Массив - Массив всех возможных событий.
//
Функция ПолучитьСписокВсехСобытийЖурналаРегистрации() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьСписокВсехСобытийЖурналаРегистрации() Экспорт // АПК:559 не вызывается на сервере. // АПК:307 Список - не тип данных.);
```
</details>

## ПолучитьСписокВсехСобытийИзмененияДанныхЖурналаРегистрации
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает массив всех возможных событий изменения данных журнала регистрации для событий подсистемы.
// Нужно для формирования журнала регистрации из Обработка.ЖурналРегистрации.Форма.ЖурналРегистрации.
//
// Возвращаемое значение:
//   Массив - Массив всех возможных событий.
//
Функция ПолучитьСписокВсехСобытийИзмененияДанныхЖурналаРегистрации() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьСписокВсехСобытийИзмененияДанныхЖурналаРегистрации() Экспорт // АПК:559 не вызывается на сервере. // АПК:307 Список - не тип данных.);
```
</details>

## ПолучитьСостояниеПодсистемы
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает состояние подсистемы.
//
// Возвращаемое значение:
//   Строка - см. параметр "СостояниеПодсистемы", метод ОбработкаНовостей.УстановитьСостояниеПодсистемы().
//
Функция ПолучитьСостояниеПодсистемы() Экспорт
```

Пример вызова
```bsl
Результат = ОбработкаНовостейКлиент.ПолучитьСостояниеПодсистемы() 
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
