Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Execute SQL Task - результат в XML  [new]
SanZ
Member

Откуда:
Сообщений: 42
помогите примером, как в SSIS результат Execute SQL Task перегнать в XML документ ?
29 апр 08, 10:42    [5606869]     Ответить | Цитировать Сообщить модератору
 Re: Execute SQL Task - результат в XML  [new]
Checkpoint
Member

Откуда:
Сообщений: 223
никто не знает тут как это делается?
4 июн 08, 11:11    [5757186]     Ответить | Цитировать Сообщить модератору
 Re: Execute SQL Task - результат в XML  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Ну, как обычно - пишете запрос с предложением FOR XML, а в настройках выставляете сохранение в XML. Ничего сложного.
4 июн 08, 12:21    [5757689]     Ответить | Цитировать Сообщить модератору
 Re: Execute SQL Task - результат в XML  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Или у вас трудности с выгрузкой в файл?
Тогда - https://www.sql.ru/forum/actualthread.aspx?tid=364992&hl=execute+sql+task+%f0%e5%e7%f3%eb%fc%f2%e0%f2+xml

Или ещё способ. После задачи выполнения SQL создаете в пакете Script Task со следующим кодом:

Public Class ScriptMain

	Public Sub Main()

        Dim errorInfo As String = ""

        Dim Contents As String = ""


        Dts.Variables.Item("FullPathXMLFile").Value = Dts.Variables.Item("PathFileXML").Value.ToString() & "\".ToString() & Dts.Variables.Item("FileXMLName").Value.ToString()
        MsgBox(Dts.Variables.Item("XMLDocBody").Value.ToString())

        Contents = Dts.Variables("XMLDocBody").Value.ToString().Substring(6, Dts.Variables("XMLDocBody").Value.ToString().Length - 13)
        'MsgBox(Contents.ToString())

        WriteVariableContents(Dts.Variables.Item("FullPathXMLFile").Value.ToString(), Contents)




        'MsgBox(Dts.Variables.Item("FullPathXMLFile").Value.ToString())

		Dts.TaskResult = Dts.Results.Success
	End Sub

    Public Sub WriteVariableContents(ByVal filePath As String, ByVal contents As String)

        Dim objWriter As IO.StreamWriter

        Try

            objWriter = New IO.StreamWriter(filePath)

            objWriter.Write(contents)

            objWriter.Close()

        Catch Ex As Exception

            MsgBox(Ex.Message)

        End Try

    End Sub

End Class
Где переменные:
FullPathXMLFile - полный путь для сохраняемого файла,
PathFileXML - путь к папке, куда будет сохранен файл,
FileXMLName - имя самого файла,
XMLDocBody - переменная, в которую в Execute SQL Tasck был сохранен XML-result.
4 июн 08, 12:42    [5757885]     Ответить | Цитировать Сообщить модератору
 Re: Execute SQL Task - результат в XML  [new]
Checkpoint
Member

Откуда:
Сообщений: 223
Большое спасибо!
5 июн 08, 10:56    [5762656]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Execute SQL Task - результат в XML  [new]
kvn75
Member

Откуда: Москва
Сообщений: 18
Спасибо!
8 ноя 12, 08:48    [13437426]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить