Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2      [все]
 SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
хорошо я согласен
Member

Откуда:
Сообщений: 353
Добрый день!

Связка
1С -> SQL Server -> система отчёта.

Пользователь вводит инфу в 1С, обновляет отчёт - и видит результат.
Чтобы это реализовать, надо подписаться как-то на изменения в 1С -т.е. поступают изменения, срабатывает триггер.
Какая существует практика таких "онлайн" обновлений? ETL сам по себе, в общем-то, предназначен для обновления по таймеру. Или я что-то о нём не знаю?
5 ноя 19, 15:20    [22010006]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
L_argo
Member

Откуда:
Сообщений: 1006
В одну из 1С-таблиц записывать дату подготовки отчета.
Внешняя система зачитывает дату и если она стала новее, то забирать данные.
5 ноя 19, 15:39    [22010031]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
хорошо я согласен
Пользователь вводит инфу в 1С, обновляет отчёт - и видит результат.
Чтобы это реализовать, надо подписаться как-то на изменения в 1С -т.е. поступают изменения, срабатывает триггер.
Первый вариант - классический, то есть когда пользователь "обновляет отчёт", этот отчёт создаётся из актуальных данных.

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

Но второй вариант сделать намного сложнее, потому что нужно точно определить все таблицы, и все условия, которые определяют подмножество данных, влияющих на отчёт.
По сути, триггер получается таким же по сложности, как и сам отчёт.
5 ноя 19, 15:48    [22010040]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
L_argo
В одну из 1С-таблиц записывать дату подготовки отчета.
Вопрос топика, как я его понял: когда, в какой момент, нужно подготовить новый отчёт, то есть, когда данные устарели?

Например, отчёт "список сотрудников компании".
Кадровик добавил нового сотрудника, и отчёт должен заново "подготовиться". Как система подготовки отчётов понимает, что нельзя отгружать пользователю готовый, сохранённый отчёт, а нужно сделать его заново?
5 ноя 19, 15:52    [22010043]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
хорошо я согласен
Member

Откуда:
Сообщений: 353
1C-ники говорят, что как раз работают над таким триггером. Сам я не работал ни разу с таковыми.

И как я себе представляю, пакет должен висеть в памяти "вечно" и мониторить изменение этого триггера, что больше похоже на работу ESB (коего у нас нет).

Поэтому вопрос - какая есть практика такого чтения подобных триггеров из SSIS... чтобы понимать, могу ли я работать с ним. Или сказать им "не пойдёт, отменяю заказ, делайте даты". Но в этом случае придётся каждые несколько секунд опрашивать - опять-таки, SSIS будет вечно крутиться и грузить сервер 1С своими опросами и каждый раз получать пустую таблицу по фильтру "за последние 5 секунд".
5 ноя 19, 15:59    [22010049]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
хорошо я согласен,

емнип, в Enterprise редакции подписки отчетов сами могут следить за изменением данных, но если не Enterprise, то надо самому что-то делать.

ETL может работать по расписанию, для этого создают джоб и в одном из шагов настраивают тип шага - SSIS пакет.
5 ноя 19, 18:38    [22010193]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
хорошо я согласен
И как я себе представляю, пакет должен висеть в памяти "вечно" и мониторить изменение этого триггера, что больше похоже на работу ESB (коего у нас нет).
Нет, такой подход не сработает. Потому что будут тысячи перестроений отчёта, без единого запроса на его просмотр.

хорошо я согласен
Поэтому вопрос - какая есть практика такого чтения подобных триггеров из SSIS...
Триггер - это код. Его можно прочитать в Visual Studio, или в SSMS
Поэтому вопрос непонятен, что то наподобие "какая есть практика такого чтения подобных DLL из SSIS"?
Владислав Колосов
емнип, в Enterprise редакции подписки отчетов сами могут следить за изменением данных
Что вы имеете в виду? Если у меня есть прога построения отчёта, написанная на дельфи или питоне, то покупка какой либо лицензии на MSSQL заставит их отслеживать изменения данных?
5 ноя 19, 23:23    [22010291]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Remind
Member

Откуда: UK
Сообщений: 454
Сама 1С на какой субд крутится?
6 ноя 19, 01:40    [22010329]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
хорошо я согласен,

а "система отчета" - это что?
Если SSRS - то сразу такой сценарий вспомнился из прошлого - когда отчетность смотрела в операционный источник данных напрямую, без прослойки в виде еще одной аналитической БД или DWH - в отчетах самих есть функционал автообновления страницы, что под капотом влекло за собой и повторное выполнение запроса и всех DataSet'ов отчета - таким образом - оперативно отображались изменения.

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

Показалось похожим на ваш сценарий, нет?
6 ноя 19, 09:00    [22010402]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
PsyMisha,

Чуть дополню - пользователь вносит изменения в 1С, - так изменения сохраняются там в Справочниках, в Регистрах, в Документах. SQL-запрос в системе отчетности периодически раз в n-минут нужным образом выхватывает изменения и результирующий набор уже отправляется наверх, потребителю.

Если все так - то я бы вообще не стал заморачиваться с триггерами и прочим барахлом.
Триггер в СУБД - это зачастую замедление производительности, лишняя волокита, которую нужно сопровождать, лишние ограничения в будущем - к примеру - захотите перейти на последние технологии - in memory, temporal tables, да тот же ChangeDataTracking - и триггер станет шоустоппером, - а вы уже на него завязались полностью, и теперь вот надо думать, как избавляться

Тсс - я заметил - если произнести на датабазном форуме слово "in memory" - рядом где-то сразу появится гражданин Воронин :)
6 ноя 19, 09:08    [22010410]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
ShIgor
Member

Откуда: Нижний Новгород
Сообщений: 2223
(наболело выскажу свое мнение). Чем дольше работаю с подобной же тематикой (с 2011 года), тем больше прихожу к выводу, что 1С сама должна класть все изменения в заранее обговоренном формате в необходимое место по согласованному регламенту. Скорее всего, что следующим этапом и будет некое подобие шины данных с API, а в обязанностях разработчиков на 1С у нас, надеюсь, появится пункт о написании процедур доставки данных.
Я за это время прошел все варианты доставки данных из 1С в хранилище, кроме триггеров, которые даже никогда не рассматривались.
Последней реализацией стала связка change tracking + service broker.
Главные из минусов такого подхода: невозможность настройки отслеживания некоторых изменений по причине "вот такая у нас конфигурация", излишние срабатывания CT на обновления не нужные системе отчетности, необходимость постоянного контроля за метаданными (1С-ники у нас любят накатывать новые релизы без предупреждения), необходимость написания специальных процедур в ситуациях обрезки/переливки данных.
Если мне удастся продвинуть свою идею, то все проблемы этого плана уйдут, т.к. только разработчику 1С известен тот момент когда и какие данные готовы попасть в хранилище и ко мне, как ответственному за систему отчетности предприятия, больше не будет претензий по поводу нет данных или не оттуда взял. ответ будет один - "не положили".
6 ноя 19, 10:09    [22010490]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
alexeyvg,

Для энтерпрайз в репортинг сервисах появляется опция настройки отгрузки отчета по изменению данных. Но точно не скажу, если ли такое в стандарте. По-моему - нет.
6 ноя 19, 11:25    [22010580]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
Имеются в виду подписки. Для стандарта возможность подписки ограничена. Есть управляемые данными подписки и управляемые расписанием.
6 ноя 19, 11:27    [22010586]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
Владислав Колосов
Для энтерпрайз в репортинг сервисах появляется опция настройки отгрузки отчета по изменению данных. Но точно не скажу, если ли такое в стандарте. По-моему - нет.
При чём тут "репортинг сервис"???

ТС про него не писал.
6 ноя 19, 11:34    [22010600]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
alexeyvg,

а как Вы трактуете фразу "система отчета" в контексте форума SQL Server? Без указания это, конечно же, Reporting Services.
6 ноя 19, 12:04    [22010645]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
Да-да, пусть ТС и обозначит уже весь стек, нормально.
А то без него уже куча гипотез, а сам автор имеет честь не явиться на собрание.

P.S. - главное - не переусложнить вариант предложенного решения. Мне кажется все сильно проще, чем пишут и уже предлагают.
6 ноя 19, 12:52    [22010679]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
PsyMisha,

Согласен, как правило, делают так, как уже писали - 1С выгружает данные в файловый каталог, сервер забирает по расписанию (и наоборот). Всё очень просто.
6 ноя 19, 13:11    [22010699]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
Владислав Колосов,

Дак можно же вообще бесшовную интеграцию - прямые запросы в его БД и все
Даже файлы мне кажется - лишнее

И сиквелу и репортингу же все равно, с чем работать - с каким DataSource - CSV, Query, etc...
6 ноя 19, 13:47    [22010726]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Remind
Member

Откуда: UK
Сообщений: 454
Владислав Колосов,

Как-то по древнему. А что там насчет интеграции 1C и Kafka?
6 ноя 19, 13:53    [22010729]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
Remind
Владислав Колосов,

Как-то по древнему. А что там насчет интеграции 1C и Kafka?


Да нету у ТС Кафки
У него простое окружение, и теоретические размышления о том, как там оно в идеальном абстрактном мире - ему не нужно. Нужно лишь в его реалиях сделать что-то из максимально коробочных средств
6 ноя 19, 14:51    [22010803]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
ShIgor
Member

Откуда: Нижний Новгород
Сообщений: 2223
PsyMisha,

использование максимально коробочных средств кстати, ограничено лицензионным соглашением
+ Ответы на типовые вопросы по лицензированию "1С:Предприятия 8". Вопрос 65.

отсюда
Лицензионное соглашение не позволяет использовать недокументированные фирмой "1С" средства для построения решений на платформе "1С:Предприятие". Это означает, что средства СУБД (или любые другие внесистемные средства) можно использовать только в том случае, если документация по продуктам линейки "1С:Предприятие" (включая 1С:ИТС) содержит явную рекомендацию использовать данное средство для решения данной задачи.

Во всех остальных случаях лицензионное соглашение позволяет использовать для построения решений только штатные средства платформы. В частности, можно обращаться к данным информационной базы только при помощи объектов "1С:Предприятия", специально предназначенных для работы с данными (запросы, справочники, документы и т. д.). Нельзя обращаться к данным информационной базы напрямую, минуя уровень объектов работы с данными "1С:Предприятия", например при помощи средств СУБД или при помощи внешних компонент, которые реализуют прямой доступ к СУБД. Это ограничение распространяется на любые действия с данными, в том числе на изменение их структуры, а так же на чтение или изменение самих данных информационной базы или служебных данных "1С:Предприятия".

Данное ограничение необходимо для обеспечения стабильности работы механизмов системы, осуществления поддержки и возможности перехода на новые версии "1С:Предприятия".
6 ноя 19, 16:03    [22010878]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
PsyMisha,

прямые запросы не гарантируют повторяемость результата. Например, пришло очередной обновление.
6 ноя 19, 16:43    [22010922]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
Владислав Колосов
alexeyvg,

а как Вы трактуете фразу "система отчета" в контексте форума SQL Server? Без указания это, конечно же, Reporting Services.
Написано, отчёт делается в SSIS

То есть запускается DTS пакет, который создаёт выгрузку, например, Excel-файл.

Может, имеется в виду SSRS, а не SSIS, просто автор несколько раз опечатался, в нескольких постах?
6 ноя 19, 16:45    [22010923]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
alexeyvg,

я понял, что SSIS используется для 1С -> SQL Server, т.к. речь идет о триггере изменения данных.
6 ноя 19, 16:50    [22010927]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
Владислав Колосов
alexeyvg,

я понял, что SSIS используется для 1С -> SQL Server, т.к. речь идет о триггере изменения данных.
А я понял, что триггер изменения данных - это триггеры на таблицах с данными, а SSIS должен увидеть, что триггер сработал, и запустить перестроение отчёта.

хорошо я согласен
Поэтому вопрос - какая есть практика такого чтения подобных триггеров из SSIS... чтобы понимать, могу ли я работать с ним. Или сказать им "не пойдёт, отменяю заказ, делайте даты". Но в этом случае придётся каждые несколько секунд опрашивать - опять-таки, SSIS будет вечно крутиться и грузить сервер 1С своими опросами и каждый раз получать пустую таблицу по фильтру "за последние 5 секунд".
6 ноя 19, 16:56    [22010936]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Sergey Sizov
Member

Откуда:
Сообщений: 1448
Владислав Колосов
alexeyvg,

я понял, что SSIS используется для 1С -> SQL Server, т.к. речь идет о триггере изменения данных.
1C сама напрямую работает с SQL Server и ей никакие SSIS не нужны. А ТС хочет какую-то систему отчетов, внешнюю к SQL Server. А сие запрещено лицензией 1С. Да и сопровождать такую связку будет трудно ибо 1С в базе полноправно всё в базе может менять/меняет под себя при любом изменении конфигурации/платформы.
6 ноя 19, 17:03    [22010943]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
Sergey Sizov
А сие запрещено лицензией 1С
Но делают ведь...

Sergey Sizov
А сие запрещено лицензией 1С. Да и сопровождать такую связку будет трудно ибо 1С в базе полноправно всё в базе может менять/меняет под себя при любом изменении конфигурации/платформы.
Вообще, нужно делать запросы к БД, используя имена объектов из конфигурации 1С
Не знаю, много ли тех, кто так делает...
6 ноя 19, 17:39    [22010983]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6949
alexeyvg,

Вы сами же и процитировали подтверждение моего предположения: "SSIS будет вечно крутиться и грузить сервер 1С своими опросами".
6 ноя 19, 18:26    [22011024]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
ShIgor,

Так-то да, но! Если уже вопрос про триггеры пошел, - и именно датабазные триггеры, а не высокоуровневые триггеры-объекты уровня 1С, - то, думаю, read-only запросы к БД - это гораздо меньшее, чем изначальное предложение ТС выше :)
6 ноя 19, 23:28    [22011131]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
alexeyvg,

По моему опыту из прошлого - да, после наката изменений и обновлений конфигурации уровня самой 1С - нижлежайшая физическая датабазная структура может поехать. Но идентификация, выявление и устранение такого инцидента - копеешны, в реальном мире - пару DataSet'ов с несколькими inner join'ами внутри (утрирую) - утраченные описательные и ключевые поля - подсвечиваются в ssms IntelliSense, и выявить отсутствующее поле, спросив у разрабов 1С что там поменялось - дело в пределах 5-10 минут. Далее методология поддержки оттачивается, и такие редкие проблемы хлопот вообще не доставляют

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

Еще писали выше про обращение к объектам БД по логическуому имени, не по физическому.
Такое тоже возможно, все эти перечислители хранятся в физической таблице, которая вызывается обработкой "Структура метаданных" (как-то так, навскидку вроде), и реально представляет из себя тупой маппинг, который раскладывается в виде полей и описаний. Можно, конечно, динамическим sql-кодом генерить уровень запросов к этому представлению, и строить скрипты уровня DAL программно. Такие решения видел, частично делал, они рабочие, но их сложно дебажить, и intelliSense тут не поможет - так как там динамика в динамике, курсоры с кучами кавычек, и при первом приближении вызывает лишь печаль и ощущение конкретного гомномеса.
6 ноя 19, 23:38    [22011135]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
PsyMisha
По моему опыту из прошлого - да, после наката изменений и обновлений конфигурации уровня самой 1С - нижлежайшая физическая датабазная структура может поехать. Но идентификация, выявление и устранение такого инцидента - копеешны, в реальном мире - пару DataSet'ов с несколькими inner join'ами внутри (утрирую) - утраченные описательные и ключевые поля - подсвечиваются в ssms IntelliSense, и выявить отсутствующее поле, спросив у разрабов 1С что там поменялось - дело в пределах 5-10 минут. Далее методология поддержки оттачивается, и такие редкие проблемы хлопот вообще не доставляют
А, понятно, я думал, что апдэйт 1С вообще меняет все имена таблиц и полей на новые.

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

PsyMisha
Еще писали выше про обращение к объектам БД по логическуому имени, не по физическому.
Такое тоже возможно, все эти перечислители хранятся в физической таблице, которая вызывается обработкой "Структура метаданных" (как-то так, навскидку вроде), и реально представляет из себя тупой маппинг, который раскладывается в виде полей и описаний. Можно, конечно, динамическим sql-кодом генерить уровень запросов к этому представлению, и строить скрипты уровня DAL программно. Такие решения видел, частично делал, они рабочие, но их сложно дебажить, и intelliSense тут не поможет - так как там динамика в динамике, курсоры с кучами кавычек, и при первом приближении вызывает лишь печаль и ощущение конкретного гомномеса.
Ещё, слышал, применяли что то вроде сишного прекомпайлера, и делали замены по сгенерённому из конфиг-файла файлу макро-определений.

То есть в проекте в запросах (хранимых процедурах) используются логические имена таблиц, а потом запуском компилятора генерится сиквельный код для деплоя.
7 ноя 19, 00:55    [22011155]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
alexeyvg
А, понятно, я думал, что апдэйт 1С вообще меняет все имена таблиц и полей на новые.


Да, не каждый апдейт, не каждый. У меня было несколько лет назад DWH, которое базировалось ODS на Axapta и 1С, и с одинэсной частью были проблемы - ну грубо - раза 2-3 в полгода. И проблемы реально минорные - которые разрешались в несколько минут буквально.


PsyMisha

Ещё, слышал, применяли что то вроде сишного прекомпайлера, и делали замены по сгенерённому из конфиг-файла файлу макро-определений.


Ну да, или так - наверное решение будет лучше и наглядней, чем полу-подьемный динамический t-sql код - хоть все инкапсулировано будет и по классам распихано и IntelliSense от Visual Studio.
7 ноя 19, 08:47    [22011194]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
хорошо я согласен
Member

Откуда:
Сообщений: 353
PsyMisha
Да-да, пусть ТС и обозначит уже весь стек, нормально.

SQL Server Enterprise+PowerBI (без SSRS. Он нужен вообще?, - когда есть PowerBI)
7 ноя 19, 10:07    [22011250]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
хорошо я согласен
PsyMisha
Да-да, пусть ТС и обозначит уже весь стек, нормально.

SQL Server Enterprise+PowerBI (без SSRS. Он нужен вообще?, - когда есть PowerBI)
Так, а что означает "обновляет отчёт"? Просто смотрит PowerBI-визуализацию?

Тогда тут есть 2 варианта:

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

2. PowerBI для построения отчёта использует сохранённую у себя копию данных, а копия обновляется по неким правилам. Тут нужно поспрашивать в форумах по PowerBI, в этом разделе знатоков будет немного. Но из моего опыта - в PowerBI нет таких сложных схем для отслеживания обновления данных, которые вам нужны. Максимум - вы сможете получить АПИ, которое позволит инициировать обновление локальных данных.
7 ноя 19, 10:15    [22011262]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
хорошо я согласен
без SSRS. Он нужен вообще?, - когда есть PowerBI
У них немного разное позиционирование.
SSRS - средство разработки/среда исполнения отчётов
PowerBI - инструмент исследования данных для не-программистов.

Соответственно, PowerBI пользоваться проще, но возможностей для построения отчётов намного меньше.
7 ноя 19, 10:17    [22011265]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
хорошо я согласен
Member

Откуда:
Сообщений: 353
alexeyvg
Владислав Колосов
alexeyvg,

а как Вы трактуете фразу "система отчета" в контексте форума SQL Server? Без указания это, конечно же, Reporting Services.
Написано, отчёт делается в SSIS

То есть запускается DTS пакет, который создаёт выгрузку, например, Excel-файл.

Может, имеется в виду SSRS, а не SSIS, просто автор несколько раз опечатался, в нескольких постах?

я аж перечитывать свою писанину дёрнулся. Я такого не писал!) вопрос лишь в том, как лучше интегрироваться с 1С.
Перечитал все ответы, есть интересные мнения.
7 ноя 19, 10:46    [22011304]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
хорошо я согласен
Member

Откуда:
Сообщений: 353
alexeyvg
Тогда тут есть 2 варианта:

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

2. PowerBI для построения отчёта использует сохранённую у себя копию данных, а копия обновляется по неким правилам. Тут нужно поспрашивать в форумах по PowerBI, в этом разделе знатоков будет немного. Но из моего опыта - в PowerBI нет таких сложных схем для отслеживания обновления данных, которые вам нужны. Максимум - вы сможете получить АПИ, которое позволит инициировать обновление локальных данных.

PowerBI использует прямое соединение, т.к. обновление локальной базы возможно только 8 раз в сутки, плюс задолбаюсь сопровождать десятки отчётов, в каждом из которых прописывать меры и пр. - всё на сервере (OLAP)
7 ноя 19, 10:50    [22011309]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29549
хорошо я согласен
я аж перечитывать свою писанину дёрнулся. Я такого не писал!)
Всё таки из ваших постов было не очень понятно, как там у вас всё построено :-)

хорошо я согласен
PowerBI использует прямое соединение
Тогда возвращаемся к вопросу стартового топика:
хорошо я согласен
Связка
1С -> SQL Server -> система отчёта.

Пользователь вводит инфу в 1С, обновляет отчёт - и видит результат.
Чтобы это реализовать, надо подписаться как-то на изменения в 1С -т.е. поступают изменения, срабатывает триггер.
Какая существует практика таких "онлайн" обновлений? ETL сам по себе, в общем-то, предназначен для обновления по таймеру. Или я что-то о нём не знаю?

У вас PowerBI использует прямое соединение к базе данных 1С, и, когда пользователь смотрит отчёт, то он видит актуальные данные, которые в этой базе.

Тогда непонятно, в чём проблема, кого нужно "онлайн-обновлять"?
7 ноя 19, 10:54    [22011314]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
alexeyvg
Тогда непонятно, в чём проблема, кого нужно "онлайн-обновлять"?


Вот-вот

Почему бы не воспользоваться этим, и отчеты бы просто выдергивали и не отображали новые/измененные данные?
Какие триггеры тогда будут нужны еще?

Ну сделать автообновление раз в 1 минуту - сможет скрипт под капотом предоставлять данные в этот промежуток? И как раз и покроет таким полу-онлайном проблему доставки изменений, которые триггер - да, - смог бы моментально делать доставку? А нужна ли она реально, - эта "моментальность"?
7 ноя 19, 12:48    [22011433]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
хорошо я согласен
без SSRS. Он нужен вообще?, - когда есть PowerBI)


По-моему SSRS не лицензируется отдельно, в том ее и преимущества. И вообще преимущества BI-стека от Microsoft

https://social.technet.microsoft.com/Forums/ru-RU/dda86a08-560c-4bbd-b629-0e8c00e2f9bf/-server2012r2-sql-ssrs-?forum=licenseru
7 ноя 19, 12:55    [22011443]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
Sergey Sizov
А ТС хочет какую-то систему отчетов, внешнюю к SQL Server. А сие запрещено лицензией 1С.


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

А то Web-сервисов не обпишешься, чтобы все из одинэски забирать, каждый чих
7 ноя 19, 15:58    [22011652]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 3998
PsyMisha
хорошо я согласен,

а "система отчета" - это что?
Если SSRS - то сразу такой сценарий вспомнился из прошлого - когда отчетность смотрела в операционный источник данных напрямую, без прослойки в виде еще одной аналитической БД или DWH - в отчетах самих есть функционал автообновления страницы, что под капотом влекло за собой и повторное выполнение запроса и всех DataSet'ов отчета - таким образом - оперативно отображались изменения.

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

Показалось похожим на ваш сценарий, нет?


В какой-то момент вы положите исходную БД и вам закроют туда доступ. И встанет вопрос о том, чтобы делать нормальное хранилище.
7 ноя 19, 16:12    [22011660]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
a_voronin,

Окей, а как делать нормальное хранилище, если у него ODS - 1C? Обложить последний целиком и полностью здоровой пачкой Web-сервисов?
7 ноя 19, 16:26    [22011674]     Ответить | Цитировать Сообщить модератору
 Re: SSIS - как подписаться на веб-сервис 1С? Или это вообще не для SSIS?  [new]
PsyMisha
Member

Откуда: другая столица
Сообщений: 468
a_voronin

В какой-то момент вы положите исходную БД


Вопрос тоже обсуждаемый. Как положу? Блокировками и нецелостностью?

Есть опция - предлагал уже в каком-то треде, как пример - 1С БД кладется в mirroring, и на secondary инстансе мы реплику, которая продолжает накатывать транзакции - забираем для доступа на чтение через БД-снепшот.
Далее - в ETL-процессах - работаем только со снепшотом БД 1С
Вопрос блокировок решен - профит.
Правда, в такой схеме есть еще момент блокировок уровня Схемы - иногда они бывают и процесс создания снепшота может уйти в дэдлок - но случай не частый
7 ноя 19, 16:31    [22011678]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2      [все]
Все форумы / Microsoft SQL Server Ответить