Invalid Character conversion

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
sendmkpk
Premium Member
Premium Member
Posts: 97
Joined: Mon Apr 02, 2007 2:47 am

Invalid Character conversion

Post by sendmkpk »

Hi All,

I am getting the following warning. Why is this and how to avoid it. I checked the posts already but did not get a solution. Any help please

Trn_Columns,1: Invalid character conversion found converting to ISO-8859-1, substituting. [nls/converter.C:830]

In the transformer Trn_Columns I am only using StringtoDate() function
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

If you remove the column with the StringToDate() does the error go away or remain?
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

Find out which ASCII character they map to, and use CHAR(nnn) to see if the error goes away. Which one of the 3 is causing the issue?
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

I don't understand what you mean by it returning a space. You don't need a trim, just try COUNT(r command could be written as:

Code: Select all

Count(Lnk_Read_Email.EMAIL_METHOD_ID,CHAR(226))>0
sendmkpk
Premium Member
Premium Member
Posts: 97
Joined: Mon Apr 02, 2007 2:47 am

Post by sendmkpk »

I tried with the function specified but it did not work. It did not recognize the record
balajisr
Charter Member
Charter Member
Posts: 785
Joined: Thu Jul 28, 2005 8:58 am

Post by balajisr »

sendmkpk wrote:I tried with the function specified but it did not work. It did not recognize the record
Do you have NLS installed?
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

sendmkpk wrote:... It did not recognize the record
What does that mean?
sendmkpk
Premium Member
Premium Member
Posts: 97
Joined: Mon Apr 02, 2007 2:47 am

Post by sendmkpk »

I had the input VarChar field to have the special char which has Char(226) value and ran the job to check if the count was greater than 0. It did not recognize the record.
How do I check if NLS is installed.
Maveric
Participant
Posts: 388
Joined: Tue Mar 13, 2007 1:28 am

Post by Maveric »

An escape character might help. Count(In.Col,\CHAR(\226)). This might work. Or try \CHAR\(226). Try it and see if it works.
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

I will assume that "did not recognize the record" means that the derivation returned a '0'. This means that the string does not contain a char(226) character. Since you assert that it the source does, this would mean that your NLS settings have remapped the character. If you know the record and position of the character, try to find out what DataStage has mapped this to, it will help us understand the actual problem. Try writing the value of

Code: Select all

SEQ(Lnk_Read_Email.EMAIL_METHOD_ID[23,1])
to a peek stage. This is assuming the character is at position 23 in the string.
Maveric
Participant
Posts: 388
Joined: Tue Mar 13, 2007 1:28 am

Post by Maveric »

sendmkpk wrote:It did not recognize the record.
How do I check if NLS is installed.
Is it not recognizing the character i.e count =0 or is it giving any warning?
balajisr
Charter Member
Charter Member
Posts: 785
Joined: Thu Jul 28, 2005 8:58 am

Post by balajisr »

sendmkpk wrote:How do I check if NLS is installed.
If you have NLS enabled then some stages will have "NLS MAP" tab. E.g Sequential file stage. Do you have a tab named "NLS Map" under Stage tab in sequential file stage?
Post Reply