Существует ли приличный метод форматирования даты в производной колонке служб SSIS? - PullRequest
4 голосов
/ 03 июня 2010

Мне просто нужно было написать самое редкое выражение в производной колонке служб SSIS, чтобы даты были отформатированы как «01-ЯНВ-2010». Это выглядит так:

alt text

Должен быть лучший способ ... не так ли?

Ответы [ 3 ]

5 голосов
/ 03 июня 2010

Если вы хотите использовать выражения, вы можете использовать это вместо:

ПРАВО ("0" + (DT_WSTR, 2) ДЕНЬ (ASSIGNMENT_BEGIN_DATE), 2) + "-" + SUBSTRING ("JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC", (3 * МЕСЯЦ (ASSIGNMENT_BEGIN_DATE)), 2, 3, 3 ) YEAR (ASSIGNMENT_BEGIN_DATE)

Не сказал, что это было лучше. Это просто по-другому и короче. Используйте сценарий, предложенный Cade, если вы хотите лучше контролировать.

5 голосов
/ 03 июня 2010

Рассмотрите возможность использования компонента сценария, а затем Row.stringcol = Row.datecol.ToString("dd-MMM-yyyy") для заполнения нового строкового столбца в потоке данных.

3 голосов
/ 03 июня 2010

Хорошо, теперь я чувствую себя ослом.Простое решение - сделать мой источник данных оператором выбора, в котором я просто обработаю этот столбец следующим образом:

SELECT to_char(assignment_begin_date, 'dd-MON-yyyy') assignment_begin_date FROM ...

СУБД - Oracle, кстати.Тогда мне не нужно делать производный столбец или скрипт.

Я сам ввел допинг-шлепок, потому что раньше не думал об этом.Спасибо всем за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...