Arabic forms are not opening in R12.1.3
Soution:
After the restart of the database and listener check the result using sqlplus from the database $ORACLE_HOME
Soution:
Refered Note: 292942.1
1.A) Create the "9i behavior" file set:
you have 2 way's to do
this:
1* OR Automatically (If you have perl installed)
run the $ORACLE_HOME/nls/data/old/cr9idata.pl script to create the $ORACLE_HOME/nls/data/9idata directory.
run the $ORACLE_HOME/nls/data/old/cr9idata.pl script to create the $ORACLE_HOME/nls/data/9idata directory.
$ORACLE_HOME/perl/bin/perl
$ORACLE_HOME/nls/data/old/cr9idata.pl
sample output:
Creating directory
/grdbms/64bit/patchdb/app/oracle/product/p12101a/nls/data/9idata ...
Copying files to /grdbms/64bit/patchdb/app/oracle/product/p12101a/nls/data/9idata...
Copy finished.
Please reset environment variable ORA_NLS10 to /grdbms/64bit/patchdb/app/oracle/product/p12101a/nls/data/9idata!
Copying files to /grdbms/64bit/patchdb/app/oracle/product/p12101a/nls/data/9idata...
Copy finished.
Please reset environment variable ORA_NLS10 to /grdbms/64bit/patchdb/app/oracle/product/p12101a/nls/data/9idata!
After creating the
fileset check that $ORACLE_HOME/nls/data/9idata contains more than 500 files
ls -l
$ORACLE_HOME/nls/data/9idata | wc -l
note: if
$ORACLE_HOME/nls/data/9idata already exist and you want to redo the file
generation "to make sure" then it might be a good idea to shutdown
all oracle processes using this ORACLE_HOME
2* OR Manually
note: if
$ORACLE_HOME/nls/data/9idata already exist and you want to redo the file
generation "to make sure" then it might be a good idea to shutdown
all oracle processes using this ORACLE_HOME
a) make a new subdirectory under $ORACLE_HOME/nls/data called "9idata"
b) COPY all files in $ORACLE_HOME/nls/data/ to $ORACLE_HOME/nls/data/9idata
c) COPY all files from $ORACLE_HOME/nls/data/old to $ORACLE_HOME/nls/data/9idata
you will need to overwrite some files - this is normal.
on Unix this means:
a) make a new subdirectory under $ORACLE_HOME/nls/data called "9idata"
b) COPY all files in $ORACLE_HOME/nls/data/ to $ORACLE_HOME/nls/data/9idata
c) COPY all files from $ORACLE_HOME/nls/data/old to $ORACLE_HOME/nls/data/9idata
you will need to overwrite some files - this is normal.
on Unix this means:
* make sure the
$ORACLE_HOME is set correctly
rm -r $ORACLE_HOME/nls/data/9idata
mkdir $ORACLE_HOME/nls/data/9idata
cp $ORACLE_HOME/nls/data/*.* $ORACLE_HOME/nls/data/9idata
cp $ORACLE_HOME/nls/data/old/*.* $ORACLE_HOME/nls/data/9idata
rm -r $ORACLE_HOME/nls/data/9idata
mkdir $ORACLE_HOME/nls/data/9idata
cp $ORACLE_HOME/nls/data/*.* $ORACLE_HOME/nls/data/9idata
cp $ORACLE_HOME/nls/data/old/*.* $ORACLE_HOME/nls/data/9idata
The ORDER is important,
FIRST do point B) then do point C), do NOT inverse this.
d)After creating the 9i
fileset check that $ORACLE_HOME/nls/data/9idata contains more than 500 files
* The
$ORACLE_HOME/nls/data/old directory only contains the changed files, so
you need to overwrite copy the more than 500 files of $ORACLE_HOME/nls/data/
to $ORACLE_HOME/nls/data/9idata and then overwrite some files in
$ORACLE_HOME/nls/data/9idata with the ones found in $ORACLE_HOME/nls/data/old .
* You cannot use Oracle9i (or earlier) NLB files in Oracle10g and up.
* You cannot use the new Oracle10g definitions in Oracle9i and lower.
* You cannot use Oracle9i (or earlier) NLB files in Oracle10g and up.
* You cannot use the new Oracle10g definitions in Oracle9i and lower.
After creating the
"9i behavior" file set you need to point ORA_NLS10 to
$ORACLE_HOME/nls/data/9idata instead of the default $ORACLE_HOME/nls/data/
directory and start the database *and* listener on the server using the new
setting.
NOTE: The creation of the "Oracle9i behavior" files and setting ORA_NLS10 to $ORACLE_HOME/nls/data/9idata should be done on the database server AND on all 10g/11g clients which connect to this system (!).
NOTE: The creation of the "Oracle9i behavior" files and setting ORA_NLS10 to $ORACLE_HOME/nls/data/9idata should be done on the database server AND on all 10g/11g clients which connect to this system (!).
On Unix you need to set
the ORA_NLS10 variable for the Oracle user or any other Unix user that
stops and starts the listener/database. Make sure to not forget any startup
scripts when the server starts up.
When using RAC you need
ALSO set the ORA_NLS10 variable using srvctl
$ srvctl setenv database
-d <dbname> -t ORA_NLS10=$ORACLE_HOME/nls/data/9idata
-- set it for all RAC managed listeners
$ srvctl setenv listener -t ORA_NLS10=$ORACLE_HOME/nls/data/9idata
-- set it for one specific listener
$ srvctl setenv listener -l <listener_name> -t ORA_NLS10=$ORACLE_HOME/nls/data/9idata
$ srvctl stop database -d <dbname>
$ srvctl stop listener
$ srvctl start listener
$ srvctl start database -d <dbname>
-- set it for all RAC managed listeners
$ srvctl setenv listener -t ORA_NLS10=$ORACLE_HOME/nls/data/9idata
-- set it for one specific listener
$ srvctl setenv listener -l <listener_name> -t ORA_NLS10=$ORACLE_HOME/nls/data/9idata
$ srvctl stop database -d <dbname>
$ srvctl stop listener
$ srvctl start listener
$ srvctl start database -d <dbname>
After the restart of the database and listener check the result using sqlplus from the database $ORACLE_HOME
export
ORA_NLS10=$ORACLE_HOME/nls/data/9idata
sqlplus / as sysdba
select to_char(to_date( '18/04/2009', 'DD/MM/YYYY'),'DD-MON-YYYY', 'NLS_DATE_LANGUAGE=FRENCH') from dual;
-- this should give 18-AVR-2009
sqlplus / as sysdba
select to_char(to_date( '18/04/2009', 'DD/MM/YYYY'),'DD-MON-YYYY', 'NLS_DATE_LANGUAGE=FRENCH') from dual;
-- this should give 18-AVR-2009
if this is correct then
the *database* side is fine.