The parameters are supplied to the stored procedure, including @Carrier. So, my data is correct in the datatable and then in the report itself. NULLS is simply a code snippet that checks for a null value in a string variable and returns an empty length string if the value is null. What I believe you are thinking is along the lines of what I was thinking. Since I'm not allowing Crystal to run the stored procedure to retrieve the data, but running it myself to create the datatable I believe that even though I populate the @Carrier database parameter with a value that when I set the table as the reports datasource it does not send that value to the actual report like it does the report parameters. Not exactly sure why it wouldn't if it is explicitly set, but it isn't.
I wonder if I set the database parameters at a different point in time if Crystal would not wipe them out?