Skip to main content

We have recently upgraded our SQL Server 2008 R2 to SQL Server 2014. To support that, we have also upgraded the AcuGT runtime and Acu4GL from v8.1.1 to v10.2 accordingly. However, the program returns "File Status code 9D, 8152 - String or binary data would be truncated." error after upgraded to v10.2. After investigation, we found there is a column of a table which data length (Char(10)) is shorter than the definition defined in FD (Char(15)). This program did not return any error in Acu4GL v8.1.1 when FD and data length of column are not match if we would not update more than 10 characters in this column. But in v10.2, it will return error once we update data to the table. To solve this problem, we need to extend the column data length match with FD. But the problem is we don't know how many columns are not match with FD because we have more than a hundred tables in our system and we do not aware this is a problem in v8.1.1 before. Thus my question is, does Acu4GL has any configuration setting that can make v10.2 behavior back to v8.1.1 (do not return error if FD and data length of column do not match)? Because we cannot afford to do a system full cycle test to find out all mismatch columns in short period.    


#Acu4GL

We have recently upgraded our SQL Server 2008 R2 to SQL Server 2014. To support that, we have also upgraded the AcuGT runtime and Acu4GL from v8.1.1 to v10.2 accordingly. However, the program returns "File Status code 9D, 8152 - String or binary data would be truncated." error after upgraded to v10.2. After investigation, we found there is a column of a table which data length (Char(10)) is shorter than the definition defined in FD (Char(15)). This program did not return any error in Acu4GL v8.1.1 when FD and data length of column are not match if we would not update more than 10 characters in this column. But in v10.2, it will return error once we update data to the table. To solve this problem, we need to extend the column data length match with FD. But the problem is we don't know how many columns are not match with FD because we have more than a hundred tables in our system and we do not aware this is a problem in v8.1.1 before. Thus my question is, does Acu4GL has any configuration setting that can make v10.2 behavior back to v8.1.1 (do not return error if FD and data length of column do not match)? Because we cannot afford to do a system full cycle test to find out all mismatch columns in short period.    


#Acu4GL
The warning is valid, there is going to be data loss. I'm not sure if there is an option to suppress the warning, but you can find mismatches by generating XFDs for your files and then comparing the field lengths to SQL. In MSSQL you can get a list with a query like this:
select * from MyDatabaseName.information_schema.columns order by table_name, ordinal_position

Once you have the 2 lists, it shouldn't be too difficult to do a comparison and find any mismatches.