Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
Возникла проблема. В ActiveScript динамически меняю свойство DataPump Tast SourceObjectName на новое имя таблицы. Прблема в том что новая табица имеет другую структуру. Поэтому если не изменить Transformation и не заполнить DestinationColumns то работать не будет. Как получить список столбцов для новой таблицы. SQL Server 7.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 06:52 |
|
||
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
А не проще разбить одну Task на несколько, с фильтрацией записей? получить список столбцов можно из запроса: SELECT name FROM syscolumns where id in (select id from sysobjects where name =/имя таблицы/) или посредством DMO из SQLServer.Databases('database name').Tables('table name').COLUMNS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 08:54 |
|
||
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
Можно попробовать создать вообще новый Transformation Task - возможно тогда произойдет автоматический маппинг входных/выходных столбцов (ведь такое же происходит в ручном режиме) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 09:03 |
|
||
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
2Dmitri Нет не проще. Задача одна и таже, перенос данных из таблицы в файл, а таблиц в базе ~70. 2Glory Создавать автоматически это вариантов, сейчас буду пробовать. Вот я и искал как получить список столбцов из свойств задачи, ведь в ручном режиме когда ставишь другую таблицу в SourceObjectName список SourceColumns ставиться автоматом. А DestinationColumnDefinitions заполняешь сам. В BOL нашел. The DTSDataPumpColumns collection contains groups of columns that provide information to an ActiveX script as a DTSSource or DTSDestination collection. Но как получит ссылку на DTSDataPumpColumns не знаю. И подозреваю что это не совсем то что мне надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 10:46 |
|
||
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
Не знаю что меня дернуло использовать одну только строчку из примера в BOL, но у меня (правда SQL2000) все заработало Dim dtsPackage Set dtsPackage = DTSGlobalVariables.Parent Dim dtsDataPumpTask, dtsTransformation, dtsCustomTask 'Я для быстроты проверки сразу подставляю имя Task, а не ищу его по description Set dtsDataPumpTask = dtsPackage.Tasks("DTSTask_DTSDataPumpTask_1") Set dtsCustomTask = dtsDataPumpTask.CustomTask msgbox dtsCustomTask.Properties("SourceObjectName").Value Dim dtsSourceColumn, dtsDestinationColumn 'Список всех Transformation For Each Transformation In dtsCustomTask.Transformations Set dtsTransformation = Transformation msgbox dtsTransformation.Name ' Список всех SourceColumn For Each SourceColumn In dtsTransformation.SourceColumns Set dtsSourceColumn = SourceColumn msgbox dtsSourceColumn.Name Next ' Список всех DestinationColumn For Each DestinationColumn In dtsTransformation.DestinationColumns Set dtsDestinationColumn = DestinationColumn msgbox dtsDestinationColumn.Name Next Next Поможет это вам ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 11:36 |
|
||
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
Через Transformation не получиться. Дело в том что новая таблица имеет другое кол-во столбцов (большее). Тогда получаеться если в предыдущей таблице было 3 столбца а в новой 5 то автоматом получиться 3 обекта Transformation. Соответсвенно через Transformation я смогу получить только 3 столбца новой таблицы. (Так происходит и в ручном режиме). Еще не попробовал создавать задачу динамически, но думаю так может получиться. Но почему нельзя получить список не понимаю. Ведь он есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 12:20 |
|
||
|
DTS. Список столбцов таблицы.
|
|||
|---|---|---|---|
|
#18+
Еще вариант - не создавать Transformation для каждого столбца, а создать один ActiveX Script Transformation, в которм обрабатывать все столбцы разом. Тогда для новой таблицы вообще нет надобности обрабатывать каждый столбец - достаточно заменить текст ActiveX Script, а список столбцов для таблицы источника получать используя стандартные способы. PS Извиняюсь, если говорю про что-то, чего нет в SQL Server 7.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2001, 13:09 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32015983&tid=1825198]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
34ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 219ms |
| total: | 329ms |

| 0 / 0 |
