Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DTS. Необходимо написать Task. / 4 сообщений из 4, страница 1 из 1
10.10.2002, 10:53:50
    #32056938
BootMaker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DTS. Необходимо написать Task.
Спасибо Глори за ссылку.
Продолжу тему.

Делаю DTS Package, возникла необходимость форматировать Excel файл после импорта в него. Кроме как черех ActiveX Task ничего в голову не лезет.
Все упирается в отсутствие нормальной документации именно по Script-у, позволяющей научиться общаться с Excel. Стандартные приемы работы VB иногда прокатывают, иногда- нет. Приходится действовать наугад.
Ну нет в script-е класса excel.Application.
Откуда плясать?
...
Рейтинг: 0 / 0
10.10.2002, 12:12:12
    #32056982
VVG_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DTS. Необходимо написать Task.
А какой-нибудь шаблон екселевский не получается прикрутить?
...
Рейтинг: 0 / 0
10.10.2002, 12:19:29
    #32056990
Валентин
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DTS. Необходимо написать Task.
Здравствуйте.
У меня версия SQL:
Microsoft SQL Enterprise Manager
Microsoft Corporation
Версия: 8.0

И в ней есть connection Excel.

Microsoft OLE DB Provider for SQL Server -->Запрос --->
Microsoft Excel 97-2000
...
Рейтинг: 0 / 0
10.10.2002, 12:35:52
    #32056998
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DTS. Необходимо написать Task.
Не пойму в чем у вас проблема.
Вот пример самого простого форматирования

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
'**********************************************************************
'  Visual Basic ActiveX Script
'************************************************************************

Function Main()

	Dim FileName
	FileName = DTSGlobalVariables( "OutputFileFullName" ).Value

	Dim fso
	Set fso = CreateObject( "Scripting.FileSystemObject" )

	Main = DTSTaskExecResult_Failure
	If (fso.FileExists(FileName)) Then
		Dim objXL
		Set objXL = CreateObject( "Excel.Application" )

		objXL.Visible = FALSE
		objXL.WorkBooks.Open(FileName)

		If (objXL.WorkBooks( 1 ).Sheets.Count >  1 ) Then
			objXL.WorkBooks( 1 ).Sheets( 1 ).Delete
		End if

		For i =  1  to objXL.WorkBooks( 1 ).Sheets.Count
			objXL.WorkBooks( 1 ).Sheets(i).Activate()

			RowsCnt = objXL.ActiveCell.CurrentRegion.Rows.Count
			ColsCnt = objXL.ActiveCell.CurrentRegion.Columns.Count

			objXL.ActiveCell.CurrentRegion.Borders.LineStyle =  1 
			objXL.ActiveCell.CurrentRegion.Borders.Weight =  3 

			If RowsCnt >  2  Then
				objXL.Range(objXL.Cells( 3 ,  1 ), objXL.Cells(RowsCnt, ColsCnt)).Borders( 3 ).LineStyle =  3 
			End if
			If RowsCnt >  1  Then
				objXL.Range(objXL.Cells( 2 ,  1 ), objXL.Cells(RowsCnt- 1 , ColsCnt)).Borders( 4 ).LineStyle =  3 
			End if

			objXL.Range(objXL.Cells( 1 ,  1 ), objXL.Cells( 1 , ColsCnt)).Font.Bold = True
			objXL.Range(objXL.Cells( 1 ,  1 ), objXL.Cells( 1 , ColsCnt)).HorizontalAlignment =  3 
			objXL.Range(objXL.Cells( 1 ,  1 ), objXL.Cells( 1 , ColsCnt)).VerticalAlignment =  2 
			objXL.Range(objXL.Cells( 1 ,  1 ), objXL.Cells( 1 , ColsCnt)).Interior.Color =  12632256 

			objXL.ActiveCell.CurrentRegion.Columns.AutoFit
		Next

		objXL.WorkBooks( 1 ).Save
		objXL.Quit
		Set objXL = Nothing

		Main = DTSTaskExecResult_Success
	End If
End Function
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DTS. Необходимо написать Task. / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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