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
206 2 150 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

В этом расширении вы найдете 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С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

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

57600 руб.

26.11.2024    5843    4    3    

7

WEB-интеграция Программист Бизнес-аналитик 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

14400 руб.

20.12.2024    3248    17    2    

18

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

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

60000 руб.

07.05.2019    38437    73    45    

31

WEB-интеграция Программист 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разработана для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

12000 руб.

02.02.2021    20149    58    52    

36

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

В расширении реализован механизм интеграции между системой поставщика и Личным кабинетом СДТ. Реализован обмен заказами и реализациями (накладными), предусмотрено отслеживание статусов документов. Расширение предназначено для 1С:УТ 11.4.

35856 руб.

27.11.2024    1738    1    0    

1

Обмен с ГосИС WEB-интеграция Бухгалтер Пользователь 1С v8.3 Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Обработка является альтернативой механизму, разработанному фирмой 1С и заполняющему реквизиты контрагента по ИНН или наименованию. Не требуется действующей подписки ИТС. Вызывается как внешняя дополнительная обработка, т.е. используется, непосредственно, из карточки контрагента. Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС (egrul.nalog.ru) для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0, УТ 10.3, УТ 11.x, КА 1.1, КА 2.x, УПП 1.x, ERP 2.x, УНФ 1.5, УНФ 1.6, УНФ 3.0, ДО 2.1

5196 руб.

28.04.2016    97209    109    218    

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

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

(2) Тогда придется всю форму выносить в расширение, и если она изменится в типовой или уже отличается, то могут быть проблемы. Нашел в БСП какой-то механизм "Подключаемые команды", который по идее должен как раз добавлять команды в формы, но как его прикрутить к форме отчета не придумал. В форме отчета так же есть подготовка по использованию этого механизма, но нет места (или я его не нашел), где можно подрубить через расширения свои команды.
5. DrAku1a 1770 01.09.16 05:23 Сейчас в теме
Может можно в рамках того-же HTTP-сервиса сделать страницу со списком отчетов для выбора? Тогда отдельные ссылки будут не нужны.
6. Stepa86 1535 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 189 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 1535 31.01.19 12:16 Сейчас в теме
Поддержкой и адаптацией этого расширения я не буду заниматься. Код открыт, на момент публикации все работало на актуальной на тот момент БСП.
14. пользователь 31.01.19 13:01
Сообщение было скрыто модератором.
...
15. Stepa86 1535 31.01.19 13:03 Сейчас в теме
16. acanta 27.06.19 18:41 Сейчас в теме
Спасибо, очень интересно.
17. o.nikolaev 217 29.07.21 12:15 Сейчас в теме
18. webresurs 230 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 230 18.08.22 17:55 Сейчас в теме
(18) - не там флажок поставил .... опубликовать - http-сервисы - надо было...

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