System::CreationDate - The date that the package was created.
Shouldn't the package use the date when the ETL was run?
No, package should use the date then the package was created.
Question
I created an SSIS package composed of OLE DB Source connected to an SCD. Inside the SCD, I ticked the radio button for "Use start and end dates to identify current and expired records" I choose
Start Date column: RecordStartDate End Date column: RecordEndDate
variable to set date values : System::CreationDate
If I run the ETL today (November 5, 2013) and check the destination table after running the ETL. The RecordStartDate uses the date when I created the SSIS package (October 18, 2013). Shouldn't the package use the date when the ETL was run? correct me if I'm wrong.
La solution
System::CreationDate - The date that the package was created.
Shouldn't the package use the date when the ETL was run?
No, package should use the date then the package was created.
Autres conseils
The dimension wizard provides a choice of variables for you to use. By default, the package developer can choose to use one of the following
System::StartTime
System::CreationDate
System::ContainerStartTime
(you can augment this list with your own variable that could be preset from an expressions etc)
If you want to use the StartTime for this column then you just have to change the appropriate derived column transform in the package.
If you decide to use System::StartTime, in the created transformation, you will get 2 Derived Columns transformation (one for ValidTo and second for ValidFrom) update the expressions to match your desired datatype e.g, let's assume in the db, you column type is "date". (DT_DBDATE)(@[System::StartTime]). be aware that it can cause an error: 0xC0202009 to Data Flow Task, Insertion Destination [61]: Error Code SSIS DTS_E_OLEDBERROR. An OLE DB error has occurred. Error Code: 0x80004005.