Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Создание DTS Package / 7 сообщений из 7, страница 1 из 1
31.08.2001, 07:56
    #32013236
rmax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Можно ли создать пакет DTS с параметрами, не используя VBScript (т.е создать хранимую процедуру, использующую возможности DTS)?
...
Рейтинг: 0 / 0
31.08.2001, 08:23
    #32013238
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Если честно, то из вашего вопроса совершенно непонятно, что вам собственно нужно.

>Можно ли создать пакет DTS с параметрами
Можно использовать DTS Global Variables как для передачи параметров внутрь DTS, так и из него.

>Можно ли создать пакет DTS с параметрами, не используя VBScript
Не используя для чего - для создания DTS, для создания/чтения/обновления DTS Global Variables, вообще не используя VBScript внутри DTS ?


>т.е создать хранимую процедуру, использующую возможности DTS
Хранимая процедура, использующая возможности DTS - это процедура, которая запускает готовый DTS или логически работающая как какой-то DTS ? Или нужно реализовать в процедуре отдельные Task-и, которые есть в DTS?
...
Рейтинг: 0 / 0
03.09.2001, 02:39
    #32013334
rmax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Спасибо за внимание к вопросу. Дело в том, что нужно передать данные на сервер, используя в качестве источника Excel-таблицу. Имя источника заранее неизвестно, а процесс хотелось бы автоматизировать (аплоадим Excel через Сеть, потом переносим данные в SQL Server). Я создал пакет DTS, но он настроен на конкретный файл. Со скрипт-языками просто связываться неохота (хотя придется, если не будет других вариантов). Хотелось бы создать хранимую процедуру, которая бы перебрасывала данные.
...
Рейтинг: 0 / 0
03.09.2001, 06:56
    #32013348
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Вроде можно только из скрипт-языков или исползуя КОМ из ХП. Я думаю, лучьше сделать специальную табличку и ...
...
Рейтинг: 0 / 0
03.09.2001, 07:12
    #32013350
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Решений я могу предложить 2

1. Все-таки DTS и VBScript, который динамически меняет свойство Excel Connection-a. Взято из работающего DTS-а. Данный пример формирует имя входного файла в виде COM_EE_yymmdd.XLS в зависимости от текущей даты


Function Main()
Dim dtsPackage
Set dtsPackage = DTSGlobalVariables.Parent

Dim dtsExcelConnection
'"Input File" - название моего Excel Connection-a
Set dtsExcelConnection = DtsPackage.Connections("Input File")

'Formating new input file name from current Date and Time
Dim InputFilename
'Путь до файла занесен в Global Variables "WorkDirectory" потому, что используется
' еще в других Task-ах. Можно и напрямую прописать в скрипте.
InputFilename = DTSGlobalVariables("WorkDirectory").Value + "COM_EE_" + Right(CStr(Year(Now)), 2)
If Month(Now) < 10 Then
InputFilename = InputFilename + "0"
End If
InputFilename = InputFilename + Cstr(Month(Now))

If Day(Now) < 10 Then
InputFilename = InputFilename + "0"
End If
InputFilename = OutputFilename + Cstr(Day(Now))

InputFilename = InputFilename + ".XLS"
dtsExcelConnection.DataSource = InputFilename


Main = DTSTaskExecResult_Success
End Function


2. Создание Linked Server-а

exec sp_addlinkedserver @server = 'MyExcel', @srvproduct = 'Excel', @provider = 'Microsoft.Jet.OLEDB.4.0'
, @datasrc = ' full_path_to_excel_file ' , @provstr = 'Excel 5.0'

/*sp_addlinkedserver должна выполняться в отдельном batch-e*/
go

/*select подразумевает любую процедуру(ы)*/
select * from myexcel...sheet1$

exec sp_dropserver @server = 'MyExcel'


Лично мне больше нравиться DTS
...
Рейтинг: 0 / 0
03.09.2001, 08:35
    #32013355
Дед Маздай
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Можно абсолютно без скрипта. В SQL Server 2000 появилась совершенно замечательная задача Dynamic Properties Task, которая позволяет делать разные замечательные вещи, в том числе и отвечает на Ваш вопрос. Создаем абсолютно dummy соединение с Excelным файлом. Заводим Dynamic Properties Task. Открываем ее св-ва, говорим Add, слева среди Connections выбираем этот самый Excel, справа в свойствах выбираем его DataSource и говорим Set. Вверху в комбобоксе выбираем, откуда будет браться значение для строки соединения, например, из глобальной переменной пакета, выбираем эту переменную и говорим ОК. После этого при запуске пакета указываем значение этой переменной: см. ключ /A утилиты dtsrun.
...
Рейтинг: 0 / 0
03.09.2001, 09:49
    #32013369
rmax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание DTS Package
Спасибо большое всем, особенно деду Маздаю!
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Создание DTS Package / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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