FRM-40831: Truncation occurred:value too long for field;with non-Engl data
793848Aug 26 2010 — edited Aug 27 2010Hi!
I use AL32UTF8 charset for multilanguage solution.
I have a table in database and a data block associated with this table in Forms.
Field in the table have Length Semantic equal CHAR.
The error occurs in Forms when I try to insert/update any record using Russian chars and length of data is more than half of MaxLength of the field then i get FRM-40831. Yes, non-English chars take 2 bytes. But I have tried compile form with the environment variables :
set NLS_LENGTH_SEMANTICS=CHAR
set NLS_LANG=RUSSIAN_RUSSIA.AL32UTF8 (or AMERICAN_AMERICA.AL32UTF8)
Why NLS_LENGTH_SEMANTICS doesn't work in this case?
Query works fine. Full length of data is retrieved.
Using SQL I can insert/update, this all works fine. This is Forms problem.
I have figured out that error occurs in INSERT-PROCEDURE trigger ( or UPDATE-PROCEDURE when update).
I use Oracle Database release 11.1.0.7.0 and Forms Developer Version 10.1.2.3.0.