public void ManualMapToTargetColumns() { if (ExternalColumnInputColumnMap.Count > 0) { string[] viCols = new string[Input.Input.GetVirtualInput().VirtualInputColumnCollection.Count]; for (int i = 0; i < viCols.Length; i++) { viCols.SetValue(Input.Input.GetVirtualInput().VirtualInputColumnCollection[i].Name, i); } foreach (ExternalColumnInputMap map in ExternalColumnInputColumnMap) { if (String.IsNullOrEmpty(map.InputColumnName)) { } else { ISExternalMetadataColumn extCol = new ISExternalMetadataColumn(this, DtsInput.Name, map.ExternalColumn.ExternalColumnName, true); for (int vi = 0; vi < viCols.Length; vi++) { if (viCols[vi].ToLower() == map.InputColumnName.ToLower()) { ISInputColumn ic = new ISInputColumn(this, DtsInput.Name, viCols[vi], UsageType.UT_READONLY); DesignTimeComponent.MapInputColumn(DtsInput.ID, ic.ID, extCol.ID); extCol.DataType = ic.DataType; extCol.CodePage = ic.CodePage; extCol.Length = ic.Length; extCol.Precision = ic.Precision; extCol.Scale = ic.Scale; } } } } } }
public ISInputColumn ReplaceWithDerivedColumn(string columnName, string expression, string expressionCols, RowDisposition errorRowDisposition = RowDisposition.RD_FailComponent, RowDisposition truncationRowDisposition = RowDisposition.RD_FailComponent) { if (!(String.IsNullOrEmpty(expressionCols))) { SetUsageTypeToReadForExpressionCols(expressionCols); } ISInputColumn ic = new ISInputColumn(this, _input.Name, columnName, UsageType.UT_READWRITE, errorRowDisposition, truncationRowDisposition); SetCustomPropertyToInputColumn(_input, GetInputColumn(_input.Name, columnName), "Expression", expression); SetCustomPropertyToInputColumn(_input, GetInputColumn(_input.Name, columnName), "FriendlyExpression", expression); return(ic); }
private void MapInputColumnsToExternalColumns() { if (ExternalColumnInputColumnMap.Count > 0) { string[] viCols = new string[Input.Input.GetVirtualInput().VirtualInputColumnCollection.Count]; for (int i = 0; i < viCols.Length; i++) { viCols.SetValue(Input.Input.GetVirtualInput().VirtualInputColumnCollection[i].Name, i); } foreach (ExternalColumnInputMap map in ExternalColumnInputColumnMap) { for (int mc = 0; mc < DtsInput.ExternalMetadataColumnCollection.Count; mc++) { if (DtsInput.ExternalMetadataColumnCollection[mc].Name == map.ExternalColumn.ExternalColumnName) { //IDTSInputColumn100 ic = GetInputColumn(DtsInput.Name, map.Item2); //ic.ExternalMetadataColumnID = DtsInput.ExternalMetadataColumnCollection[mc].ID; for (int vi = 0; vi < viCols.Length; vi++) { if (viCols[vi] == map.InputColumnName) { ISInputColumn ic = new ISInputColumn(this, DtsInput.Name, viCols[vi], UsageType.UT_READONLY); //ic.ExternalMetadataColumnID = DtsInput.ExternalMetadataColumnCollection[mc].ID; //MapInputColumn(DtsInput.Name, DtsInput.ExternalMetadataColumnCollection[mc].Name); } } } } } } else { string[] viCols = new string[Input.Input.GetVirtualInput().VirtualInputColumnCollection.Count]; for (int i = 0; i < viCols.Length; i++) { viCols.SetValue(Input.Input.GetVirtualInput().VirtualInputColumnCollection[i].Name, i); } for (int i = 0; i < viCols.Length; i++) { for (int mc = 0; mc < DtsInput.ExternalMetadataColumnCollection.Count; mc++) { if (DtsInput.ExternalMetadataColumnCollection[mc].Name == viCols[i]) { ISInputColumn ic = new ISInputColumn(this, DtsInput.Name, viCols[i], UsageType.UT_READONLY); ic.ExternalMetadataColumnID = DtsInput.ExternalMetadataColumnCollection[mc].ID; } } } } }
public ISDerivedColumn(ISDerivedColumnComponent parentComponent, DerivedColumnAction action, string columnName) { _dervColComponent = parentComponent; if (action == DerivedColumnAction.Replace) { InputColumn = new ISInputColumn(_dervColComponent, _input.Name, columnName, UsageType.UT_READWRITE); InputColumn.TruncationRowDisposition = RowDisposition.RD_FailComponent; InputColumn.ErrorRowDisposition = RowDisposition.RD_FailComponent; } if (action == DerivedColumnAction.New) { OutputColumn = new ISOutputColumn(_dervColComponent, _output.Name, columnName); OutputColumn.TruncationRowDisposition = RowDisposition.RD_FailComponent; OutputColumn.ErrorRowDisposition = RowDisposition.RD_FailComponent; } }
public void AddLookUpColumnIntoDataFlow(string lookupColumnName, string lookupColumnNameAlias, RowDisposition truncationRowDisposition, SSISDataType dataType, int length, int precision, int scale, int codePage, string inputColumnToReplace = null) { if (String.IsNullOrEmpty(inputColumnToReplace)) { ISOutputColumn oc = new ISOutputColumn(this, MatchOutput_m.Name, lookupColumnName, RowDisposition.RD_NotUsed, truncationRowDisposition); oc.SetDataTypeProperties(dataType, length, precision, scale, codePage); SetCustomPropertyToOutputColumn(MatchOutput_m.Name, lookupColumnName, "CopyFromReferenceColumn", lookupColumnName); oc.Name = String.IsNullOrEmpty(lookupColumnNameAlias) ? lookupColumnName : lookupColumnNameAlias; } else { ISInputColumn ic = new ISInputColumn(this, _input.Name, inputColumnToReplace, UsageType.UT_READWRITE); SetCustomPropertyToInputColumn(ic.Input, ic.InputColumn, "CopyFromReferenceColumn", lookupColumnName); ic.Name = String.IsNullOrEmpty(lookupColumnNameAlias) ? lookupColumnName : lookupColumnNameAlias; _renamedInputCols.Add(new string[] { inputColumnToReplace, ic.Name }); } }
public void JoinInputToLookUpColumn(string inputColumn, string outputColumn) { ISInputColumn ic = new ISInputColumn(this, _input.Name, inputColumn, UsageType.UT_READONLY); SetCustomPropertyToInputColumn(ic.Input, ic.InputColumn, "JoinToReferenceColumn", outputColumn); }