Подтвердить что ты не робот

Как я могу форматировать значение даты как yyyy-mm-dd с помощью построителя выражений SSIS?

hi У меня есть имя файла flatfile динамически I.e. filename like "source 2011-08-11" Я создаю построитель выражений для получения самого последнего файла в соответствии с именем файла. Мне понравилось Создана одна переменная, которая имеет путь к папке: C\backup\

теперь внутри выражения builder как я могу добавить дату??? я пробовал как

@[User::DirPath]+"source"+ (DT_STR,4,1252)YEAR( DATEADD( "dd", -1, getdate() ))
+"-"+(DT_STR,4,1252)MONTH( DATEADD( "dd",-1, getdate() ))+"-"+(DT_STR,4,1252) 
DAY(DATEADD( "dd", -1, getdate() )) +".CSV"

что неправильно, пожалуйста, дайте мне выражение, которое дает мне вывод:   "source 2011-08-11"

4b9b3361

Ответ 1

Правильное выражение

"source " + (DT_STR,4,1252)DATEPART( "yyyy" , getdate() ) +
RIGHT("0" + (DT_STR,4,1252)DATEPART( "mm" , getdate() ), 2) +
RIGHT("0" + (DT_STR,4,1252)DATEPART( "dd" , getdate() ), 2) +".CSV"

Ответ 2

Похоже, вы создали отдельный вопрос. Я ответил на ваш другой вопрос Как изменить источник плоского файла, используя контейнер foreach loop в пакете SSIS? с тем же ответом. Во всяком случае, здесь это снова.

Создайте две строковые переменные типа данных, а именно DirPath и FilePath. Установите значение C:\backup\в переменную DirPath. Не устанавливайте значение переменной FilePath.

Variables

Выберите переменную FilePath и выберите F4, чтобы просмотреть свойства. Установите для свойства EvaluateAsExpression значение True и установите для свойства Expression значение @[User::DirPath] + "Source" + (DT_STR, 4, 1252) DATEPART("yy" , GETDATE()) + "-" + RIGHT("0" + (DT_STR, 2, 1252) DATEPART("mm" , GETDATE()), 2) + "-" + RIGHT("0" + (DT_STR, 2, 1252) DATEPART("dd" , GETDATE()), 2)

Expression