Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
 Re: SSIS выражения свойств  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31994
Draginsv
Если это не на уровне пакета, то где ее надо создать?
А второй переменной с таким же именем у вас нет, на уровне контейнера ForEach?
11 ноя 15, 17:25    [18401688]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31994
Draginsv
А где в интерфейсе создавать переменные?
Наверху видно меню SSIS
В нём есть пункт Variables
Когда нажмёте, слева появится панель с переменными.
Вот там с ними и надо работать, там и область видимости показывается.

Там и посмотрите, сколлько у вас определено переменных varFileName на разных уровнях

Draginsv
Построитель выражения свойств соединения видит только параметры проекта, параметры пакета и переменные не видит.
Понятия "переменная проекта" нет, самый верхний уровень - пакет.
И у вас видно, что верхний уровень - это пакет "Урок2"
Вот эти переменные, уровня пакета, и нужно использовать, что бы они были видны и из конструктора выражений коннекта, и из контейнера foreach
11 ноя 15, 17:41    [18401785]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31994
Draginsv
пробовал:

"D:\\ProjectVS2012\\DataAW\\IS\\"+@varFileName по логике, не пропускает;
Где вы это вводите?
Если в T-SQL, то там двойные кавычки недопустимы.
Если в всяких выражениях в пакете, то там так нельзя обращаться к переменным.
Зачем вы руками набираете, если не знаете, как?
Там же мышкой можно выбрать переменную из окошка, она и вставится.
11 ноя 15, 17:45    [18401818]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Владислав Колосов,

Покажите пожалуйста принтскрин построителя выражений для свойств соединения на основе источника неструктурированного файла.
11 ноя 15, 19:29    [18402350]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
alexeyvg,
в самом начале первый принсскрин
на панели соединений внизу выбираю источник -> свойства, на панели свойств -> Expession -> многоточие -> окно список свойств со столбцами "Свойство" и "Выражение" в столбце "Свойство" выбираю "ConnectionString", слева многоточие нажимаю ->
окно построитель выражения, где в верхнем левом углу пустой узел "Параметры". Этот узел обретает содержание, когда я ввожу параметр проекта из обозревателя решений.
11 ноя 15, 19:54    [18402422]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31994
Draginsv
В обозревателе решений соединения являются независимыми объектами и они создавались в самом начале примера, но они используются в пакете "урок 2" , м.б. поэтому вся проблема.

Draginsv
alexeyvg,
в самом начале первый принсскрин
на панели соединений внизу выбираю источник -> свойства, на панели свойств -> Expession -> многоточие -> окно список свойств со столбцами "Свойство" и "Выражение" в столбце "Свойство" выбираю "ConnectionString", слева многоточие нажимаю ->
окно построитель выражения, где в верхнем левом углу пустой узел "Параметры". Этот узел обретает содержание, когда я ввожу параметр проекта из обозревателя решений.
Мда, странно.

Вообще коннекты из проекта, которые в Data Sources, нельзя напрямую использовать в пакете. В пакете создаётся коннект, и он настраивается на коннект из Data Sources
При этом из свойств этого коннекта (который связан) прекрасно видны переменные пакета, он же связанный коннект внутри пакета.
В пакете не могут быть видны коннекты из Data Sources проекта напрямую, это естественно.

Далее, у меня в коннектах пакета, если посмотреть в Package Explorer, нету папок Variables, а у вас есть, причём они пустые, и не унаследовали даже системные переменные, а не только вашу.

Просто что то непонятное, какой то глюк. Может, из за русской студии, может, версия учебного проекта не совсем соответствует версии студии, не понимаю.
11 ноя 15, 22:12    [18403005]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
alexeyvg,

Вот и я туже картину наблюдаю, вот данные о версии, устанавливал sql 2012 dev с опцией ssis ssas ssrs решил изучить.

К сообщению приложен файл. Размер - 144Kb
11 ноя 15, 23:21    [18403306]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8839
У Вас переменная в контейнере цикла, а у меня в ветке Variables, самой нижней на картинке. Там её попробуйте создать.
12 ноя 15, 12:16    [18405306]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Владислав Колосов,
[url=]https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1184398&msg=18398256[/url]
Создавал, бесполезно.
Это "подножки микрософта".
Типа под юзером с правами админа создал папку, скопировал в нее файл базы данных, попробовал присоединить, отказано в доступе. Оказывается у этого юзера нет полного доступа к этой папке. Это микрософт.
12 ноя 15, 13:06    [18405783]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Владислав Колосов,
а у вас какие версии sql vs?
12 ноя 15, 13:14    [18405855]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8839
Draginsv,

SQL2012 enterpise, студия 2010.
12 ноя 15, 14:39    [18406505]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Владислав Колосов,
А enterprise установлен на win serv... или w7 ... w10 ?
все на одном компе sql и ws ?
мб у меня 2012 dev на w7 ч.н. с безопасностью (брандмауер)?
12 ноя 15, 14:53    [18406595]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
описка
все на одном компе sql2012 и vs2010 ?
12 ноя 15, 14:54    [18406611]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Переустановил vs по ссылке https://www.microsoft.com/ru-RU/download/details.aspx?id=42313
интерфейс обновился, но проблема сохранилась.
Кто нибудь может показать принтскрин построителя выражений свойства connectionstring для соединения FLATFILE
12 ноя 15, 20:29    [18408933]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Проблему случайно раскрыл.
Но в примере микрософта об это ни слова.
Соединение при создании является объектом проекта и это происходит по умолчанию.
В проекте может быть несколько пакетов и соединение проекта может использоваться в любом пакете.
Переменные создаются только в пакете и видны только внутри пакета, но не вне.
Соединение как объект проекта видит только параметры проекта, что и наблюдалось.
Поэтому соединение проекта не будет видеть переменные пакетов.
У соединения проекта в контектном меню есть такая команда: Перестроить в соединение пакета.
После этой команды в построителе выражений появляется узел Переменные и параметры уже не пустой.
В документации мне это не попадалось.
12 ноя 15, 21:12    [18409133]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31994
Draginsv
Переменные создаются только в пакете и видны только внутри пакета, но не вне.
Соединение как объект проекта видит только параметры проекта, что и наблюдалось.
Поэтому соединение проекта не будет видеть переменные пакетов.
Ну, про это собственно и писали...

Draginsv
В проекте может быть несколько пакетов и соединение проекта может использоваться в любом пакете.
А вот это мне было очень странно. Я честно говоря, думал, что это просто глюк.

В предыдущих версиях вообще нельзя использовать соединение проекта прямо в пакете, то есть там такого варианта просто нету. Соединение проекта предназначено только как шаблон для соединения пакета.

А проверить ваши варианты, к сожалению, не мог, мне сейчас доступны только старые версии, для 2008R2, и плюс сиквел 2014, но при этом студия у меня только 2010. В общем, точно на ваших версиях поиграться не получилось :-(
13 ноя 15, 00:59    [18409807]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 594
alexeyvg
...
Draginsv
В проекте может быть несколько пакетов и соединение проекта может использоваться в любом пакете.
А вот это мне было очень странно. Я честно говоря, думал, что это просто глюк.

В предыдущих версиях вообще нельзя использовать соединение проекта прямо в пакете, то есть там такого варианта просто нету. Соединение проекта предназначено только как шаблон для соединения пакета.


Это не глюк, а фича. Смысл в том, что вы централизованно на уровне проекта ведете соединения, и затем -- используете их в пакетах проекта. Позволяет при эксплуатации рулить соединениями из одного места, а не бегать по пакетам. В самом пакете при использовании СМ проекта вообще нет раздела соединений, а в задачах - просто даны ссылки на соединения проекта.

Это была хорошая сторона. А плохая - что expressions на соединение проекта задать нельзя. Можно его корректировать или в каталоге на задеплоенном проекте, или через env vars.
13 ноя 15, 09:03    [18410277]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Ferdipux,

А эта фича появилась недавно?
Я так понимаю это зависит от служб BI sql server, а vs всего лишь оболочка?
Если да то с какой версии sql это изменилось?
Народ об этом и не предполагал.
У микрософта на сайте я заметил содержание примера не обновляется в зависимости от выбранной версии продукта.
Значит содержание примера соответствует старым версиям sql?
В данный момент пересечь пакет с соединением проекта никак нельзя потому что внутри пакета не видны параметры проекта, видны только параметры пакета. Странная логика - соединение можно использовать, а параметры нет. И смысл этой универсальности соединения проекта.
13 ноя 15, 10:57    [18410883]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 594
Draginsv
Ferdipux,

А эта фича появилась недавно?
Я так понимаю это зависит от служб BI sql server, а vs всего лишь оболочка?
Если да то с какой версии sql это изменилось?
Народ об этом и не предполагал.
У микрософта на сайте я заметил содержание примера не обновляется в зависимости от выбранной версии продукта.
Значит содержание примера соответствует старым версиям sql?
В данный момент пересечь пакет с соединением проекта никак нельзя потому что внутри пакета не видны параметры проекта, видны только параметры пакета. Странная логика - соединение можно использовать, а параметры нет. И смысл этой универсальности соединения проекта.


Фича появилась с 2012 версии, когда ввели проектную модель и SSISDB. А детально это не объяснили.
По сути, в SSISDB-проектной модели есть иерархия проект-пакет. И объекты проекта стоят выше чем пакета, так как объекты проекта наследуются пакетами проекта. При исполнении пакета сначала отрабатываются подстановки проекта, затем - пакета.

Поэтому и интерфейс редактирования expression CM проекта сделан верно - он не позволяет задавать переменные пакета. Но вот засунут он в ж... - в самих СМ проекта добраться до их Expressions нельзя, только в пакете. Посмотрите - при определении Expression на СМ проекта - данный expression появляется в файле CM проекта, а не пакета.
13 ноя 15, 14:08    [18412171]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Мы как тестеры ПО микрософта. Ведь не даром микрософт просит присоединиться к компании по улучшению продукта. Чуют, что накосячили.
Сейчас снова наткнулся на проблемку в примере:
Пример https://msdn.microsoft.com/ru-ru/library/ms345336(v=sql.110).aspx
При таких значениях свойств как на скрине, в файле ошибок результат следующий:

,,,,-1071607778,0,? ?????????? ??????????? ??????? ??? ?????? ?? ?????????? ????????????.

,,,,-1071607778,0,? ?????????? ??????????? ??????? ??? ?????? ?? ?????????? ????????????.

,,,,-1071607778,0,? ?????????? ??????????? ??????? ??? ?????? ?? ?????????? ????????????.

,,,,-1071607778,0,? ?????????? ??????????? ??????? ??? ?????? ?? ?????????? ????????????.

Если меняю тип на строка в Юникоде [DT_WSTR] выдает ошибку

[Строки с ошибками [68]] Ошибка: Ошибка преобразования данных.
При преобразовании данных для столбца "ErrorDescription" возращено значение состояния 4 и текст состояния "Текст был усечен,
или один и более символов не имеют соответствия в целевой кодовой странице.".

Меняю кодовую страницу на 1251 выдает ошибку

[Строки с ошибками [68]] Ошибка: Ошибка преобразования данных.
При преобразовании данных для столбца "ErrorDescription" возращено значение состояния 2 и текст состояния
"Невозможно преобразовать значение из-за возможной потери данных.".

ErrorDescription генерится скриптом
  
 public override void Вход0_ProcessInputRow(Вход0Buffer Row)
    {
         Row.ErrorDescription = this.ComponentMetaData.GetErrorDescription(Row.ErrorCode);
    }

я экспериментирую, но не представляю, что там за кулисами.
13 ноя 15, 17:13    [18413494]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
скрин не прицепился

К сообщению приложен файл. Размер - 148Kb
13 ноя 15, 18:46    [18414027]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
знаки ??? при типе строка [DT_STR].
13 ноя 15, 18:49    [18414041]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 594
Draginsv
знаки ??? при типе строка [DT_STR].


Это последствия использования Unicode и типа данных [DT_STR]. Сами же говорите, что если использовать [DT_WSTR] - возвращаются нормальные символы.
Опять же, ваша ошибка "Текст был усечен, или один и более символов не имеют соответствия в целевой кодовой странице." - поставьте длине строки не 50 символов, а 1000, чтобы оно не было обрезано. Похоже что результат не помещается в 50 символов.
14 ноя 15, 16:00    [18417218]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
Еще раз более подробно:

1 При
LocaleID Английский (США)
DateType строка в Юникоде [DT_WSTR]
Length 1000

[Строки с ошибками [68]] Ошибка: Ошибка преобразования данных.
При преобразовании данных для столбца "ErrorDescription" возращено значение состояния 4 и текст состояния "Текст был усечен,
или один и более символов не имеют соответствия в целевой кодовой странице.".

2 При
LocaleID Английский (США)
CodePage 1252
DateType строка [DT_STR]
Length 1000

Выводится в столбце "ErrorDescription" ??????

3 При
LocaleID Английский (США)
CodePage 1251
DateType строка [DT_STR]
Length 1000

[Строки с ошибками [68]] Ошибка: Ошибка преобразования данных.
При преобразовании данных для столбца "ErrorDescription" возращено значение состояния 2 и текст состояния
"Невозможно преобразовать значение из-за возможной потери данных.".

4 При
LocaleID Русский(Россия)
DateType строка в Юникоде [DT_WSTR]
Length 1000

Результат как при п 1.

5 При
LocaleID Русский(Россия)
CodePage 1251
DateType строка [DT_STR]
Length 1000

Результат как при п 3.

5 При
LocaleID Русский(Россия)
CodePage 1252
DateType строка [DT_STR]
Length 1000

Выводится в столбце "ErrorDescription" ??????
14 ноя 15, 21:55    [18418457]     Ответить | Цитировать Сообщить модератору
 Re: SSIS выражения свойств  [new]
Draginsv
Member

Откуда:
Сообщений: 457
При
LocaleID Английский (США)
CodePage 1252
DateType строка [DT_STR]
Length 1000

Пробовал скрипт изменять на

Row.ErrorDescription = "Error" 
Выводится в столбце "ErrorDescription" - Error
Row.ErrorDescription = "Ошибка" 
Выводится в столбце "ErrorDescription" - ?????

М.б. в реестре что не так?
14 ноя 15, 22:03    [18418480]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить