Forum Stats

  • 3,852,796 Users
  • 2,264,137 Discussions


Forms 10g + UTF8 - Item displays #### when it's content are too long

T. Morton
T. Morton Member Posts: 64 Blue Ribbon
edited Nov 7, 2013 4:20AM in Forms


I'm facing a strange behaviour with Forms 10g and NLS_LANG=UTF8.

DB 11G withcharset in AL32UTF8 on Linux

Forms 10G on Linux

We are currently upgrading our application form DB 10G to DB 11G + UTF8.

After coping DB data from 10G to 11G, we changed columns sementics from BYTE to CHAR in DB 11G.

Migration worked fine.

Now we try to connect our application in Forms 10G to the new DB 11G + UTF8.

First we faced the error ORA-01461"can bind a long value only for insert into a long column".

To solve this error, we specified the NLS_LANG=american_america.utf8 in default.env.

This problem is fixed now.

We have specified the following parameters while compiling:





The application runs fine except for some ITEMs which display #### when their content is too long.

For exemple with an ITEM Varchar2(5) length_semantics=NULL (So the compiler uses the NLS_LENGTH_SEMANTICS specified during compilation).

-- When I fill it with 'xxxxx' it works fine.

-- When I fill it with 'xxxxé' it displays '#####'. The ITEM behave like in Excell when cell data cannot be displayed in a whole.

Any idea on how I can avoid this behaviour ?

Thanks in advance.



Best Answer

  • Christian Erlinger
    Christian Erlinger Member Posts: 3,244 Gold Trophy
    Answer ✓

    There is a bug in Forms for when the length of an item in BYTE exceeds the CHAR data length # are displayed.


    length('xxxxx') = lengthb('xxxxx')


    length('xxxxä') < lengthb(xxxxä')

    so you'll get #.

    there is a one-off patch for that which number I can't remember. The patch is bundled in the last patch bundles for Forms #9593176 and #13095466 which will also give you the benefits of being able to run your 10g Forms with Java7 (though it's not certified).



This discussion has been closed.