Глобальный контекст.ОбработкаФормированияКомандВходящегоЗапросаПоделиться

События · IncomingShareRequestCommandGenerateProcessing

Возникает при формировании команд входящего запроса "Поделиться".

Синтаксис

ОбработкаФормированияКомандВходящегоЗапросаПоделиться(<ДанныеЗапросаПоделиться>, <Команды>)
Полное описание, параметры и ограничения

Глобальный контекст.ОбработкаФормированияКомандВходящегоЗапросаПоделиться (Global context.IncomingShareRequestCommandGenerateProcessing)

Глобальный контекст (Global context)

ОбработкаФормированияКомандВходящегоЗапросаПоделиться (IncomingShareRequestCommandGenerateProcessing)

Доступен, начиная с версии 8.3.24.

Синтаксис:
ОбработкаФормированияКомандВходящегоЗапросаПоделиться(<ДанныеЗапросаПоделиться>, <Команды>)
Параметры:

<ДанныеЗапросаПоделиться>
Тип: ДанныеЗапросаПоделиться.
Описывает параметры вызова обработчика.

<Команды>
Тип: ОписаниеКомандыВходящегоЗапросаПоделиться.
Значения элементов массива имеют тип ОписаниеКомандыВходящегоЗапросаПоделиться.
Значения другого типа игнорируются. Задает список команд для меню. При вызове список заполнен командами меню по умолчанию.
Если в списке после вызова обработчика останется 1 команда, она сразу будет вызвана без показа меню.
Описание:

Возникает при формировании команд входящего запроса "Поделиться".

Доступность:

Мобильный клиент, мобильное приложение (клиент).

Использование в версии:

Доступен, начиная с версии 8.3.24.

Методическая информация

Практические примеры

ОбработкаФормированияКомандВходящегоЗапросаПоделиться: своё учебное приложение

Настоящий контракт события, собственный источник данных и явное место подключения обработчика.

Где и как запускать

Модуль управляемого приложения собственной мобильной платформы; callback — свой неглобальный клиентский общий модуль.

Подготовка

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

  2. Событие вызывает платформа при указанном действии пользователя. Не проверяйте его ручным вызовом процедуры вместо назначения события.

  3. BSL, сетевые службы, сообщения и действия интерфейса при сборке HTML не выполнялись.

  4. Только собственный мобильный клиент / мобильное приложение, уже настроенное принимать входящий запрос Поделиться. Не настольный браузер. Основной код — модуль управляемого приложения.

  5. Создайте неглобальный общий клиентский модуль УчебныйЗапросПоделиться и поместите в него дополнительную экспортную процедуру. В конструктор ОписаниеОповещения передаётся ссылка на этот реальный общий модуль.

  6. Из заметки своего устройства поделитесь только собственной строкой «Книга — 3». Для файлов используйте только свой учебный файл; содержимое код не читает, наружу ничего не отправляет.

  7. Это намеренная собственная учебная политика меню: стандартные варианты заменены двумя безопасными счётчиками. Не устанавливайте её в рабочее приложение. Если оставить одну команду, платформа выполнит её без меню, поэтому в опыте их две.

Процедура ОбработкаФормированияКомандВходящегоЗапросаПоделиться(ДанныеЗапросаПоделиться, Команды)
    Команды.Очистить();
    Строки = Новый ОписаниеОповещения("ПоказатьСостав", УчебныйЗапросПоделиться, "Строки");
    Файлы = Новый ОписаниеОповещения("ПоказатьСостав", УчебныйЗапросПоделиться, "Файлы");
    Команды.Добавить(Новый ОписаниеКомандыВходящегоЗапросаПоделиться(Строки, "Число своих строк"));
    Команды.Добавить(Новый ОписаниеКомандыВходящегоЗапросаПоделиться(Файлы, "Число своих файлов"));
КонецПроцедуры
Свой общий клиентский модуль УчебныйЗапросПоделиться: настоящий callback
Процедура ПоказатьСостав(Данные, ДополнительныеПараметры) Экспорт
    Если ДополнительныеПараметры = "Строки" Тогда
        Сообщить("Получено собственных строк: " + Строка(Данные.Строки.Количество()));
    Иначе
        Сообщить("Получено собственных файлов: " + Строка(Данные.Файлы.Количество()));
    КонецЕсли;
КонецПроцедуры

Разбор по шагам

  1. Создайте указанный собственный источник / форму / общий модуль.

  2. Назначьте обработчик правильному событию.

  3. Вызовите описанное действие интерфейса и проверьте реальный параметр / результат.

Как проверить результат

  1. Команды — реальный входной массив; каждый элемент имеет точный тип ОписаниеКомандыВходящегоЗапросаПоделиться. Строка вместо описания команды была бы проигнорирована.

  2. Callback получает настоящие Данные и ДополнительныеПараметры. У данных есть Строки и Файлы, свойства Текст здесь нет. Файлы не копируются и не удаляются.

Ожидаемый результат

Событие разобрано на ограниченном собственном сценарии, без выполнения входных строк как кода.

На что обратить внимание

  1. BSL при сборке HTML не исполнялся. Не смешивайте клиентский callback с серверным модулем и не создавайте второй одноимённый обработчик в том же модуле.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.