Anand,
Could you add a case statement in the Mload to check for space in the source file and the load only the valid decimal values.
If all spaces is the only invalid value???? I would think you could define the the input area as both char and decimal. Then use a case statement to check for spaces in the char name and set the target to null or zero if space and otherwise to the decimal column name.
If I am correctly understanding the problem, then I think you should try using TRIM Leading or Trailing or both
You can't use NULLIF function in SQL because that won't be evaluated until after the bad data has been sent to Teradata. Did you try using MLOAD NULLIF processing on the client side, something like this?
.FIELD MyFldC 99 CHAR(8);
.FIELD MyFldPD 99 DECIMAL(15,2) NULLIF MyFldC = ' ';
...
INSERT ... VALUES(... :MyFldPD ...);
I have to read mainframe binary file which has packed decimal fields comp-3 and binary.
How do I achieve this using teradata tpt?
I dont know why you selected this topic to post your question. Open up a new topic for your question. also, the information you have provided is very little that you will get help. Post more information like what exactly you are trying to do, what is the data definition in the binary file of mainframe etc.

Hi,
We are facing issues in loading a text file from a Mainframe system to Teradata database using Mulitload. Here are the details.
Problem Description :
In the text file that we are loading most of the records has "spaces" instead of packed decimal values for the column/field for which the error is being reported. Mulitload loads the records having columns with proper packed decimal values but rejects records which has spaces with error code 2679.
File Format : Text
Source Field datatype : Packed decimal (cobol comp3)
Target TD Column datatype : Decimal(15,2)
Error Message : 2679 The format or data contains a bad character
Has anyone encountered this problem before.
Please let me know your comments/suggestions.
With Regards,
Anand