sumibell Ответов: 2

Преобразование выборки строк в SSIS


У меня есть преобразование выборки строк в моей задаче потока данных. Я хочу иметь возможность установить свойство "количество строк" с помощью выражения свойства.
Я установил пользовательскую переменную SampleCount в качестве Int32 со значением по умолчанию 750 в рамках задачи потока данных.
Это MSDN http://msdn.microsoft.com/en-us/library/ms183375.aspx[^] указывает, что значение этого свойства может быть задано с помощью выражения свойства.

Я попытался установить свойство SamplingValue в @[user:: SampleCount], но получил сообщение об ошибке: "значение свойства недопустимо. @[пользователь::SampleCount] не является допустимым значением для типа int32"

Итак, вопрос в том, почему я не могу получить доступ к выражению свойства для свойства SamplingValue?

Спасибо

2 Ответов

Рейтинг:
1

Kuthuparakkal

Вы не можете сделать это на компоненте выборки строк.
Но вы можете сделать это, установив выражения в Родительском потоке данных(из потока управления) компонента выборки строк.

1. Перейдите на вкладку поток управления вашего пакета.
2. Выберите и щелкните правой кнопкой мыши поток данных, содержащий ваш компонент "выборка строк", а затем выберите пункт Свойства.
3. Нажмите на эллипсы (...) в выражениях
4.из выпадающего списка в разделе "свойство" выберите "[выборка строк].[SamplingValue]". Примечание: Если вы переименовали свою "выборку строк", пожалуйста, найдите это имя.
4. Нажмите на эллипсы (...) на выражениях, из всплывающего окна Exapand Varaiables, нажав на знак+, перетащите переменную в область выражений.
6. Вы закончили!


sumibell

Привет Кутхупараккал,
Большое вам спасибо за быстрый ответ. Теперь я могу получить доступ к выражению свойства. Я могу сказать, что это было не очевидно,так что ваша помощь была действительно оценена.

Я установил свойство SamplingValue, как вы описали, но когда я просматриваю его на вкладке поток данных, оно, кажется, не меняется. Знаете ли вы, почему это так?

Спасибо
С уважением
Сушма

Kuthuparakkal

Это может быть проблема с переменной областью действия. Воссоздайте переменную с пакетом в виде области yr и попробуйте.

ogureisuo

Привет, я следовал инструкциям, и он отлично работает, когда я запускаю его в VS studio, однако, когда я попытался запустить его через sql agent, я столкнулся с ошибкой:


Результат выражения "@[пользователь::значения maximumcount]" на недвижимость "пакет \__далее вставить ЭТЛ логика здесь\цикл\foreach для ТФП заполнить деталь.Свойства [[Выборка Строк].[SamplingValue]]" не может быть записано в свойство. Выражение было вычислено, но не может быть установлено в свойстве.

Kuthuparakkal

Это может быть не самая первая ошибка, пожалуйста, проверьте журнал еще раз. Я считаю, что это проблема с разрешениями, потому что если pkg работает в VS, он работает под вашими учетными данными, а когда он работает под SQL Agent, он работает под учетными данными, используемыми " службами SQL Server"

Рейтинг:
1

ogureisuo

Здравствуйте, я успешно запустил другие пакеты, но этот не удался. Других ошибок, кроме этой, нет.


Dave Kreskowiak

Вы опубликовали это как решение проблемы, описанной четыре года назад. Не делай этого.

Начните свой собственный поток и полностью опишите проблему. Не кради чью-то нить, особенно такую старую.