HTTP-сервис: отчеты [Расширение]

30.08.16

Интеграция - WEB-интеграция

Это HTTP-сервис, который возвращает почти любой отчет в HTML, XLSX или в JSON. Сохраните вариант отчета, получите на него ссылку и можно получить данные без захода в 1С. Работает в конфигурациях на основе БСП 2.3.3+, для отчетов на СКД и в 1С 8.3.8+

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
HttpСервисОтчеты.cfe
.cfe 20,12Kb ver:1.0.0.0
199
199 Скачать (2 SM) Купить за 2 150 руб.

В этом расширении вы найдете HTTP-сервис и вспомогательную обработку. В форме обработки можно сгенерировать нужные ссылки, переходя по которым можно в браузере открыть нужный вариант отчета.

Логин и пароль сохраняются браузером, поэтому вводить их нужно только один раз. Так же с помощью сервиса можно отдавать данные в любую другую систему, которая может выполнить http-запрос. 

Для правильного формирования ссылки из обработки необходимо, чтобы была заполнена константа АдресПубликацииИнформационнойБазыВИнтернете. Проще всего ее правильно заполнить, зайдя в базу через веб-клиент. Но можно и захардкорить прям в коде.

Что происходит внутри?

В качестве обязательного параметра url передается уникальный идентификатор варианта отчета. А в качестве необязательного параметра - формат ответа (HTML, XLSX или JSON).

Если по уникальному идентификатору удалось получить вариант отчета и на него достаточно прав пользователю, под которым авторизовались в сервисе, то строится выбранный отчет. Для json результат сохраняется в таблицу значений, а затем преобразуется собственно в json. Все не примитивные типы приводятся к строке.

Для остальных типов сохраняется отчет сохраняется в табличный документ, а затем конвертируется в html или в xlsx.

Устанавливаются соответствующие заголовки и возвращается ответ.

Пример генерирования ссылки и обращение к этому сервису программно из другой 1Ски можно посмотреть в обработке HttpСсылкиПоВариантуОтчета

Программистам

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

Так же в этом расширении вы можете подсмотреть примеры:

  • Работа с HTTP-Сервисом
  • Программная работа с отчетами
  • Конвертация результатов отчетов
  • Обращение к HTTP-сервисам
  • Работа с расширениями
  • Работа с JSON

Что делать, если в моей конфигурации нет БСП?

Достаточно внедрить БСПОт БСП в этом расширении используются только варианты отчетов, т.к. это очень удобный контейнер с данными по отчету - ссылкой на отчет и сохраненными пользователем настройками. Можно сохранять настройки в другом месте и как-то по идентификатору их восстанавливать.

Почему это сделано расширением?

А прост. Захотелось попробовать новую фишку от 1С. Единственное огорчение - я так и не смог придумать способа добавить в форму отчета свою кнопку, по которой можно было б прям из отчета получить ссылки. В 8.3.9 с возможностью переопределять методы в общих модулях это должно получится без проблем.

Полезные ссылки

Зазеркалье: Расширения

Зазеркалье: Средства работы с JSON

Зазеркалье: Web и HTTP сервисы в расширениях

ИТС: Пример создания HTTP-сервисов на платформе "1С:Предприятие"

ИТС: Расширение конфигурации

HOWTO: создание и отладка HTTP-сервиса в 1С:Предприятие

HTTP-сервисы для тех, кто ничего не понимает в WEB

Расширения конфигурации. Полезные советы для разработки

http web http-сервис отчет отчеты расширение

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17783    19    22    

16

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19851    13    17    

16

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14425    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1174    1    0    

3
Вознаграждение за ответ
Показать полностью
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. tanya_charm 31.08.16 06:50 Сейчас в теме
Отличная штука. Пошел тестировать.
2. serg_infostart 390 31.08.16 09:44 Сейчас в теме
вещщ!

Команды для получения ссылки можно добавить на форму если добавить общую форму отчета в расширение (если используется общая форма отчета) и определив функцию в расширении формы например ПриСозданииНаСервере(). Там же можно и другие команды заменить/переопределить. Тут хорошо описана работа с расширениями.
3. rus128 2 31.08.16 09:48 Сейчас в теме
"Все не приметивные типы приводятся к строке."
Все хорошо и красиво описано, но типы все-таки примИтивные :-)
Еще две опечатки заметил: "как то по идентификатору" (правильнее было бы "как-то") и "А прост." в последнем абзаце.
starik-2005; +1 1 Ответить
4. Stepa86 1531 31.08.16 09:54 Сейчас в теме
(3) Спасибо, поправлю. Лучше такие вещи в личку писать. И в "А прост." нет опечатки

(2) Тогда придется всю форму выносить в расширение, и если она изменится в типовой или уже отличается, то могут быть проблемы. Нашел в БСП какой-то механизм "Подключаемые команды", который по идее должен как раз добавлять команды в формы, но как его прикрутить к форме отчета не придумал. В форме отчета так же есть подготовка по использованию этого механизма, но нет места (или я его не нашел), где можно подрубить через расширения свои команды.
5. DrAku1a 1745 01.09.16 05:23 Сейчас в теме
Может можно в рамках того-же HTTP-сервиса сделать страницу со списком отчетов для выбора? Тогда отдельные ссылки будут не нужны.
6. Stepa86 1531 01.09.16 08:08 Сейчас в теме
(5) 1) Я очень сомневаюсь, что такая страничка, генерируемая полностью автоматом, будет полезна. Если и делать, то как это принято в подсистеме отчетов - на каждый раздел своя панель со своими вариантами.
2) Основная задумка сервиса - сначала настроить что нужно, а потом использовать. Такая форма со списком в нее не укладывается
7. virtex3 20 28.01.17 10:05 Сейчас в теме
Здравствуйте.

Нашел ваше замечательное расширение. Но вот к сожалению не сильно понимаю в программировании 1С.

У меня в конфигурации нет Справочника ВариантыОтчетов.

Вместо этого у меня есть Справочники.ИдентификаторыОбъектовМетаданных.
В этом справочник есть Родительский объект "Отчеты" и куча отчетов, которые ссылаются на родительский объект

Как заставить работать ваше расширение?
8. androgin 19.09.18 21:01 Сейчас в теме
как опубликовать http-сервис из расширения?
9. Lena272 20.09.18 09:09 Сейчас в теме
спасибо огромное за полезный материал и ссылки!
подскажите, пожалуйста, как добавить http-сервис из расширения в публикацию?

галку "Публиковать HTTP сервисы расширений по умолчанию" поставила
в инструкции написано, что это должно помочь
но ни в списке HTTP сервисов, ни в vrd файле эти сервисы не появились....

что-то я делаю не так.....
10. Lena272 24.09.18 15:33 Сейчас в теме
получилось опубликовать http сервис из расширения... в списке расширений для публикации он так и не появился, но из браузера стал доступен, при это в файле vrd его тоже нет...
11. Bene_Valete 190 04.10.18 04:50 Сейчас в теме
(10) Столкнулась с тем же, оказывается так и должно быть) https://wonderland.v8.1c.ru/blog/web-i-http-servisy-v-rasshireniyakh/ "В настройки публикации на веб-сервере мы добавили флаги, которые позволяют вам автоматически опубликовать все Web-сервисы расширений и все HTTP-сервисы расширений: А если у вас возникнет необходимость опубликовать лишь некоторые из них, то вы сможете это сделать вручную, указав нужные сервисы в vrd-файле."
Bassgood; Lena272; +2 Ответить
12. user1078903 10.01.19 20:36 Сейчас в теме
Добрый день!
Не получается воспользоваться вашим расширением.
Моя платформа: 1С:Предприятие 8.3 (8.3.13.1513).
Моя конфигурация: Бухгалтерия предприятия, редакция 3.0 (3.0.65.72).
Во-первых, при установке расширения получил следующие ошибки:
1. HttpСервисОтчеты (1.0.0.0): Значение контролируемого свойства РежимСовместимости у объекта не совпадает со значением в расширяемой конфигурации
2. HttpСервисОтчеты (1.0.0.0): Не найден объект Роль.БазовыеПрава
Первую ошибку устранил так: в конфигураторе открыл свойства расширения и сменил режим совместимости с 8.3.8 на 8.3.12.
Вторую ошибку устранил так: из основной конфигурации добавил в расширение "БазовыеПраваБП", после чего удалил из расширения "БазовыеПрава".
После этого расширение активировалось, но при попытке получить любой вариант очёта (пробовал с десяток различных имеющихся в конфигурации) получаю пустой документ (будь то HTML, XLS или JSON - везде пусто, форма есть, а данных нету).
Подскажите, в какую сторону копать.
Заранее спасибо!
13. Stepa86 1531 31.01.19 12:16 Сейчас в теме
Поддержкой и адаптацией этого расширения я не буду заниматься. Код открыт, на момент публикации все работало на актуальной на тот момент БСП.
14. пользователь 31.01.19 13:01
Сообщение было скрыто модератором.
...
15. Stepa86 1531 31.01.19 13:03 Сейчас в теме
16. acanta 27.06.19 18:41 Сейчас в теме
Спасибо, очень интересно.
17. o.nikolaev 216 29.07.21 12:15 Сейчас в теме
18. webresurs 228 18.08.22 14:44 Сейчас в теме
ошибка получения отчета Остатки товаров

http://Localhost/base1c/hs/Reports/query/7244c1fd-319f-11e4-9739-6466b304ddef?type=JSON

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>1C:Enterprise 8 application error</title></head><body><h2>1C:Enterprise 8 application error:</h2>HTTP: Not found
Ошибка при работе с ресурсом /base1c/hs/Reports/query/7244c1fd-319f-11e4-9739-6466b304ddef</body></html>


1c - 8.3.20.1674 - БП 3.0.112.34
19. webresurs 228 18.08.22 17:55 Сейчас в теме
(18) - не там флажок поставил .... опубликовать - http-сервисы - надо было...

но все равно выдает только [] , пустое значение... подскажите почему?
20. julia-dev 20 17.10.23 06:47 Сейчас в теме
Добрый день, если отчет с выбором периода. В параметрах запроса как его передать?
Оставьте свое сообщение