Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Есть DTS пакет сохраненный на сервере. Хочу запустить его их хранимой процедуры. declare @opkg int declare @hr int exec @hr = sp_oacreate 'dts.package', @opkg out EXEC @hr = sp_oamethod @oPKG, 'LoadFromSqlServer', NULL, @ServerName='UIIS', @PackageName='pk1', @Flags=256 EXEC @hr = sp_oamethod @opkg, 'Execute' EXEC @hr = sp_OADestroy @opkg Значение @hr после каждого вызова процедуры равно 0. То есть выполнилось без ошибок. А результата нет (в пакете выводится таблица в файл). Если запустить пакет их EM все ОК. SQL Server 7.0 В чем может быть проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2001, 13:28 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
IMHO через OLE объект можно выполнять только DTS пакет, который записан как .dts файл(внешний по отношению к SQL серверу). А для запуска DTS пакета, хранящегося на сервере, можно использовать утилиту dtsrun ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2001, 13:50 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Странно. Пример взял на каком то сайте. Да и метод LoadFromSQLServer судя из названия предназначен именно для этого. А вот LoadFromStorageFile для запуска из файла. Может я чего то не понял ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2001, 13:58 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Как не старался а DTS пакет не запустился. Если у кого то есть примеры запуска DTS пакета при помощи OLE Automation поделитесь plz. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 08:46 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Что-то я не пойму, если вам нужно запускать DTS пакет []из хранимой процедуры, то IMHO утилита dtsrun как раз для этого и предназначена. Можно еще создать Job на выполнение DTS пакета и запускать этот Job с помощью sp_start_job. Или есть какая-то особенная необходимость(или может быть выгода) от использования именно OLE Automation. IMHO это будет медленее, чем предложенные выше способы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 08:55 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Да необходимость запуска средствами Ole есть. В зависимости от входных параметров процедуры будут меняться свойства DTS пакета, кроме как через Ole я этого не сделаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 09:12 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
ВСЕ свойства DTS пакета могут быть заданы(созданы, удалены, изменены) либо с помощью входных переменных, либо внутри самого пакета с помощью AciveX Script Task и Dynamic Properties Task. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 09:31 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
А как я с помощью dtsrun передам параметы, ведь я немогу инициализировать глобальные переменные через dtsrun. Например пакет выводит таблицу в файл. Файл выводиться в каталог заданный пользователем. Как мне изменять значение DataSource. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 09:57 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
1-ый способ По порядку с самого начала 1. New Package 2. Создаем Connection к нужной базе (Microsoft OLE DB Provider for SQL) 3. Создаем Text File(Destination) Connection - File name задаем любое, устанавливаем параметры(Delemited/Fixed, ...) 4. Создаем Package Global Variable - в меня - Package - Properties - Global variables например подд именем OutputFileName, тип - string, value - неважно 5. Создаем Dynamic Properties Task - в нем Add... - находи в дереве наш Text File(Destination) Connection - у него справа в списке Properties выбираем DataSource - кнопка Set... - в диалоге выбираем Source-Global Variable, a Source Information-Variable нашу переменную OutputFileName - OK - OK. 6. Связываем Dynamic Properties Task и Microsoft OLE DB Provider for SQL через Workflow On Success. 7. Записываем пакет под именем MyPackage. Теперь переходим в Query Analyzer exec master..xp_cmdshell 'dtsrun /S mysqlserver /NMyPackage /E /AOutputFileName:8=c:\mydir1\out1.txt' go exec master..xp_cmdshell 'dtsrun /S mysqlserver /NMyPackage /E /AOutputFileName:8=c:\mydir2\out2.txt' go Получаем 2 файла в разных директорях. Ключ /E используется для trusted connection к SQL-ю, его можно заменить на комбинацию /Uusername /Ppassword ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 10:32 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
2-ой способ Пункты 1-4 из способа 1 повторяем 5. Создаем ActiveX Script Task со следующим кодом Function Main() Dim dtsPackage Set dtsPackage = DTSGlobalVariables.Parent Dim dtsTextConnection Set dtsTextConnection = DtsPackage.Connections("Text File(Destination)") dtsTextConnection.DataSource = DTSGlobalVariables("OutputFileName").Value Main = DTSTaskExecResult_Success End Function 6. Связываем ActiveX Script Task и Microsoft OLE DB Provider for SQL через Workflow On Success. Запуск пакета осуществляем как и в предыдущем способе. Лучше всем объектам в пакете давать какие-нибудь "нормальные" имена, для более удобных и наглядных манипуляций ими в ActiveX Script Task и Dynamic Properties Task. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 10:47 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Должно работать на SQL Server 7.0 . Способ предлагаемый тобой работает на 2000. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 10:54 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Лучше о версии используемого SQL-я сообщать в 1-ом сообщении темы, а не в последнем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 11:02 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Извиняюсь за наезд - это у меня чт-то плохо с глазами. А разве 2-ой вариант на SQL 7-ом то же не работает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 11:04 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
В BOL для dtsrun не описанна возможность инициализации глобалных переменных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 11:16 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
А вы случайно свои премеры запуска пакетов не отсюда брали http://www.swynk.com/friends/green/dtsole3.asp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 11:38 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Не с этой статьи, но с этого сайта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 12:57 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Не с этой статьи, но с этого сайта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 12:57 |
|
||
|
Почему не запускаеться DTS пакет.
|
|||
|---|---|---|---|
|
#18+
Просто в вашем примере я не вижу строк -- Evaluate Security and Build LoadFromSQLServer Statement IF @IntSecurity = 0 SET @Cmd = ' LoadFromSQLServer ("' + @Server +'", "' + SUSER_SNAME() + '", "' + @ServerPWD + '", 0, "' + @PkgPWD + '", , , "' + @PkgName + '")' ELSE SET @Cmd = ' LoadFromSQLServer ("' + @Server +'", "", "", 256, "' + @PkgPWD + '", , , "' + @PkgName + '")' Может быть в этом дело ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2001, 13:42 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32015486&tid=1825284]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 260ms |
| total: | 441ms |

| 0 / 0 |
