Check what is the datatype you have defined for the field in the Source transformation?
Since you have mentioned that you are typecasting the varchar field to decimal in the "Source Qualifier" transformation, the field should be defined as "varchar" only in the Source transformation & Source Qualifier transformation.
If it is defined as "decimal" in the Source transformation, it is likely to give an error while reading data from Teradata as the Teradata send the field as varchar whereas the "Source " transformation in Informatica expects a decimal.
Check it out as I don't know how you have defined it. The datatype defined for the field in the rest of the pipeline is irrelevant as you are typecasting in the "Source Qualifier" transformation to decimal.
The other scenario that I could think of from your description is that you are wrongly linking a "varchar" datatype field to "decimal" datatype field. This could be obvious but nevertheless wanted to mention it here & please check it out.