Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

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

Подскажите, пжл, есть ли возможность выполнить программно (C#) пакет разработанный в project deployment model без разворачивания его в SSIS каталоге.

Если вопрос задан не в той ветке - подскажите, пжл, куда перенести.


1. Есть кончено: The Microsoft.SqlServer.Management.IntegrationServices namespace contains the classes and interfaces to manage the Integration Services catalog on an instance of SQL Server.
Но это уже работает непосредственно на каталоге.


2. DTEXEC умеет выполнять пакет из .ispac project file

When you use dtexec to run a package from the .ispac project file, the related options are: /Proj[ect] and /Pack[age] that are used to specify the project path and package stream name.

DTEXEC как-то умеет это делать. Как сделать тоже самое без DTEXEC используя С#

Буду благодарен за любые ссылки, статьи, комментарии.
17 апр 15, 12:24    [17528538]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Glory
Member

Откуда:
Сообщений: 104751
https://msdn.microsoft.com/en-us/library/ms136090.aspx?f=255&MSPPError=-2147217396
17 апр 15, 13:56    [17529299]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

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

Спасибо за ссылку. Вот только Microsoft.SqlServer.ManagedDTS не работает с project deployment model.
ну а Microsoft.SqlServer.Management.IntegrationServices работает только с паком уже лежащем на SSIS.
17 апр 15, 15:22    [17529893]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Glory
Member

Откуда:
Сообщений: 104751
Павел-П
Спасибо за ссылку. Вот только Microsoft.SqlServer.ManagedDTS не работает с project deployment model.

Разумеется. Ведь project - это не готовый пакет.
Вы хотите из C# эмулировать работу студии что ли ?
17 апр 15, 15:26    [17529915]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Glory
Member

Откуда:
Сообщений: 104751
Павел-П
ну а Microsoft.SqlServer.Management.IntegrationServices работает только с паком уже лежащем на SSIS.

Что такое "лежащий на SSIS" ?

To load a package programmatically on the local computer, whether the package is stored locally or remotely, call one of the following methods:
Storage Location Method to Call
File - LoadPackage
SSIS Package Store - LoadFromDtsServer
SQL Server - LoadFromSqlServer
17 апр 15, 15:28    [17529931]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

Откуда:
Сообщений: 234
Glory
Павел-П
Спасибо за ссылку. Вот только Microsoft.SqlServer.ManagedDTS не работает с project deployment model.

Разумеется. Ведь project - это не готовый пакет.
Вы хотите из C# эмулировать работу студии что ли ?


1. Я хочу из С# вызвать на исполнение пакет (project deployment model), которые лежит не в SSIS Catalog.
DTEXEC это как-то умеет делать.
Вот только как? Через какое API?

2. "Ведь project - это не готовый пакет."
Не совсем понял, что вы хотите этим сказать. Есть SSIS проект, есть у проекта понятие deployment model. Ну и есть сам пакет, который разрабывается либо в project deployment model (проекте) или package.
17 апр 15, 15:32    [17529954]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

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

сорри, немного неправильно выразился. Не лежащий в SSIS каталоге.
17 апр 15, 15:33    [17529966]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Glory
Member

Откуда:
Сообщений: 104751
Павел-П
1. Я хочу из С# вызвать на исполнение пакет (project deployment model), которые лежит не в SSIS Catalog.

А где же он тогда "лежит" ?

Павел-П
Не лежащий в SSIS каталоге.

А где же он тогда "лежит" ?

Павел-П
Есть SSIS проект, есть у проекта понятие deployment model. Ну и есть сам пакет, который разрабывается либо в project deployment model (проекте) или package.

И как мне узнать, где внутри файла проекта начинается и заканчивается пакет ?
17 апр 15, 15:39    [17529997]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4452
Павел-П
Glory,

сорри, немного неправильно выразился. Не лежащий в SSIS каталоге.

Что из этого вызвывает у вас затруднения?
      pkgLocation = 
        @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" +
        @"\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx";
      app = new Application();
      pkg = app.LoadPackage(pkgLocation, null);
      pkgResults = pkg.Execute();
17 апр 15, 15:43    [17530029]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

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

Давайте попробую объяснить еще раз.

1. У вас есть SSIS project с project deployment model.
2. В этом проекте у Вас есть много пакетов.
3. В Visual Studio вы можете открыть любой из пакетов в рамках проект и выполнить.
4. Также я могу выполнить любой пакет из .ispac project file используя DTEXEC
5. Какое API надо использовать, чтобы из C# кода выполнить SSIS пакет из прокта с project deployment model.
6. Microsoft.SqlServer.Management.IntegrationServices работает только с паком, который уже лежит в SSIS каталоге.
17 апр 15, 15:44    [17530033]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

Откуда:
Сообщений: 234
SQL2008
Павел-П
Glory,

сорри, немного неправильно выразился. Не лежащий в SSIS каталоге.

Что из этого вызвывает у вас затруднения?
      pkgLocation = 
        @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" +
        @"\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx";
      app = new Application();
      pkg = app.LoadPackage(pkgLocation, null);
      pkgResults = pkg.Execute();


не отработает у вас LoadPackage на паке из project deployment model если у вас Project Parameters, Project Connections
посмотрите, что в самом файле пака хранится в этом случае, увидите много интересного. Он не сможет поднять все что сконфигурировано через Project Parameters, Project Connections
17 апр 15, 15:45    [17530046]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Glory
Member

Откуда:
Сообщений: 104751
Павел-П
5. Какое API надо использовать, чтобы из C# кода выполнить SSIS пакет из прокта с project deployment model.

Наверное API Visual Studio. Ведь именно Visual Studio знает где и как в проекте записаны эти "много пакетов"
17 апр 15, 15:46    [17530055]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4452
Павел-П
Microsoft.SqlServer.Management.IntegrationServices работает только с паком, который уже лежит в SSIS каталоге.

Кто вам это сказал?
17 апр 15, 15:46    [17530057]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

Откуда:
Сообщений: 234
SQL2008
Павел-П
Microsoft.SqlServer.Management.IntegrationServices работает только с паком, который уже лежит в SSIS каталоге.

Кто вам это сказал?


Документация.

https://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.integrationservices.aspx

The Microsoft.SqlServer.Management.IntegrationServices namespace contains the classes and interfaces to manage the Integration Services catalog on an instance of SQL Server.
17 апр 15, 15:48    [17530072]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

Откуда:
Сообщений: 234
Glory
Павел-П
5. Какое API надо использовать, чтобы из C# кода выполнить SSIS пакет из прокта с project deployment model.

Наверное API Visual Studio. Ведь именно Visual Studio знает где и как в проекте записаны эти "много пакетов"


Наверное да :-). Просто проблематично использовать Наверное API Visual Studio. :-)
17 апр 15, 15:50    [17530089]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
Павел-П
Member

Откуда:
Сообщений: 234
SQL2008
Павел-П
Microsoft.SqlServer.Management.IntegrationServices работает только с паком, который уже лежит в SSIS каталоге.

Кто вам это сказал?


Судя по вашему логину SQL2008 есть вероятность, что вы не сталкивались с project deployment model. Она появилась только в 2012 :-)
17 апр 15, 15:51    [17530098]     Ответить | Цитировать Сообщить модератору
 Re: SSIS 2012.Как выполнить пакет(project deployment model) не разворачивая его в SSISкаталоге  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4452
Павел-П
SQL2008
пропущено...

Кто вам это сказал?


Судя по вашему логину SQL2008 есть вероятность, что вы не сталкивались с project deployment model. Она появилась только в 2012 :-)

Извините, забыл проапгрейдить логин!
Ну а если серъезно, то пакеты, с которыми я работаю, в том числе и 2012, все параметры хранят в PackageConfiguration.
Хотя, скажу честно, из кода не запускал.
17 апр 15, 16:01    [17530179]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить