Showing posts with label double. Show all posts
Showing posts with label double. Show all posts

Thursday, March 29, 2012

Embedded text qualifiers

We have text files that are comma delimited, use double quotes as text qualifiers and sometimes have embedded double quotes. The embedded double quotes are escaped with an additional double quote like: below.

"123","product q"

"124","product ""a"""

DTS 2000 had no problem with this- it correctly parsed the files. The 2005 SSIS file connection manager correctly parses this in preview mode. But when the task is executed the task fails with the message "The column delimiter for column X was not found".

What is the recommended approach for this - we have alot of files in this format.

thanks

Please search the forums.

This should get you started: (in a sense, it's not going to be easy) http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=80634&SiteID=1|||I've had to do this as the other post with a script component. I import the whole row as a single column, then run via a regular expression a split command and then use replace function as well. Thats the best solution I have come across to your issue.|||Another workaround that I used successfully was to simply change the source file format. I changed it to |~| delimeter and no text qualifier. In addition I configured the SSIS source file connection manager to recognize the |~| as the delimiter and did not set the text qualifer option. In the end, it proved less painful than the other methods.

Embedded text qualifiers

We have text files that are comma delimited, use double quotes as text qualifiers and sometimes have embedded double quotes. The embedded double quotes are escaped with an additional double quote like: below.

"123","product q"

"124","product ""a"""

DTS 2000 had no problem with this- it correctly parsed the files. The 2005 SSIS file connection manager correctly parses this in preview mode. But when the task is executed the task fails with the message "The column delimiter for column X was not found".

What is the recommended approach for this - we have alot of files in this format.

thanks

Please search the forums.

This should get you started: (in a sense, it's not going to be easy) http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=80634&SiteID=1|||I've had to do this as the other post with a script component. I import the whole row as a single column, then run via a regular expression a split command and then use replace function as well. Thats the best solution I have come across to your issue.|||Another workaround that I used successfully was to simply change the source file format. I changed it to |~| delimeter and no text qualifier. In addition I configured the SSIS source file connection manager to recognize the |~| as the delimiter and did not set the text qualifer option. In the end, it proved less painful than the other methods.

Tuesday, March 27, 2012

Embedded code didnt work

In the code tab of Report Properties window, I pasted the following VB code:

Public Function Divide(Numerator As Double, Denominator As Double)
If Denominator = 0 Then
Return 0
Else
Return Numerator/Denominator
End If
End Function

But when I tried to reference the above function using "Code." in my expression, I saw an "Unrecognized Identifier" when I put my mouse onto this function in the expression edit window. Why? What I did is just copy the above function to the code tab and then start to reference it in the expression, what did I missed? Thanks for your opinion.

Change your function to:

Function Divide(Numerator As Double, Denominator As Double) As Double
If Denominator = 0 Then
Return 0
Else
Return Numerator/Denominator
End If
End Function

When you call it, use:

Code.Divide(10, 5)