Часто задаваемые вопросы
Все темы Напишите письмо Закрыть
?
Круглосуточная поддержка8 (800) 333-72-27
× Логин или пароль введены неправильно. Попробуйте еще раз.

Требования к дополнительным отчетам и обработкам

В настоящей статье приведены требования, предъявляемые к дополнительным отчетам и обработкам, которые должны работать в модели сервиса.

1. В сервисе 1cfresh.com cоблюдение требований, описанных в этой статье, проверяется сотрудниками фирмы «1С» при аудите, который дополнительные отчеты и обработки должны успешно пройти для того, чтобы быть допущенными к использованию в сервисе.

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

Содержание

1. Общие требования

2. Справочная информация о дополнительном отчете или обработке

3. Использование безопасного режима

4. Использование форм

5. Требования для проведения аудита

6. Требования к ресурсоемкости

7. Требования к работоспособности

8. Требования к передаче данных за пределы сервиса

9. Юридические требования

10. Требования к тестированию

11. Методические рекомендации

11.1. Примеры дополнительных отчетов и обработок

11.2. Рекомендации по разработке

11.3. Имена метаданных дополнительного отчета или обработки

11.4. О копировании кода из типовой конфигурации

11.5. Заполнение справочной информации

11.6. Работа с базой данных

11.7. Работа в веб-клиенте

11.8. О безопасности данных пользователя

1. Общие требования

  1. Дополнительный отчет или обработка создаются на локальном компьютере разработчика с помощью конфигуратора «1С:Предприятие 8» как внешние отчеты и обработки и сохраняются в файл. Стандартное расширение имени этого файла:

    • epf — для дополнительных обработок;
    • erf — для дополнительных отчетов.
  2. Дополнительный отчет или обработка, предназначенные для работы в модели сервиса по технологии 1сFresh должны быть разработаны в соответствии с требованиями подсистемы ДополнительныеОтчетыИОбработки библиотеки стандартных подсистем (БСП). Подробно с этими требованиями можно ознакомиться здесь и здесь.
  3. Для дополнительного отчета или обработки должны соблюдаться стандарты и методики разработки конфигураций для технологической платформы «1С:Предприятие 8», доступные по ссылке.

2. Справочная информация о дополнительном отчете или обработке

  1. Обязательно должна быть заполнена справочная информация («Справка») по дополнительному отчету или обработке: назначение, набор реквизитов, порядок заполнения и использования и т. п. Эта информация нужна как для пользователя, так и для аудитора — она является проектным документом для аудитора, с нее он начинает работу над аудитом.
  2. Если дополнительный отчет или обработка предназначены для использования только в тонком клиенте, то в справочной информации о дополнительном отчете или обработке должно быть явно указано это ограничение.

3. Использование безопасного режима

  1. Дополнительный отчет/обработка должны быть полностью работоспособны при исполнении в безопасном режиме. Для работоспособности дополнительного отчета или обработки в безопасном режиме необходимо установить в функции СведенияОВнешнейОбработке() модуля объекта дополнительного отчета или обработки для параметра ПараметрыРегистрации.БезопасныйРежим значение Истина.
  2. Допускается использование расширения безопасного режима библиотеки стандартных подсистем (возможность работать с файлами, с ресурсами сети Интернет и т.д.) через специализированный программный интерфейс с регистрацией разрешений, необходимых дополнительному отчету/обработке. Подробнее см. раздел «Расширения безопасного режима» в документации к версии 2.1.3 библиотеки стандартных подсистем (ссылка).
  3. При использовании расширения безопасного режима не допускается выполнение кода сторонними, т.е. не входящими в состав конфигурации, средствами. В частности, любое использование COM-объектов, если от них невозможно отказаться, следует отдельно согласовать с администрацией сервиса.
  4. Допускается использовать только внешние компоненты, входящие в виде макетов в состав конфигурации, для которой разработан дополнительный отчет/обработка.

4. Использование форм

  1. Если дополнительный отчет или обработка содержит формы, разработчик должен обеспечить их работоспособность в веб-клиенте под всеми веб-браузерами, которые поддерживаются технологической платформой «1С:Предприятие 8».

    Исключением могут быть дополнительные отчеты или обработки, предназначенные только для использования в тонком клиенте.

  2. Дополнительный отчет или обработка не должны использовать модальные формы.
  3. Дополнительный отчет или обработка не должны использовать синхронные клиентские вызовы.

5. Требования для проведения аудита

  1. Не допускается использование каких-либо средств, затрудняющих или делающих невозможным анализ исходных текстов модулей дополнительного отчета или обработки. В частности, не допускается:

    • поставлять модули без исходных текстов или с установленным паролем на модуль;
    • использовать средства запутывания (обфускации) исходных текстов.

6. Требования к ресурсоемкости

  1. Дополнительный отчет/обработка не должны приводить к чрезмерной нагрузке на компоненты сервиса или клиентское приложение.

7. Требования к работоспособности

  1. Дополнительный отчет или обработка не должны нарушать корректную работу приложения, в котором они установлены.
  2. Все длительные операции в дополнительном отчете или обработке должны использовать механизм длительных операций из БСП (при длительности 10 секунд и более).
  3. Если дополнительный отчет или обработка предназначены только для использования в тонком клиенте, то при запуске в веб-клиенте они должны корректно уведомлять пользователя об этом ограничении, а не завершаться с ошибками.

8. Требования к передаче данных за пределы сервиса

  1. Если в дополнительном отчете или обработке выполняется передача любых данных за пределы сервиса, эти операции должны подтверждаться пользователем.
  2. Если на этапе разработки дополнительного отчета или обработки существует возможность определить ресурсы сети Интернет, к которым будет выполняться обращение, необходимо реализовать запрос разрешений в программном интерфейсе дополнительного отчета и обработки. Такой запрос должен дать возможность пользователю еще перед установкой отчета или обработки ознакомиться, к каким ресурсам будет выполняться передача данных этим отчетом или обработкой.
  3. Если определить ресурсы сети Интернет, к которым будет выполняться обращение, невозможно, то:

    1. для дополнительных отчетов или обработок, содержащих формы, перед выполнением операции следует запрашивать разрешение у пользователя (возможно, с сохранением полученного ответа). При запросе разрешения следует явно указывать, к каким ресурсам сети Интернет будет осуществляться обращение;
    2. для дополнительных отчетов/обработок, не содержащих форм (например, предназначенных для использования в качестве регламентного задания), рекомендуется:

      • по умолчанию не выполнять операцию в коде серверной команды;
      • создавать дополнительную команду с типом вызова Открытие формы, в которой реализовывать запрос подтверждения;
      • начинать выполнение операции в серверном коде только после подтверждения пользователем выполнений операций.

9. Юридические требования

Дополнительный отчет или обработка не должны содержать:

  1. Кода, который может повлечь порчу данных или дестабилизировать работоспособность сервиса.
  2. Кода и данных, которые могут нарушать права третьих лиц, в том числе их авторское право.
  3. Охраняемые законом сведения, в том числе коммерческую тайну или персональные данные третьих лиц.

10. Требования к тестированию

После того, как дополнительный отчет или обработка разработаны, разработчик должен их проверить. Для проверки необходимо:

  1. Развернуть сервер «1С:Предприятия 8» той же версии, которая используется в сервисе.
  2. Развернуть клиент-серверную информационную базу той конфигурации, для которой предназначен дополнительный отчет или обработка, и той версии конфигурации, которая используется в сервисе.
  3. Выполнить веб-публикацию этой информационной базы (кроме случая, когда дополнительный отчет или обработка предназначены только для работы в тонком клиенте).
  4. Для каждого профиля пользователя, под которым в модели сервиса будет выполняться дополнительный отчет или обработка, необходимо создать в информационной базе пользователя с таким же набором ролей, но без роли АдминистраторСистемы (эта роль при работе в модели сервиса у обычных, т. е. разделенных, пользователей недопустима).
  5. Запускать дополнительный отчет или обработку в тонком клиенте и в веб-клиенте (если дополнительный отчет или обработка содержит формы, кроме случая, когда дополнительный отчет или обработка предназначены только для работы в тонком клиенте), под созданными в п. 4 пользователями. Для запуска следует испольовать не главное меню (команду ФайлОткрыть), а интерфейс дополнительных отчетов и обработок БСП.

Для каждого пользователя, созданного в п. 4, необходимо проверить:

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

11. Методические рекомендации

11.1. Примеры дополнительных отчетов и обработок

Примеры дополнительных отчетов и обработок можно получить:

  1. В статье по ссылке.
  2. В демонстрационной информационной базе БСП:

    • открыв ее в режиме 1С:Предприятие — в справочнике Дополнительные отчеты и обработки;
    • открыв ее Конфигуратором — в ветке конфигурации Общие / Общие макеты (например, _ДемоЗаполнениеКонтрагентов, _ДемоОтчетПоСчетамНаОплатуГлобальный и др.

При необходимости, вы можете сохранить эти примеры в файлы и разрабатывать дополнительные отчеты и обработки на их основе.

11.2. Рекомендации по разработке

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

    • ту же версию платформы «1С:Предприятие 8», которая используется в сервисе;
    • ту же версию конфигурации прикладного решения, для которого разрабатывается дополнительный отчет или обработка, которая используется в сервисе;
    • библиотеку стандартных подсистем (БСП) той версии, которая внедрена в испольуемую версию конфигурации прикладного решения, или более новую. Версии БСП можно скачать по ссылке.
  2. Используйте программный интерфейс БСП и прикладных конфигураций. При этом вам не придется переписывать код дополнительного отчета или обработки каждый раз после обновления типовых конфигураций.
  3. Если дополнительный отчет или обработка содержит формы, «выдерживайте» их в стиле типовой конфигурации. Например, если в конфигурации принято команду «Записать и закрыть» располагать в верхней части формы, не размещайте ее в нижней части формы дополнительного отчета или обработки.
  4. В дополнительном отчете или обработке не должно быть неиспользуемых элементов (программного кода, макетов, форм).
  5. Не «перегружайте» дополнительный отчет или обработку. По возможности, придерживайтесь минимализма: чем больше объектов и кода, тем больше вероятность ошибок.
  6. Соблюдайте стандарты разработки (см. по ссылке).

11.3. Имена метаданных дополнительного отчета или обработки

  1. При разработке дополнительных отчетов и обработок для модели сервиса следует учитывать что имя метаданных дополнительного отчета и обработки может быть произвольным, а соответственно и полные имена всех форм дополнительного отчета и обработки.
  2. Получить имя объекта метаданных можно на сервере методом РеквизитФормыВЗначение(ИмяОсновногоРеквизита).Метаданные().ПолноеИмя()
  3. Если при работе в модели сервиса при открытии дочерней формы дополнительного отчета или обработки возникает ошибка Неизвестное имя формы, то это скорее всего связано с неправильным использованием имен форм в дополнительном отчете или обработке.

11.4. О копировании кода из типовой конфигурации

  1. Если в типовой конфигурации есть готовая функция, которую можно вызвать, копировать ее в дополнительный отчет или обработку не нужно.
  2. Если код, который есть в типовой конфигурации, подходит не полностью, очень осмотрительно подходите к вопросу копирования существующего кода:

    • при обнаружении и исправлении ошибки в скопированном коде эта ошибка у пользователей дополнительного отчета или обработки не будет исправлена. В этом случае ответственность за своевременное исправление ошибок для пользователей вы берете на себя;
    • по мере развития конфигурации ранее скопированный код может испортить данные пользователей.

11.5. Заполнение справочной информации

  1. Следует ясно и понятно указывать справочную информацию о дополнительном отчете или обработке. Это необходимо:

    • для пользователя — чтобы понять, как следует использовать дополнительный отчет или обработку;
    • для аудитора — эта информация является своеобразным «проектным документом», с которого он начинает аудит дополнительного отчета или обработки.

11.6. Работа с базой данных

  1. При связанном изменении нескольких элементов данных, которое должно происходить атомарно, используйте транзакции.
  2. При изменении данных, которые могут редактироваться пользователями параллельно с выполнением дополнительного отчета или обработки, устанавливайте объектные блокировки.
  3. Обязательно уделяйте внимание оптимальности запросов: учитывайте, что, в отличие от локального режима, информационная база в сервисе используется большим количеством пользователей. Подробнее об оптимизации запросов см. в статье ИТС по ссылке.

11.7. Работа в веб-клиенте

  1. Если действия на сервере могут выполняться продолжительное время, используйте механизм длительных операций БСП. В противном случае приложение может закрыться по ошибке таймаута веб-сервера.
  2. Если дополнительный отчет или обработка могут вызываться при работе в веб-клиенте, то все ключевые возможности дополнительного отчета или обработки должны быть доступны пользователям без использования расширения работы с файлами.

11.8. О безопасности данных пользователя

  1. Не предоставляйте конечному пользователю такие обработки, с помощью которых он сможет испортить данные в своем приложении. Примеры:

    • универсальные «перенумераторы» и «перепрефиксаторы»;
    • поиск и замена значений;
    • универсальные редакторы значений реквизита;
    • удаление помеченных объектов без контроля ссылочной целостности.
  2. Желательно четко ограничивать функциональность дополнительных обработок, которые меняют данные пользователя. Например, если пользователю нужно перенумеровать кассовые документы, сделайте дополнительную обработку, которая будет делать именно это, без лишней универсальности.

См. также:

Другие сайты фирмы "1С"

© 2011-2018 ООО "1С-Софт"
Все права защищены. Все торговые марки являются собственностью их правообладателей.
Круглосуточная поддержка:
8 (800) 333-72-27
support@1cfresh.com
Партнерам фирмы "1С":
info@1cfresh.com
RSS
Ваша личная информация под надежной защитой. Ваш браузер соединяется с сайтом по защищенному протоколу HTTPS.
Сайт использует SSL-шифрование для всех передаваемых данных.
Иконка ожидания Ваше приложение готовится к использованию. Пожалуйста, подождите.
Наверх