Microsoft Power BI + 1С. Зачем и как?

25.05.15

Разработка - Инструментарий разработчика

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Файл настроек
.pbix 438,10Kb
26
26 Скачать (1 SM) Купить за 1 850 руб.

Продолжаем нашу эпопею с мобильным миром. И сегодня я хочу поговорить о вот таком вот продукте Microsoft Power BI.

Что есть такое Microsoft Power BI?

А это служба бизнес-аналитики для совместного доступа, управления и использования запросов данных и книг Excel, которые содержат запросы данных, модели данных и отчеты.

Тут можно почитать подробней. Однако в последнее время я заметил за собой одну такую интересную штуку – читая официальные описания продуктов, я вообще ничего не понимаю. Т.е., как говорил один мой преподаватель в универе – «Вы понимаете каждое слово в отдельности, но вот предложение целиком – вы не в состоянии осмыслить» (преподаватель по электродинамике).

Вот так и с этими описаниями, посему – давайте я попробую описать все это своими словами.

Если выражаться словами 1Сника, то:

Microsoft Power BI – это СКД. Вот и все J

Но вот только СКД в более глобальном плане. Т.е. если в СКД мы можем взять данные из БД или, например, из неких внешних источников данных. То в BI – мы берем все данные из внешних источников и рисуем из них красивые и живые графики. Причем не такие живые в 1С, а реально – интерактивные графики со взаимосвязями и т.д. Хотя ради справедливости стоит заметить, что то же самое можно сделать и в 1С, но не так удобно.

Немного теории

BI– это облачный сервис, где хранятся ваши данные и ваши отчеты. Да, да. Как я и говорил ранее – BI очень похоже на отчеты на СКД.

Как вы понимаете – отчеты надо где-то писать. Посему существует конфигуратор Power BI Designer, где вы этим и занимаетесь. Скачивайте его отсюда.

Естественно, что раз есть место, где мы отчеты пишем, значит, должно быть место, где мы их смотрим. И таких мест несколько:

  • 1.       Сама среда, где мы их пишем. Ну это логично, но полезно только нам;
  • 2.       Веб-интерфейс;
  • 3.       iOS устройства;
  • 4.       Windows устройства, могут установить в стиле метро. Те, у кого Win 8/8.1. Смотрится реально футуристично, особенно на больших мониторах.
  • 5.       Android устройства. «Androidappisontheway». Ждем.

Логика работы

Давайте сначала объясню логику работы, чтобы потом было понятней – почему делаем так, а не иначе. Всю разработку можно разбить на несколько этапов:

  • 1.       Регистрацию аккаунта. Тут можно посмотреть цены, но есть и бесплатная версия, так что тестировать можно. Конечно, для запада цена в 10$ с пользователя в месяц – это мелочь, а вот для наших стран – это-таки немало. Хотя опять же, даже если взять фирму в 500 человек, скольким сотрудникам понадобится такой функционал?
  • При регистрации учтите один момент – она выполняется слева внизу, где указываете почту. Если зайти в Sign in – там только авторизация.
  • 2.       Необходимо запустить конфигуратор Power BI Designer, тот, который вы скачали ранее.
  • 3.       В конфигураторе мы делаем все, что мы хотим, формируем внешний вид и т.д., потом сохраняем файл проекта.
  • 4.       Теперь файл проекта нам надо подтянуть в нашу учетку, чтобы изменения сохранились там.
  • 5.       Авторизуясь под своим аккаунтом на мобильном устройстве или в клиенте для Windows – подхватываются ваши настройки.
  • 6.       Получить удовольствие.

Работа с конфигуратором

Теперь давайте разберемся с тем, как все-таки строить отчеты и как получать данные?

Получение данных

При первом открытии вас встретит помощник. Закрываем его. И удаляем все лишнее. У нас должно остаться только вот такое вот окошко:

Пока не будем вдаваться в подробности о назначении всех кнопочек. А попробуем ответить на вопрос – как нам получить данные?

В погоне за ответом мы должны нажать кнопку «GetData», - та, что слева вверху, нас встретит вот такой диалог:

Как видите – список потенциальных источников просто огромен. Однако, мы возьмем вариант получения данных при помощи OData, видь он есть у нас в 1С, а мы его обычно не используем. Давайте вот его и применим. Более детально про него можно почитать тут:

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

Есть несколько вариантов:

  • 1.       Поднять свой веб-сервер, и данные тащить оттуда. Но такой вариант неудобен для обучения, так как я свой сервер не дам в публичный доступ.
  • 2.       Пойти на сайт 1С, где есть демо-конфигурации, и попытать счастья там, в надежде, что хоть в одной из них открыт OData. Убедиться, что это не так, и закрыть сайт.
  • 3.       Пойти на англоязычный сайт 1С, присмотреть там какую-то базу, у которой открыт доступ через OData. И найти такую.

Итак, останавливаемся на УНФ, проверить, что ODataдоступен, можно вот таким путем:

http://apps.1c-dn.com/sb/odata/standard.odata/

Если вы там видите список метаданных, то все ок.

Теперь давайте проверим справочник, например, справочник товаров:

http://apps.1c-dn.com/sb/odata/standard.odata/Catalog_Nomenclature

Как видите, мы к первому адресу просто прибавили имя справочника и обозначение, что это справочник, в русскоязычных конфигураторах он бы выглядел вот так:

http://apps.1c-dn.com/sb/odata/standard.odata/Catalog_Номенклатура

Когда мы перейдем по этому URL, мы должны увидеть xml, который будет описывать каждый элемент справочника, однако, все зависит от браузера, FireFox выводит эти данные в виде RSS ленты. Но сути это не меняет.

Если же у вас, при подключении к вашей базе, появилось сообщение о том, что не найдена сущность, то вам сюда //infostart.ru/public/297325/.

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

Итак, первым делом – нам надо понять, где хранятся продажи. Они точно хранятся в регистре накоплений, а этот регистр обозначается в OData, как AccumulationRegister. Вот их и ищем. Нам в этом помогут элементарные знания инглиша. А вот и наш регистр AccumulationRegister_Sales. Проверяем:

http://apps.1c-dn.com/sb/odata/standard.odata/AccumulationRegister_Sales

Если видим xml, то все ок.

Теперь идем в наш BI конфигуратор, выбираем в нем строку с OData, ту, что я выделил желтым на скрине выше и жмем Connect, далее заполняем все, что надо:

Теперь нас встретит следующее окно:

Тут нам сообщается о том, что у нас не указана авторизация. Надо указать. Причем обратите внимание, вы авторизацию можете указать как в целом для домена, так и для конкретного адреса, как указать авторизацию для конкретной базы – я не нашел, но это нам сейчас и не важно.

Слева нам надо выбрать тип авторизации. В нашем случае – это авторизация по типу Basic:

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

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

Слева внизу – вы переключаетесь между отчетами и данными, из которых отчеты строятся. В нашем случае – это запросы.

Слева вверху – страницы с отчетами, т.е. на одной странице (а-ля макет 1С) может быть много разных данных.

Теперь надо разобраться, почему это у нас всего два поля, видь измерений, реквизитов, ресурсов у нас явно больше. Давайте перейдем в запросы:

Это окно работы с запросами. Слева вверху будут доступны все запросы, которые вы добавите.

По центру сверху – строка подключения. По сути – это текст запроса, тут указываются и отборы, и пути и т.д.

Справа у нас идет название запроса и последовательность шагов.

Вот на последовательности мы немного поговорим. Суть ее сводится к тому, что мы описываем в ней пошагово правила, которые хотим применить к нашим данным. Т.е. если вы хотите удалить колонку, то надо указать в каком времени – это будет шаг номер 2, или номер 10. Дальше станет понятней.

Итак, у нас есть всего три колонки. С чем это связано? Давайте внимательно посмотрим на xml, который нам отдает 1С и найдем то место, где начинается список, т.е. в случае OData нам возвращается не построчное представление регистра, как мы привыкли, а выводится сначала информация о регистраторе, а потом уже вложены в него его движения.

Ну а нас интересуют именно эти строки. Давайте теперь выделим любой элемент в средней колонке и внизу увидим вот такое сообщение:

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

Теперь у нас 50 строк. Т.е. мы развернули все построчно, а ранее было сгруппировано по регистратору, если говорить словами 1С.

Но нас это не устраивает, нам мало колонок, я думаю, вы догадались, что надо сделать – жмем еще раз на ту кнопку в заголовке:

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

И жмем ОК:

Обратите внимание – у нас справа заполнился список действий, т.е. в нашем случае действия такие:

  • 1.       Получить данные;
  • 2.       Развернуть данные;
  • 3.       Развернуть данные.

И сразу обратите внимание на формулу вверху.

Теперь нам надо решить проблему, потому что нас совсем не устраивает наименование товара в виде UID. Я сомневаюсь, что такой вид будет информативен.

Значит, нам надо теперь вывести информацию по товару, давайте мы это сделаем объединением таблиц товара и продаж.

Для этого – добавляем новый запрос, но уже к справочнику товаров http://apps.1c-dn.com/sb/odata/standard.odata/Catalog_Nomenclature, точно так же, как и продаж, и переименуем эти таблицы, чтобы не путаться:

Обратите внимание – я сразу применил несколько шагов к данным о товаре, а именно:

  • 1.       Получил данные:
  • = OData.Feed("http://apps.1c-dn.com/sb/odata/standard.odata/Catalog_Nomenclature")
  • 2.       Удалил лишние колонки:
  • = Table.RemoveColumns(Source,{"SKU", "ChangeDate", "WriteOffMethod", "DescriptionFull", "BusinessActivity_Key", "Vendor_Key", "Cell_Key", "Comment", "OrderCompletionTerm", "TimeNorm", "FixedCost", "CountryOfOrigin_Key", "PictureFile_Key", "Parent_Key", "DataVersion"})
  • 3.       Отфильтровал записи, убрал все группы:
  • = Table.SelectRows(#"Removed Columns", each ([IsFolder] = false))

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

Т.е. мы всегда должны указывать, к какому шагу мы применяем то или иное правило.

Идем дальше, теперь у нас есть две таблицы, и точно так же, как и в случае с 1С, мы должны их объединить. Есть два способа, как можно это сделать:

  • 1.       Просто взять и сделать объединения по типу связей в 1С, когда мы объединяем две таблицы.
  • 2.       Добавить в одну из таблиц нужные нам данные из другой.

Мы их разберем оба. Итак. Сначала мы просто делаем объединение. Для этого идем на вкладку Отчеты (слева внизу) и нажимаем кнопку Manage:

И настраиваем связи:

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

А теперь идем уже строить отчеты:

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

Теперь давайте попробуем еще добавить сюда номенклатурные группы товара. По идее, надо было бы добавить еще один запрос с номенклатурными группами и связать их с полем NomenclatureGroup_Key в запросе номенклатур. Однако нам это не понадобится. Идем в самый конец, смотрим на последние колонки в запросе Номенклатура.

И вас встретит ошибка, и это, скорее всего, баг платформы, на которой опубликована эта база, так как на последних платформах – все ок. Поэтому тестируйте у себя. Но суть в том, что тут появятся названия номенклатурных групп.

Перенос данных на свою учетку

После всего этого – сохраняем полученный нами отчет. Он, кстати, прикреплен к статье. Так что можете его скачать из прикрепленных файлов к этой статье.

Далее идем в наш аккаунт на сайте:

Нажимаем GetData, выбираем пункт PowerBIDesignerFile и жмем Connect, далее выбираем файл и еще раз жмем Connect.

Ну, а дальше все и так интуитивно понятно. Вы прям тут можете редактировать отчеты, доски и т.д.

А теперь давайте зайдем в приложение iOS и посмотрим, как оно выглядит там:

Вот и все.

Итог

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

Если хорошо знать OData, то сделать такого рода отчет можно за несколько минут. И кроме этого – для простоты работы и меньшей нагрузки на БД можно просто создать отдельный регистр сведений, куда скидывать сразу всю нужную информацию, а этим решением забирать ее и выводить.

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

Все, что надо для того, чтобы приступить к работе - установить веб-сервер, обновить платформу до 8.3.6 (может и с 8.3.5 будет работать, я не тестил, главное, чтобы там не было багов в платформе), вытянуть данные и скомпоновать их.

Т.е. для программиста это займет от силы несколько часов. А результат - отличный.

P.S. Не забудьте про безопасность данных!

Готовое решение

Выгрузка данных из 1С в BI - аналитику

Автоматически без программиста выгружайте данные из 1С в системы BI - аналитики

Microsoft Power BI OData Отчеты Графики интерактивные

См. также

SALE! 15%

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    159690    876    399    

862

SALE! 15%

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

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 7140 руб.

20.08.2024    7888    59    23    

69

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

Бизнес-аналитика в 1С для эффективного управления компанией. Сбор данных и их наглядная визуализация. Система настраиваемых отчетов и дашбордов для детального анализа и принятия решений. Своевременный контроль важных показателей. Возвращаем до 15% бонусами. Заказать в Инфостарт!

12100 руб.

09.02.2021    22271    56    6    

41

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

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

9360 руб.

17.05.2024    23502    68    45    

117

SALE! 15%

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

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

10000 8500 руб.

10.11.2023    10466    36    25    

61

SALE! 15%

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

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

22200 19980 руб.

06.10.2023    15436    35    7    

70

SALE! 35%

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

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

4800 3120 руб.

14.01.2013    188065    1140    0    

912

SALE! 15%

Инструментарий разработчика Программист 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 12750 руб.

07.10.2021    17319    6    32    

42
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. davdykin 25 25.05.15 20:26 Сейчас в теме
Спасибо, интересна как потенциальная возможность.
2. Dach 383 26.05.15 10:07 Сейчас в теме
Очень здорово! А я правильно понял, что эта среда (Power BI) позволяет скомпилить андроид-приложение, которое например будет коннектиться к базе 1С по вебу и тоже строить графики?
4. DitriX 2102 26.05.15 11:58 Сейчас в теме
(2) нет, это что то типо тонкого клиента, т.е. вы ставите с маркета приложение (под андроид пока нет, но есть под iOS) подключаете учетку и вперед. Т.е. ничего компилить не надо в этом и весь прикол :)
(3) ну так вот тут все это можно, и делается это все просто, а в скд - это на все надо вешать обработчики.
DoctorRoza; +1 Ответить
3. DoctorRoza 26.05.15 10:18 Сейчас в теме
Конечно, тут нужно смотреть более детально, только (ИМХО) и штатная СКД ТАКОЕ выведет. Тут интересны больше воронки, пирамидки и т. п. фигуры и, обязательно, с цветовой гаммой. До кучи. чтобы были кликабельны с расшифровкой. И совсем полный абзац, если можно строить кубы-данных. А если нет, то .. ну с пивом потянет! :)
5. yyb 26.05.15 16:16 Сейчас в теме
Поднял IIS на windows 8.1, опубликовал базу (УТ 10.3 платформа 8.3.6.2014) на вэб сервере. Вэб клиент работает, "все функции" работают. При запросе данных odata http://localhos/<имябазы>/odata/standard.odata запрашивает имя/пароль. Имя пользователя/пароль базы 1С не проходит. В чем может быть проблема?
6. DoctorRoza 26.05.15 16:22 Сейчас в теме
(5) yyb, очень возможно, что нужно создать пользователя и пароль на латинице.
7. DitriX 2102 26.05.15 16:28 Сейчас в теме
(5) таки да, первое правило - это латиница в логине и пароле :)
8. Franco 83 26.05.15 22:57 Сейчас в теме
Если затребует логин/пароль к
http://apps.1c-dn.com/sb/odata/standard.odata/
то введите Demo и пустой пароль
9. yyb 27.05.15 09:25 Сейчас в теме
Проблема решена путем создания пустых папок Odata\Standard.odata в папке \inetpub\wwwroot\<имя базы>.
10. detec 136 27.05.15 09:54 Сейчас в теме
ИМХО, показуха для презентаций. 1С 8 - это не просто база данных, а виртуальные таблицы для регистров накопления. там, где их нет, отчёт будет строиться очень долго. Тем более, когда записи будут тянуться через веб-сервер в текстовом формате куда-то в облако и возвращаться в сгруппированном виде.
11. DitriX 2102 27.05.15 13:24 Сейчас в теме
(10) открою секрет - тут их нет :) через OData не тянуться виртуальные таблицы. Только если их брать через скуль, на сколько я понял.
Та и в целом, там где их нет - и 1с будет долго строить отчеты.

А вообще - это просто идеальный вариант отчета руководителю. :)
12. xzorkiix 35 01.06.15 09:56 Сейчас в теме
(11) воу-воу любезный, через oData всё тянется

В REST интерфейсе доступны реквизиты объектов конфигурации, доступны операции создания, чтения, модификации и удаления данных, а также некоторые методы встроенного языка. Например:

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


пруф 1

В REST интерфейсе доступны реквизиты объектов конфигурации, доступны операции создания, чтения, модификации и удаления данных, а также некоторые методы встроенного языка. Например:

Для документа - Post() и Unpost();
Для задачи - ExecuteTask();
Для бизнес-процесса - Start();
Для регистра сведений - SliceLast() и SliceFirst();
Для регистра накопления и регистра бухгалтерии - Balance(), Turnovers() и BalanceAndTurnovers();
Для регистра расчета - ScheduleData(), ActualActionPeriod(), <ИмяПерерасчета>() и Base<Имя базового регистра расчета>().


пруф 2
13. DitriX 2102 01.06.15 11:55 Сейчас в теме
(12) И действительно. век живи - два учись. Как то оно мне не надо было, и вообще пропустил что такое есть :)
Для остальных - писать надо так:
http://apps.1c-dn.com/sb/odata/standard.odata/AccumulationRegister_Sales/Turnovers()
Т.е. в конце через слеш добавляем тип виртуальной таблицы.
14. tormozit 7231 28.07.15 09:41 Сейчас в теме
Как отбор то накладывать при извлечении данных? Без отбора, кажется, любая большая таблица сильно нагрузит канал и заставит долго ждать пользователя.
15. DitriX 2102 28.07.15 11:56 Сейчас в теме
ну так в самом мост запросе, сам протокол поддерживает отборы, например, вот:
http://host/odata/standard.odata/Catalog_Товары?$filter=Имя eq 'Молоко' and Цена lt 2500
В итс это разжевано
16. tormozit 7231 28.07.15 15:32 Сейчас в теме
(15) Так а этот BI умеет такие фильтры дописывать исходя от настроек заданных пользователем? Это ж вроде не относится к стандарту OData.
17. DitriX 2102 28.07.15 19:32 Сейчас в теме
(16) не, суть его в том, что в БИ выгружаются все данные, а потом он строит свои отборы.
К примеру, у вас есть два человек, у одного доступ к одной организации, а другого - к другой.
А данные находятся в одной таблице 1С.
Но, каждый из них, должен уметь строить отчеты с отбором по товару.
Поэтому, в момент получения данных из 1с - вы ставите фильтр на организацию, и только на нее. После загрузки - у этих двоих будут данные только по своим организациям.
А во отборы по товару - они уже делают локально, без образещения к серверу на основании своих данных.

Короче, есть 1 ЦБ и есть 2РБД, вы в каждую РБД грузите данные по главным отборам, а уже в каждой из них - стоите отчеты по полученным данным :)
Как то так :)
18. tormozit 7231 29.07.15 00:43 Сейчас в теме
(17) В общем ограничения доступа здесь являются серьезной сложностью. Закачивать все свои бизнес данные в неведомое облако тоже не каждый управленец захочет. Но уверен, что и такой подход найдет своих пользователей.
23. DitriX 2102 29.07.15 11:58 Сейчас в теме
(18) безусловно. Если мы говорим о финансовых показателях - то тут вопрос такой, с подвохом. А если мы говорим про остатки товара, долги контрагентов, план закупок, то тут очень даже ничего.
Ну а во вторых - это все таки Майкрософт, а уж они, если захотят, то могут получить вообще всё! :)

Ну и данные хранятся за бугром, а не "по месту", так как это все не попадает под закон о персональных данных.

В общем на каждое решение - свой покупатель.
19. Steelvan 306 29.07.15 10:25 Сейчас в теме
Хм... Сколько все это стоит ?

Уверен что MS (как и все жадные американские конторы), тем более для корпоративных приложений, ставят конкретный ценник.

Сейчас все более-менее высокие чиновники переходят на простые раскладушки (подальше от прослушек сами знаете кем), а вы предлагаете САМИМ все это ИМ отправлять. хе-хе...
21. DitriX 2102 29.07.15 11:52 Сейчас в теме
(19) а у вас смартфон эппле или гугл? а может блэкбери? или вин фон. А сидите за какой ОС?
А офис какой вы юзаете? А по скайпу файлы передаете?
Короче - я бы с вами не спорил, если бв я говорил про какого то поставщика услуг, о котором никто ничего не знает.
Но Карл! Это Майкрософт! Карл!!! Он и так все о всех знает.
А вот вы при обмене данными поднимаете хотябы https или тунель? подписываете ключом 2048бит? Думаю фиг.

Поэтому давайте не будем :)
Shrayky; investec; +2 Ответить
22. DitriX 2102 29.07.15 11:55 Сейчас в теме
(19)
Хм... Сколько все это стоит ?

Давайте поиграем в игру - прежде чем писать камменты, вы прочтете статью :)
user1501790; +1 Ответить
20. Steelvan 306 29.07.15 10:46 Сейчас в теме
24. vabue 121 07.09.15 22:36 Сейчас в теме
В продакшне ещё долго ждать пока в 8.3.8 появится поддержка $top оператора odata.
А без этого и Power Query, и Power BI designer работают криво.
25. DitriX 2102 08.09.15 10:15 Сейчас в теме
(24) ну смотря для каких задач, это раз. А два - мы можете сами отобрать даныые уже в повер би.
26. vabue 121 13.09.15 15:41 Сейчас в теме
Играюсь с ним дальше - в один прекрасный момент Power Desktop BI начал загружать только схему, а данные не берёт, пустая таблица.

В Excel при этом те же данные прекрасно загружаются. Никто с таким не встречался?
27. DitriX 2102 13.09.15 21:02 Сейчас в теме
(26) а лицензию купили? Может триал закончился?
28. vabue 121 30.09.15 23:58 Сейчас в теме
(27) нам бесплатно профессиональных лицензий перепадает - серебрянные партнёры MS.
29. vabue 121 13.12.15 01:50 Сейчас в теме
Похоже причина - платформа 8.3.5. Будем обновляться.
30. DitriX 2102 13.12.15 13:55 Сейчас в теме
Там был один баг в 8.3.5, который заключался в том, что в случае вывода данных в виде OData - два раза дублировался тег Родитель. Ну и ясное дело Power Bi не хотел с этим работать
31. vabue 121 16.12.15 11:28 Сейчас в теме
А в 8.3.7 вот такое http://take.ms/UvsZA

Даже на http://apps.1c-dn.com/sb/odata/standard.odata/

Какой-то очень балованный этот PowerBI. 8.3.6 мы как-то пропустили на продакшне.
32. vabue 121 16.12.15 20:58 Сейчас в теме
Если напрямую дёргать урлы регистров - можно работать.

Но для 100МБ+ xml сиё не подходит. Память кушает гигабайтами. Надо начальный ETL какой-то делать. Или засовывать ODATA MS SQL, для него Direct Query есть.
33. DitriX 2102 17.12.15 00:33 Сейчас в теме
(32) Ну так конечно, поэтому майкрософт и предлагает свой сервер. Т.е. типо промежуточный.
И таки давайте открыто - PowerBi не для гигабайтов данных.
Это так, вывести основные показатели, не более. Иначе надо много терабайт оперативки, что бы крутить целый анализ :)
43. hohlick 19.05.16 01:20 Сейчас в теме
(32) vabue, какой-никакой ETL в PowerBI есть - Get Data, это тот же PowerQuery в Excel. Не знаю всей специфики работы с OData, но при работе с SQL грамотно составленный запрос фолдится и вся предварительная обработка выполняется на стороне сервера. А затем уже тщательно отобранные данные можно вертеть как угодно.
34. Гость 03.02.16 18:20
Огромное спасибо за эту статью и все комментарии к ней. Я обычный юзер экселя, и я тащусь от PQ и PBI, потому что это позволяет в разы увеличить продуктивность в работе с коллегами и руководством. Руководство хочет видеть остатки на банковских счетах наших организаций. Подняли веб-сервер, установил внешнюю обработку, сменил логин на латиницу и наконец-то могу тянуть оттуда данные. К сожалению, я не понимаю, где их (остатки на счетах) там искать. В обработке какой-то адский классификатор, с которым не совсем понятно, как работать. Подскажите, пожалуйста, где посмотреть, как устроена модель данных внутри 1С, из каких объектов что тянуть!
35. spawn8995 3 03.02.16 18:59 Сейчас в теме
а тянуть ты как хочешь?
36. Гость 03.02.16 21:45
(35) spawn8995, через OData из Excel (Power Query) и из Power BI. Я могу вытянуть оттуда всякие каталоги валют, банковские счета (правда непонятно, что это за банковские счета, их там в разы больше, чем наших. по всей видимости всех наших контрагентов). но где там лежат понятные и нужные бухгалтерские цифры (остаток денежных средств на банковском счете) я не вижу... Может быть, в ИТС есть какой-то каталог объектов 1С для простых смертных аналитиков?.. потому что я не разработчик и не IT
38. DitriX 2102 04.02.16 02:12 Сейчас в теме
(36) Я привел же отчет, где можно сопоставить одни данные с другими и там же делать жесткие отборы.
На счет очтатков - тут надо понимать, что есть регситры накоплений, они состоят из одной простой таблицы данных, и из виртуальных. Остатки - это виртeальная таблица.
Короче - вам сюда http://its.1c.ru/db/v836doc#bookmark:dev:TI000001358
kirillin@knstr.ru; +1 Ответить
39. Гость 04.02.16 10:21
(38) спасибо! буду учить матчасть) узнал, что такое сущность, раньше знал только объект из CRM.

vabue, спасибо, вижу там RelationShip, по всей видимости это связи между таблицами / сущностями?.. в общем немножко стало понятно, откуда начинать. буду колупаться потихоньку.

нашел сущность БанковскиеВыписки, там проводки видно) надеюсь, до остатков недалеко.
А есть такая сущность "Остаток" или это сумма всех проводок по 51 счету?
В смысле мне искать эту цифру или ее нужно рассчитать?

еще вопрос такой: когда возникает, скажем так, промышленная потребность в создании отчетов PBI/1C, какие есть компании / профессионалы, которые уже достаточно подковались в этом? А то наш вендор 1С, когда поставили вопрос про OData дня 3 искал у себя в филиальной сети специалиста, который объяснил, с чего надо вообще начать.
37. vabue 121 04.02.16 00:39 Сейчас в теме
standard.odata/$metadata немножко связи показывает. Но судя по моей практике, что без понимания справочников и разных видов регистров даже стороннему разработчику с одатой делать нечего.
kirillin@knstr.ru; +1 Ответить
40. Гость 04.02.16 13:18
Сошлось! это просто фантастика... Сумма по Журналу "Банковские выписки" и есть фактический Остаток на счете.
41. DitriX 2102 04.02.16 15:52 Сейчас в теме
(40) только не надо так делать :)
Вас интересует таблица остатков этого журнала, это виртуальная таблица.
Для регистра накопления и регистра бухгалтерии - Balance(), Turnovers() и BalanceAndTurnovers();
Т.е. ВашАдрес\РегистрБанковскихСчетов\Balance()
И тогда не надо ничего суммировать. На маленьком количестве данных будет работать и ваш метод, но так все таки правильней.
http://v8.1c.ru/o7/201312rest/
kirillin@knstr.ru; +1 Ответить
42. Гость 04.02.16 19:51
Еща раз благодарю за подсказку, но видимо здесь и наступил предел моего понимания. Несколько раз облазил список редактирования состава ОДата и не нашел такого регистра. Так что за неимением чего-то лучшего, можно и суммировать) правда оказалось, что вылезают единичные операции странные, в общем не все бьется с карточкой счета, ну да ладно.
Полагаю, названия этих регистров могут различаться в зависимости от версии 1С и надстройки вендора.

Это правда натолкнуло на другой вопрос: есть ли более удобный список редактирования состава ОДата? а то в обработке по ссылке просто список очень длинный, по нему ни поиском в 1С, никак... и вообще слишком много всего. Очевидно, для подкованных пользователей.
44. zidkov 15.06.16 17:56 Сейчас в теме
Спасибо за статью
Исходя из
"Все, что надо для того, чтобы приступить к работе - установить веб-сервер, обновить платформу до 8.3.6 (может и с 8.3.5 будет работать, я не тестил, главное, чтобы там не было багов в платформе), вытянуть данные и скомпоновать их."

получается нужно именно веб-сервер?
а напрямую на сервер, без веба никак?
45. DitriX 2102 15.06.16 18:39 Сейчас в теме
46. пользователь 21.09.16 08:53
Сообщение было скрыто модератором.
...
47. TreeDogNight 22 25.09.16 14:23 Сейчас в теме
Можно вопрос не по теме: с помощью какого софта вы делаете GIF-ки как на 1м скрине?
48. DitriX 2102 25.09.16 17:54 Сейчас в теме
(47) TreeDogNight, есть такая программка Camtasia Studio. У нее вобще гифки выходят шикарнейшие, так как она очень качественно сжимает гифки, по умному :)
TreeDogNight; +1 Ответить
49. TreeDogNight 22 26.09.16 07:10 Сейчас в теме
50. user720857 28.03.17 16:07 Сейчас в теме
очень интересно. к 1С еще не подключался)
51. WKBAPKA 215 17.04.17 18:44 Сейчас в теме
Попробывал, работает
Скажите, а связь между графиками, как я понял, настраивается автоматом?
52. DitriX 2102 18.04.17 10:52 Сейчас в теме
(51) угу, в том и прелесть :)
53. WKBAPKA 215 18.04.17 11:16 Сейчас в теме
Все, разобрался.
В принципе, ничего сложного, немного надо с нюансами поразбираться, вычисляемые поля и со скриптовым языком, а так все очень даже понятно
54. WKBAPKA 215 23.04.17 13:23 Сейчас в теме
А если у нас есть два регистра, Продажи и Продажи себестоимость
Надо посчитать валовую прибыль. Но для создания связей нужно что бы одна из таблиц имела уникальные значения. Как тогда создать связи?
Ведь на одну запись в регистре "Продажи", может быть несколько записей в регистре "Продажи себестоимость"
соответственно при создании связей оно ругается, что вообщем то логично
55. WKBAPKA 215 23.04.17 13:31 Сейчас в теме
56. WKBAPKA 215 23.04.17 13:41 Сейчас в теме
Сам спросил, сам ответил. Слиянием запросов
TreeDogNight; DitriX; +2 Ответить
57. WKBAPKA 215 05.05.17 11:51 Сейчас в теме
покрутил я этот power BI, появился ряд вопросов к power Query, например, выполнить расчет данных аналогичного периода, можно использовать DAX, но не все так просто в датском королевстве.
Есть там язык М в power Query, но с ним еще надо научиться работать :) а у кого спросить, хз
58. DitriX 2102 05.05.17 14:39 Сейчас в теме
(57) На форуме мелкософта :)
Тут уже совершенно не имеет значения откуда тянуться данные, из 1С, или нет.
Выйдите за эти рамки, спрашивайте на профильных форумах.
59. WKBAPKA 215 05.05.17 15:13 Сейчас в теме
там у них все на буржуйском... )
на самом деле их power Query используется и в Excel, можно пошариться по русскоязычным форумам и поучиться приемам
60. wiseowl 29.09.17 12:11 Сейчас в теме
Здравствуйте. Может быть вы сможете мне подсказать...
Нужно реализовать все тоже самое, но как это можно сделать без использования веб сервера?

Мне сказали что все делается через REST API, типо из 1С подключиться к BI через HTTP запрос и закинуть туда данные. Но я не знаю как это реализовать...
По сути надо сделать как тут описано, но только с BI https://infostart.ru/public/574117/
Может подкинете ссылок полезных чтобы почитать...
61. ditp 94 29.09.17 12:34 Сейчас в теме
Коллеги, подскажите.

Пытаюсь загрузить данные из таблиц ms sql, так не грузятся ключевые поля, в которых гуиды лежат, а следовательно связи не настроить.
Можно как то обойти?
62. zxcvb98765 09.10.17 12:30 Сейчас в теме
Здравствуйте, коллеги.

Сталкивался ли кто с такой ошибкой: после установки соединения в момент выбора одной из доступных таблиц для загрузки данных (например, "Catalog_Банки") Power BI выдает ошибку: "DataSource.Error: OData: Документ метаданных канала, вероятно, недопустим."?
Прикрепленные файлы:
63. byun 26 31.10.17 17:59 Сейчас в теме
(62) Попробуйте прописать прямую ссылку на объект: Адрес/имяббазы/odata/standard.odata/Catalog_Банки
zxcvb98765; +1 Ответить
64. user855724 03.11.17 08:41 Сейчас в теме
Доброго времени суток. Я правильно понимаю,что с с 7-чной базой 1С SQL продукт не заработает?
65. dimens 46 15.05.18 18:11 Сейчас в теме
Наткнулся на практическую демонстрацию сопряжения 1С и Power BI на www.youtube.com
66. TreeDogNight 22 31.01.19 07:35 Сейчас в теме
Всем доброго времени суток! Подскажите, в чём может быть причина этой проблемы? Пытаюсь подключиться через Канал OData, в Excell подключается спокойно, а в PowerBI выходит ошибка (прикрепил скриншот).

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

В подробных сведениях написано следующее:

Feedback Type: Frown (Error) Timestamp: 2019-01-28T05:01:59.2000562Z Local Time: 2019-01-28T10:01:59.2000562+05:00 Session ID: 8e878905-5280-41af-a9c8-64af4e367341 Release: December, 2018 Product Version: 2.65.5313.1381 (18.12) (x64) Error Message: Не удалось загрузить схему модели. OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1 (x64 ru-RU) CLR Version: 4.5 or later [Release Number = 378389] Peak Virtual Memory: 1.91 GB Private Memory: 358 MB Peak Working Set: 472 MB IE Version: 9.0.8112.16421 User ID: ae499a53-f32b-4914-9337-f474881fc5a1 Workbook Package Info: 1* - ru-RU, Query Groups: 0, fastCombine: Disabled, runBackgroundAnalysis: True. Telemetry Enabled: True Model Default Mode: Import Snapshot Trace Logs: C:\Users\ILYA\AppData\Local\Microsoft\Power BI Desktop\FrownSnapShot812566119.zip Performance Trace Logs: C:\Users\ILYA\AppData\Local\Microsoft\Power BI Desktop\PerformanceTraces.zip Disabled Preview Features: PBI_shapeMapVisualEnabled MIntellisense PBI_SpanishLinguisticsEnabled PBI_PdfImport PBI_ColumnProfiling PBI_variationUIChange PBI_PythonSupportEnabled PBI_showIncrementalRefreshPolicy PBI_showManageAggregations PBI_FuzzyMatching PBI_EnableWebDiagramView PBI_improvedFilterExperience PBI_qnaLiveConnect Disabled DirectQuery Options: PBI_DirectQuery_Unrestricted TreatHanaAsRelationalSource Cloud: GlobalCloud DPI Scale: 100% Supported Services: Power BI Formulas: section Section1; shared Запрос1 = let Источник = OData.Feed("localhost/NorthFoam/odata/standard.odata/AccumulationRegister_НачисленияСотрудников_RecordType?allowedOnly=true&$select=Period,Сотрудник,Подразделение_Key,Сумма", null, [Implementation="2.0"]) in Источник; shared Запрос2 = let Источник = OData.Feed("localhost/NorthFoam/odata/standard.odata/Catalog_Сотрудники?allowedOnly=true&$select=Ref_Key,Description", null, [Implementation="2.0"]) in Источник;
Прикрепленные файлы:
67. user1051670 31.01.19 13:53 Сейчас в теме
Коллеги, здравствуйте
У кого-нибудь были проблемы при попытке подключения через Power BI Desktop к 1C ODATA каналу с русскими буквами в URL ?
Если да, то смогли ее как-либо решить ?
Заранее благодарен за информацию
68. KAV2 157 04.03.19 11:12 Сейчас в теме
Есть идеи, как можно провести аутентификацию пользователя при получении данных через odata из 1С, таким образом, чтобы не зашивать пароль пользователя в код получающей эти данные системы? Ну чтобы каждый пользователь Power-BI работал под своей учеткой со своим уровнем доступа к данным и чтобы в самой Power-BI пароль от 1С не был бы захардокоден?
69. user875791 20.03.19 08:59 Сейчас в теме
Если же у вас, при подключении к вашей базе, появилось сообщение о том, что не найдена сущность, то вам сюда //infostart.ru/public/297325/

А лучше сюда: https://infostart.ru/public/914689/
70. FreeArcher 162 09.10.19 04:31 Сейчас в теме
Приветствую! Скажите, кто с какими объемами данных пробовал работать, что то на реальных данных, где товаров под 90k уже не дождаться результата? А регистры и пытаться не стоит загружать.
user1452995; PchelkaR; +2 Ответить
71. rtkprg2 01.04.20 17:05 Сейчас в теме
Добрый день!
Гуглил, но не смог найти ответ на такой вопрос:
Пусть у меня в 1С есть регистр с ресурсом типа ХранилищеЗначения. Я в это ХранилищеЗначения положу готовую ТаблицуЗначений.
Можно ли ее прочитать из PowerBI как таблицу, то есть "раскрыть"? То есть просто "взять готовую и вывести"?
Умеет ли PowerBI по протоколу OData читать тип ХранилищеЗначения?
72. user1452995 13.04.21 16:16 Сейчас в теме
Никому не нужна вся выгрузка. Нужны выборки.
В браузере работает, В PowerBI не фильтрует регистр накопления. Почему

http://xxx.xxx.xx.xx:xx/Base/odata/standard.odata/AccumulationRegister_Продажи?$filter=RecordSet/any(d: d/Period gt datetime’2021-03-01T00:00:00’)"
73. user1614446 17.06.21 08:54 Сейчас в теме
OData: Документ метаданных канала недопустим. Ошибка: The metadata document could not be read from the message content
через браузер видно xml...
если я верно понимаю, логинится, но либо версия odata 1С старая, либо еще что... в чем подвох? спасибо
74. maksa2005 550 24.12.21 14:14 Сейчас в теме
Зачем приложение, если можно просто ссылку внешнюю развернуть и пусть щелкают ее
Оставьте свое сообщение