Using the Source Component
After Establishing a Connection to the data source, you can use the CData SendGrid source component to pull data into your Data Flow task.
Querying SendGrid Data with the Source ComponentFollow the procedure below to connect to SendGrid, retrieve data, and provide data to other components in the workflow.
- In the SSIS Toolbox, drag the CData SendGrid source component into the Data Flow task.
- Double-click the CData SendGrid source component. The CData SendGrid Source Editor will display.
- In the Connection Managers menu, select an available CData SendGrid connection manager, or create a new instance if one is not already available.
- Choose your Access Mode: "Table or View" or "SQL Statement". Select "Table or View" to use the GUI to select a table or view. Select "SQL Statement" to configure a statement of your choice.
- Select the Columns tab and rename any output columns as desired.
Building Parameterized Queries in the Expression Builder
After configuring a source component, you can then use the SSIS Expression Builder to access the SQL statement that the source component executes at run time.
The component will execute these queries as parameterized statements. Parameterized statements provide an efficient way to execute similar queries and mitigate SQL injection attacks.
- In SSIS Designer, click the Control Flow tab.
- In the Properties pane, click the button in the box for the Expressions property.
- In the resulting Property Expressions Editor, click an empty row in the Property box and select the SQLStatement property of the CData SendGrid source component from the drop-down menu. Then click the button in the row you just added. This displays the Expression Builder.
- In the Expression box, you can create new SQL commands that use the variables available at run time as input parameters. Ensure that you enclose the expression in quotes. For example:
"SELECT * FROM Table WHERE FirstName = '" + @[User::Name] + "' AND Date > '" + (DT_WSTR, 50) DATEADD("day", -30, GETDATE()) + "'"