Как я могу использовать SSIS, чтобы добавить дополнительный столбец, содержащий значение инкрементной переменной, в мою таблицу назначения? - PullRequest
5 голосов
/ 01 марта 2012

У меня определен этот рабочий процесс служб SSIS.После того, как я объясню, что я делаю, возможно, мой подход неправильный, поскольку это мой первый «настоящий» пакет служб SSIS.

enter image description here

Для увеличения счетчика я делаюthis:

public void Main()
{
    int i = Convert.ToInt32(Dts.Variables["User::DayCounter"].Value.ToString());
    i++;
    Dts.Variables["User::DayCounter"].Value = i;

    Dts.TaskResult = (int)ScriptResults.Success;
}

Моя таблица назначения в настоящее время выглядит следующим образом:

PID Campaign Name   Company Impr    Clicks  Clickthru   Leads   View-Through Leads  # Sales # View-Through Sales    Sales   View-Through Sales  Sub Sales   View-Through Sub Sales  We Get  They Get    Revenue EPC S U R T Active  SourceFile
1734    US - Lending Tree Refinance Mortgage - DA 3 Page SSN    Tree.com    58  2,053   3,539.66%   201 0   0   0    0.00    0.00    0.00    0.00    8044.02     5846.00     2198.02     2.85   10% Yes Active  \\ad1\Marketing\Aaron\DirectTrackAutomatedReports\admin_program_stats_20120229.csv

Моя цель - просто добавить в отчет столбец с именем Day, содержащий значение счетчика.переменная.

1 Ответ

5 голосов
/ 01 марта 2012

Необходимо добавить преобразование «Производный столбец» в задачу «Поток данных» между компонентами «Плоский файл» и «Назначение OLE DB».

Add Derived Column transformation

Преобразование «Производный столбец» добавит новый столбец «День» на основе вашей переменной.

New column

После этого в потоке данных будет представлен новый столбец «День». Просто сопоставьте этот столбец с соответствующим полем базы данных. (Предположим, что в вашей таблице отчетов есть столбец «День».)

...