internal void SetFriendlyExpression(string condition, string conditionColumns = "") { IDTSInput100 _input = _parentComponent.ComponentMetaData.InputCollection[0]; List <string> colArray = new List <string>(); if (String.IsNullOrEmpty(conditionColumns)) { foreach (IDTSVirtualInputColumn100 column in _input.GetVirtualInput().VirtualInputColumnCollection) { if (condition.Contains(column.Name)) { colArray.Add(column.Name); } } } else { colArray = conditionColumns.Split(',').ToList(); } foreach (string column in colArray) { _parentComponent.SetInputColumnDTSUsageType(_input, column, UsageType.UT_READONLY); } //_output.SetCustomProperty("FriendlyExpression", condition); _output.SetCustomProperty("Expression", condition); }
public ISOutput AddConditionalOutput(string outputName, int evaluationOrder, string condition, string conditionColumns = "") { ISOutput condOutput = new ISOutput(this, outputName); condOutput.SetCustomProperty("EvaluationOrder", evaluationOrder); SetFriendlyExpression(condOutput, condition, conditionColumns); return(condOutput); }