powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / задать Global Variable в запускаемом DTS
9 сообщений из 9, страница 1 из 1
задать Global Variable в запускаемом DTS
    #32032095
Фотография AnS1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть DTS пакет 1. В нем обяъвлена переменная 1.
Есть DTS пакет 2. В нем обяъвлена переменная 2.
Из DTS пакета 1 происходит запуск DTS пакета 2, при этом необходимо присвоить переменной 2 вторго пакета значение переменной 1 первого пакета.
Вроде ясно, что нужен ActiveX скрипт, вопрос - какой?
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032114
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL 7 ?
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032134
Фотография AnS1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2000
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032141
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понял - а зачем тогда ActiveX ? В Execute Package Task для этого есть специальная закладка Outer Package Global Variable.
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032270
Фотография AnS1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из прогрраммы нужно назначить параметры, пусть даже так - из одного пакета запускаем другой, параметры первого должны быть назначены второму
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032302
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По порядку

1. Если в DTS пакет 1 через вы Execute Package Task запускаете DTS пакет 2, то там есть закладка Outer Package Global Variables, в которой можно задать переменные DTS пакет 1 , передаваемые в DTS пакет 2.

2. Для запуска DTS пакета из командной строки есть утилита dtsrun, у которой для инициализации переменных имеется специальный ключ /A. Подробности использования в BOL
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032310
Фотография AnS1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по порядку
1 не хочу РУКАМИ задавать параметры
2 хочу использовать задачу запуска пакета, а не задачу запуска из командной строки (почему - не скажу)

собственно, нужные методы для объекта данного типа (ExecutePackageTask) я нашел, есть и свойство InputGlobalVariableNames, которое собственно "returns or specifies a list of Data Transformation Services (DTS) global variable names that are to be used as parameters in a query or created in a subpackage."
но вот использовать его не получается. Объект создается (в MsgBox имя получить могу :)), а при использовании свойства пишет, что данное свойство/метод не найдены.
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032317
tavis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ответа на поставленный вопрос не имею , но быть может Вам пригадиться этот скрипт найденный мной в одной вумной книжке

'**********************************************************************

' Visual Basic ActiveX Script

'************************************************************************

Function Main()

Dim oPackage, oTask, oPumpTask

Dim oRS, strSQL

Dim oConn,strNewName



'Get the Global recordset

Set oRS = DTSGlobalVariables("rsState").Value

If Not oRS.EOF AND Not oRS.BOF Then



'Change the value of the file name on the connection

Set oPackage = DTSGlobalVariables.parent

Set oConn = oPackage.Connections(2)

strNewName = oConn.DataSource

strNewName = Left(strNewName, _

(Len(strNewName) - (Len(strNewName) - InStrRev(strNewName,"\"))))

strNewName = strNewName & "pubs" & oRS(0) & ".txt"

oConn.DataSource = strNewName



'Set global variable with state from the recordset

DTSGlobalVariables("State") = oRS(0)



End If

'Clean Up

Set oPumpTask = Nothing

Set oTask = Nothing

Set oPackage = Nothing

Set oConn = Nothing



Main = DTSTaskExecResult_Success

End Function
...
Рейтинг: 0 / 0
задать Global Variable в запускаемом DTS
    #32032903
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>но вот использовать его не получается. Объект
>создается (в MsgBox имя получить могу :)), а при
>использовании свойства пишет, что данное
>свойство/метод не найдены

msgbox dtsTask.Properties("InputVariableNames").Value
dtsTask.Properties("InputVariableNames").Value = "gv1;gv2"
msgbox dtsTask.Properties("InputVariableNames").Value
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / задать Global Variable в запускаемом DTS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]