ORA-12500 Error

What is the Solution for ORA-12500 ERROR?
ORA-12500TNS:listener failed to start a dedicated server process.
Thanks in Advance.

Generally speaking one only sets the processes parameter, the sessions parameter will be automatically derive from the processes parameter.
However: each process constitutes a Windows thread.
You may be hitting the maximum number of threads for a Windows process (There is one Oracle process, and each dedicated server process is a thread).
What the maximum number of threads is I don't know, but I have never managed to have more than 200 processes.
You should investigate to convert to shared server.
Open_cursors refers to the number of SQL statements which can be opened by an individual session.
Sybrand Bakker
Senior Oracle DBA

Similar Messages

  • Frustrating ORA-12500 error

    Hi all,
    HELP!!!
    I'm using Oracle7.3 database server on Windows NT4.0 and workstation is Chinese Windows98. My PB6.5 application make two connections whenever login. The first connection always success (retrieve application general data) and the second connection (retrieve specific data) always have the ORA-12500 error msg after ~1min24s waiting. However the 2nd connection always success on second/third attempt.
    Anybody know why???
    I've already checked the server's listener.ora and workstations's tnsnames.ora files, they seems normal to me.
    When I run OEM, I got the ORA-12500 error msg also no matter how many times I try. But it is very normal when I use INSTANCE manager, SCHEMA manager, SECURITY manager, STORAGE manager.
    Please help!!!

    Generally speaking one only sets the processes parameter, the sessions parameter will be automatically derive from the processes parameter.
    However: each process constitutes a Windows thread.
    You may be hitting the maximum number of threads for a Windows process (There is one Oracle process, and each dedicated server process is a thread).
    What the maximum number of threads is I don't know, but I have never managed to have more than 200 processes.
    You should investigate to convert to shared server.
    Open_cursors refers to the number of SQL statements which can be opened by an individual session.
    Sybrand Bakker
    Senior Oracle DBA

  • ORA-12500 error while refreshing webi report

    Hi All,
    The problem looks simple, but i am struck with this. I am trying to refresh a webi report in BO XI R3.1, it throws the error "DBD: ORA-12500: TNS:listener failed to start a dedicated server process". It looks like there is no issue with the tnsnames.ora and sqlnet.ora.whar could be the other cause for this issue ? Any input will be appreciated.  Thanks in advance.
    Thanks
    Raj

    Hi,
       You need to fix up the issue on the Oracle D/B side first prior to testing on WebI.
       Try this link, it explains the error encountered in more details.
                 http://ora-12500.ora-code.com/
       Simply put, can you use client tool (e.g. TOAD) to log into Oracle D/B using the same machine?
       Fix up the connection then WebI will work.
    Regards,
    Ken

  • ORA-12500 error message, help me

    Oracel 8.1.7 on Windows 2k server
    run:
    connect system/manager
    in SQLPLUS, ok
    but run:
    connect system/[email protected]
    in SQLPLUS,got
    ORA-12500 TNS: listener failed to start a dedicated server
    process
    oradb1 is the SID of the only one database.
    cosp.local is domain name.
    oradb1.cosp.local is the service name.
    all required services have been started already.
    Please help to fix it.
    Thanks a lot

    It is a 3 party proprietary programming language, SQL-like in nature.
    I used a Oracle driver replacing the Microsoft driver. This time I did not get any error but no values were inserted in the table for CLOB. But if I change the datatype to LONG, values are getting inserted.
    Thanks!

  • Need Urgent Help. ORA-12500 with no reason

    I need urgent help.
    I have 8.1.7.2.1 on Win2K.
    I get ORA-12500 error when trying to connect oracle instance. This problem begin to arise only when number of sessions reach a number about 200. At the same time there is no definite boundary for it. Once it happened when there were 216 session, then 196, then 206.
    There rarely (1/100) I get ORA-12514 and after again ORA-12500. Once I got ORA-12600.
    What it might be you think? It can't be a problem in listener.ora or in tnsnames.ora because it works fine if number of sessions is about 100. It tried to restart tnslistener (from lsnrctl and the service) and restarted database (but not the service). I did it different in sequences, but didn't help. What should I do? Is it a known bug?

    I need urgent help.
    I have 8.1.7.2.1 on Win2K.
    I get ORA-12500 error when trying to connect oracle instance. This problem begin to arise only when number of sessions reach a number about 200. At the same time there is no definite boundary for it. Once it happened when there were 216 session, then 196, then 206.
    There rarely (1/100) I get ORA-12514 and after again ORA-12500. Once I got ORA-12600.
    What it might be you think? It can't be a problem in listener.ora or in tnsnames.ora because it works fine if number of sessions is about 100. It tried to restart tnslistener (from lsnrctl and the service) and restarted database (but not the service). I did it different in sequences, but didn't help. What should I do? Is it a known bug? bash-2.03$ oerr ora 12500
    12500, 00000, "TNS:listener failed to start a dedicated server process"
    // *Cause:  The process of starting up a dedicated server process failed.
    // The executable could not be found or the environment may be set up
    // incorrectly.
    // *Action: Turn on tracing at the ADMIN level and reexecute the operation.
    // Verify that the ORACLE Server executable is present and has execute
    // permissions enabled. Ensure that the ORACLE environment is specified
    // correctly in LISTENER.ORA. The Oracle Protocol Adapter that is being
    // called may not be installed on the local hard drive. Please check that
    // the correct Protocol Adapter are successfully linked.
    // If error persists, contact Oracle Customer Support.
    There is not enough info to go on but the problem seems to be either in the listener.ora
    or tnsnames.ora. Did you make any changes before this started occurring?
    William

  • Help! ORA-12500

    We have Oracle 7.2 (HP Unix).
    Oracle are crashed with the error message ora-12500, when the number of oracle users exceed 140.
    Initora parameters are the following:
    processes = 400
    sessions =300
    We also set the kernel (Unix) parameter “max semaphores” to 400 but it doesn’t help too.
    How can we solve this?
    Thanks in advance.
    Alex.

    I need urgent help.
    I have 8.1.7.2.1 on Win2K.
    I get ORA-12500 error when trying to connect oracle instance. This problem begin to arise only when number of sessions reach a number about 200. At the same time there is no definite boundary for it. Once it happened when there were 216 session, then 196, then 206.
    There rarely (1/100) I get ORA-12514 and after again ORA-12500. Once I got ORA-12600.
    What it might be you think? It can't be a problem in listener.ora or in tnsnames.ora because it works fine if number of sessions is about 100. It tried to restart tnslistener (from lsnrctl and the service) and restarted database (but not the service). I did it different in sequences, but didn't help. What should I do? Is it a known bug? bash-2.03$ oerr ora 12500
    12500, 00000, "TNS:listener failed to start a dedicated server process"
    // *Cause:  The process of starting up a dedicated server process failed.
    // The executable could not be found or the environment may be set up
    // incorrectly.
    // *Action: Turn on tracing at the ADMIN level and reexecute the operation.
    // Verify that the ORACLE Server executable is present and has execute
    // permissions enabled. Ensure that the ORACLE environment is specified
    // correctly in LISTENER.ORA. The Oracle Protocol Adapter that is being
    // called may not be installed on the local hard drive. Please check that
    // the correct Protocol Adapter are successfully linked.
    // If error persists, contact Oracle Customer Support.
    There is not enough info to go on but the problem seems to be either in the listener.ora
    or tnsnames.ora. Did you make any changes before this started occurring?
    William

  • Error Ora-12500 when using dblink

    Hi all,
    I have a database that I can connect directly with no problem, but there's error when I try to connect to that db from another db by using dblink
    (Select * from someTab@link_name)
    The error is Ora-12500
    (Sure that tnsname.ora file is OK, I meant SID that using in dblink)
    What can I do to deal with this prob?
    Thank you!

    Mr_what wrote:
    Thank you guys! Of course I've known what Ora-12500 means, google is always the first thing I do when have to deal with any prob.Then you should have run across the cause of the problem..?
    The client (in this case, the PL/SQL code using the db-link) uses a TNS alias to connect to an Oracle Listener. Part of the TNS alias is specifying the database the client wants to connect to (e.g. using SID or SERVICE_NAME).
    The Listener confirms that it services this SID or service (it needs to be registered with the Listener). It then "+hands off+" the connection to that database. It can do this either as a dedicated or shared server process.
    In your case, your TNS connection does not request a shared server connection. So the Listener needs to provide a dedicated server to service your client connection. It does so by executing +$ORACLE_HOME/bin/oracle+ - using the settings for that registered database (which includes the +$ORACLE_HOME+ dir). It passes command line parameters to this process (typically +(LOCAL=NO)+ ), and other data via the call (such as the socket handle this oracle executable needs to use to communicate with your client session).
    This is the step that fails. The Listener fails to create this dedicated process. It uses a specific kernel call (differs from o/s to o/s) to create this dedicated server (a process on Linux/Unix, or thread on Windows). This call is usually what fails and results in the error you see on the client side.
    There can be a number of reasons why this failed. The usual two suspects are:
    - the kernel not allowing the Oracle o/s user to create more processes as it has reached it resource quota
    - invalid +$ORACLE_HOME+ and the call fails to load the bin/oracle executable process
    I would first eliminate these two as the cause of the problem. If it is not caused by these, then I would enable listener tracing and troubleshoot a connection that results in this error. There are various levels of diagnostics that can be enabled for tracing. At the lowest level one can trace the actual calls made by the listener, including the parameters values passed.

  • Get error ORA-12500 : TNS Listener

    I keep getting this ORA-12500 ODBC error, TNS listener could not be resolved.
    What does it mean?
    What is causing it?
    The error comes and goes by itself within a few seconds.
    Any help is appreciated.
    Thanks.

    I'm using Oracle 8i (8.1.6)

  • Error: ORCL-002: CreateConnInternal olog(): ORA-12500:

    Hello,
    I'm sometimes getting this error error: ORCL-002: CreateConnInternal olog(): ORA-12500:
    TNS:listener failed to start a dedicated server process
    in the nas logs after which the NAS server hangs.
    I'm using NAS 4.0 sp5 on HPUX and connecting to an Oracle 8 database using ORACLE_OCI. Anybody has
    come across this error. What could be the possible
    solution ?
    Thanks for your help,
    Amit

    I guess this problem is from the Oracle Server,
    One of these steps might work,
    1. Stop and start the listener. (May be not a good idea.)
    2. May be you are not using the same user/password to start the listener as the database instance.
    You may use, system/manager.
    Please get back for any further assistance.
    Thanks,
    Rakesh,
    Developer-Support Team,
    Sun ONE Application Server.

  • ERROR ORA-12500

    Hi everybody,
    To run WebDB2.0.5.6.1/oracle 8.0.5 on Linux/RH6.0
    I obtain the following error message. This, results when
    I prompted: $ sqlplus WEBDB@ORCL (ORCL is my database).
    "ERROR:
    ORA-12500: TNS:listener failed to start a dedicated server
    process"
    HELP: when I type : $ oerr ora 12500, I obtain the
    following:
    12500, 00000, "TNS:listener failed to start a dedicated
    server process"
    // *Cause: The process of starting up a dedicated server
    process failed.
    // The executable could not be found or the environment may
    be set up
    // incorrectly.
    // *Action: Turn on tracing at the ADMIN level and
    reexecute the operation.
    // Verify that the ORACLE Server executable is present and
    has execute
    // permissions enabled. Ensure that the ORACLE environment
    is specified
    // correctly in LISTENER.ORA. The Oracle Protocol Adapter
    that is being
    // called may not be installed on the local hard drive.
    Please check that
    // the correct Protocol Adapter are successfully linked.
    // If error persists, contact Oracle Customer Support.
    Please help to solve this problem.
    Regards,
    Mohamed
    null

    Hi Rob,
    Thank you for your reply.
    I follow your step
    1. LSRNR STOP
    message : "Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) The command completed successfully
    2. LSRNR STOP
    message : "Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) The command completed successfully
    3. LSRNR EXIT
    4. TNSPING TEGUH
    message : "Attemping to contact (ADDRESS=(PROTOCOL=TCP)(HOST=teguhs_nt)(PORT=1521)) OK (220 msec)"
    I do all your suggestion but error still exist.
    I still need help. thank you.
    regards
    teguh

  • Listener refused the connection with the following error: ORA-12500

    Hi,
    We had had some difficulties with our portal lately. All of a sudden portlets failed and started givin error messages all over our webpages.
    I tried to login to EM Console to try and restart Portal OC4J and got this error
    An error was encountered while loading page. An error occurred when attempting to connect to the Database.
    Resolution:
    Make sure that the database and listener are up.
    If the database is up, make sure that the OracleAS Repository API files ias.properties and iasschema.xml are correctly configured.
    If necessary, use the EM Console to reconfigure the host, user name and password associated with the database
    Base Exception:
    java.sql.SQLException
    Listener refused the connection with the following error:
    ORA-12500, TNS:listener failed to start a dedicated server process
    The Connection descriptor used by the client was:
    (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=PORTAL.MSS.EDUS.SI)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ASDB.MSS.EDUS.SI)))
    . Listener refused the connection with the following error:
    ORA-12500, TNS:listener failed to start a dedicated server process
    The Connection descriptor used by the client was:
    (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=PORTAL.MSS.EDUS.SI)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ASDB.MSS.EDUS.SI)))
    In ..INF/network/sqlnet.log
    Fatal NI connect error 12500, connecting to:
    (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=portal.mss.edus.si)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=asdb.mss.edus.si)(CID=(PROGRAM=I:\Oracle\INF\Apache\Apache\Apache.exe)(HOST=CLUSTER1)(USER=SYSTEM))))
    VERSION INFORMATION:
         TNS for 32-bit Windows: Version 10.1.0.4.0 - Production
         Windows NT TCP/IP NT Protocol Adapter for 32-bit Windows: Version 10.1.0.4.0 - Production
    Time: 11-JUN-2007 13:00:24
    Tracing not turned on.
    Tns error struct:
    ns main err code: 12564
    TNS-12564: TNS:connection refused
    ns secondary err code: 0
    nt main err code: 0
    nt secondary err code: 0
    nt OS err code: 0
    After restart everything works as normal. Any ideas what went wrong, or where to look for some additional answers?

    Ora12500 means your OS has run out of resources, so you cannot start a process on the Server Side. Post the complete error stack, the last lines show further information to troubleshoot this error.

  • Newbie ORA-12500  Connection Error

    I am attempting to connect to the Oracle 10g database with JDeveloper, and whenever I attempt to connect, I receive this message:
    Listener refused the connection with the following error:
    ORA-12500, TNS:listener failed to start a dedicated server process
    The Connection descriptor used by the client was:
    192.168.0.101:1521:ORCL
    I have tried using the computer name, localhost, 127.0.0.1, I get either an error saying that the network adapter can not resolve the connection, or the error message above. When connecting, I use Net Manager to configure the addresses. Any help would be greatly appreciated since I am a complete newbie to Oracle tecnologies.
    Thank you in advance
    Ryan

    I am logged into SQLPLUS with no problem as the SYSTEM account, (I only receive the problem when trying to log in through JDeveloper) and I altered the spfile processes to 200, however...
    bounce the database.I do not know how to do this, what command do you use to bounce the database and what does it do, also...
    Then just restart the Listener from the command prompt
    lsnrctl stop
    lsnrctl startWhen I attempt to do any lsnrctl functions, including help, I receive this error in SQLPLUS: SP2-0734: "unknown command beginning "lsnrctrl s..." - rest of line ignored."
    Any suggestions?
    Check if the problem is solved.The problem is still the same after altering the spfile, hopefully after I bounce the database and reset the Listener, this will be fixed.
    Thank you for all your help so far
    Ryan

  • Listener refused the connection with the following error: ORA-12500, TNS:li

    I got this error when I use EM, or sqlplus:
    Listener refused the connection with the following error: ORA-12500, TNS:listener failed to start a dedicated server process
    when I do
    $lsnrctl status:
    here is the result
    Service "abc.def.com" has 3 instance(s).
    Instance "dbtest", status UNKNOWN, has 1 handler(s) for this service...
    Instance "dbtest", status BLOCKED, has 1 handler(s) for this service...
    Instance "dbtest", status READY, has 1 handler(s) for this service...
    please help. Thanks.

    Ora12500 means your OS has run out of resources, so you cannot start a process on the Server Side. Post the complete error stack, the last lines show further information to troubleshoot this error.

  • ORA-12500 and Memory limited

    This is list of environment
    - Oracle 8.1.7
    - OS is AIX
    - RAM = 2GB
    - 3 instances
    when user try to connect too much that will show ORA-12500 and I select this statement in a problem instance
    "select count(1) from v$session" the result estimate is 502.
    "select count(1) from v$process" the result estimate is 504
    and another instance 10 sessions and 20 sessions.
    This's folloing a part of parameters.
    bitmap_merge_area_size integer 1048576
    create_bitmap_area_size integer 8388608
    db_block_buffers integer 10000
    db_block_lru_latches integer 2
    db_block_max_dirty_target integer 10000
    db_block_size integer 8192
    distributed_transactions integer 243
    hash_area_size integer 16777216
    hash_multiblock_io_count integer 32
    java_pool_size string 20000K
    large_pool_size string 0
    processes integer 800
    sessions integer 885
    shared_pool_reserved_size string 15000000
    shared_pool_size string 300000000
    sort_area_retained_size integer 1048576
    sort_area_size integer 4194304
    sort_multiblock_read_count integer 32
    transactions integer 973
    transactions_per_rollback_segment integer 5
    How to modify or change some parameter for fix this problem?

    I think you need to give more description about problem.
    You might review the following Oracle Metalink Document:
    SQL*Net (oracle Networking) Common Errors & Diagnostic Worksheet: Doc ID: Note:45878.1
    https://metalink.oracle.com/metalink/plsql/f?p=130:14:5712140308577577466::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,45878.1,1,0,1,helvetica
    If possible also upgrade your database.
    Adith

  • Can't get my plsql working, ORA-05602 error

    Hello all, I am experiencing an issue with my plsql and I have check all my variables and it seems to be hidden from my eyes. This is my package:
    create or replace package body PKG_TESTSTR is
       type segment is record (
          bbold  boolean,
          bundr  boolean,
          bital  boolean,
          bleft  boolean,
          brigh  boolean,
          bcent  boolean,
          bjust  boolean,
          btipo  varchar2(1),
          text   VARCHAR2(32767));
       type LSEGMENTS is TABLE OF segment index by pls_integer;
       function splitSegments2(input VarChar2) return LSEGMENTS
       Is
          l_idx     pls_integer;
          bbold     boolean := false;
          bundr     boolean := false;
          bital     boolean := false;
          bleft     boolean := false;
          brigh     boolean := false;
          bcent     boolean := false;
          bjust     boolean := false;
          btipo     varchar2(1);
          info      VarChar2(32767);
          i         pls_integer := 0;
          segments  LSEGMENTS;
       Begin
          info := input;
          loop
             l_idx := instr(info,'<');
             i := i + 1;
             segments(i).bbold := bbold;
             segments(i).bundr := bundr;
             segments(i).bital := bital;
             segments(i).bleft := bleft;
             segments(i).brigh := brigh;
             segments(i).bcent := bcent;
             segments(i).bjust := bjust;
             segments(i).btipo := btipo;
             if l_idx > 0 then
                if upper(substr(info,l_idx+1,2)) = 'B>' then
                   if bbold then raise_application_error(-20010, 'B'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bbold := true;
                   info  := substr(info,l_idx+3);
                   btipo := 'F';
                elsif upper(substr(info,l_idx+1,2)) = 'I>' then
                   if bital then raise_application_error(-20010, 'I'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bital := true;
                   info  := substr(info,l_idx+3);
                   btipo := 'F';
                elsif upper(substr(info,l_idx+1,2)) = 'U>' then
                   if bundr then raise_application_error(-20010, 'U'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bundr := true;
                   info  := substr(info,l_idx+3);
                   btipo := 'F';
                elsif upper(substr(info,l_idx+1,15)) = 'P ALIGN="LEFT">' then
                   if bleft then raise_application_error(-20010, 'P LEFT'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bleft := true;
                   info  := substr(info,l_idx+16);
                   btipo := 'A';
                elsif upper(substr(info,l_idx+1,16)) = 'P ALIGN="RIGHT">' then
                   if brigh then raise_application_error(-20010, 'P RIGHT'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   brigh := true;
                   info  := substr(info,l_idx+17);
                   btipo := 'A';
                elsif upper(substr(info,l_idx+1,17)) = 'P ALIGN="CENTER">' then
                   if bcent then raise_application_error(-20010, 'P CENTER'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bcent := true;
                   info  := substr(info,l_idx+18);
                   btipo := 'A';
                elsif upper(substr(info,l_idx+1,18)) = 'P ALIGN="JUSTIFY">' then
                   if bjust then raise_application_error(-20010, 'P JUSTIFY'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bjust := true;
                   info  := substr(info,l_idx+19);
                   btipo := 'A';
                elsif upper(substr(info,l_idx+1,3)) = '/B>' then
                   if not bbold then raise_application_error(-20010, '/B'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bbold := false;
                   info  := substr(info,l_idx+4);
                elsif upper(substr(info,l_idx+1,3)) = '/I>' then
                   if not bital then raise_application_error(-20010, '/I'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bital := false;
                   info  := substr(info,l_idx+4);
                elsif upper(substr(info,l_idx+1,3)) = '/U>' then
                   if not bundr then raise_application_error(-20010, '/U'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bundr := false;
                   info  := substr(info,l_idx+4);
                elsif upper(substr(info,l_idx+1,3)) = '/P>' and bleft then
                   if not bleft then raise_application_error(-20010, '/P LEFT'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bleft := false;
                   info  := substr(info,l_idx+4);
                elsif upper(substr(info,l_idx+1,3)) = '/P>' and brigh then
                   if not brigh then raise_application_error(-20010, '/P RIGHT'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   brigh := false;
                   info  := substr(info,l_idx+4);
                elsif upper(substr(info,l_idx+1,3)) = '/P>' and bcent then
                   if not bcent then raise_application_error(-20010, '/P CENTER'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bcent := false;
                   info  := substr(info,l_idx+4);
                elsif upper(substr(info,l_idx+1,3)) = '/P>' and bjust then
                   if not bjust then raise_application_error(-20010, '/P JUSTIFY'); end if;
                   if l_idx = 1 then
                      i := i - 1;
                   else
                      segments(i).text := substr(info,1,l_idx-1);
                   end if;
                   bjust := false;
                   info  := substr(info,l_idx+4);
                else
                   segments(i).text := substr(info,1,l_idx);
                   info  := substr(info,l_idx+1);
                   btipo := 'T';
                end if;
             else
                segments(i).text := info;
                exit;
             end if;
          end loop;
          return segments;
       End;
       function generateReportsTags(input Varchar2) return Varchar2
       Is
          segments LSEGMENTS;
          resp     varchar2(32767);
          --resp     long;
          bold     boolean := false;
          alin     boolean := false;
          tipo     varchar2(1);
          y        number;
       Begin
          dbms_output.put_line('Iniciando execucao');
          y := 0;
          segments := splitSegments2(input);
          dbms_output.put_line('Passou pelo split');     
          for i in segments.first .. segments.last loop
             if i = 1 then
                resp := '<report>' || chr(13) || chr(10);
                resp := resp || '<layout>' || chr(13) || chr(10);
                resp := resp || '<section name="main">' || chr(13) || chr(10);
                resp := resp || '<body>' || chr(13) || chr(10);
                resp := resp || '<frame name="M_1">' || chr(13) || chr(10);
                resp := resp || '<geometryInfo x="0.00000" y="0.00000" width="7.12500" height="3.00000"/>' || chr(13) || chr(10);
                resp := resp || '<generalLayout verticalElasticity="variable"/>' || chr(13) || chr(10);
                resp := resp || '<text name="B_1" minWidowLines="1">' || chr(13) || chr(10);
                resp := resp || '<textSettings spacing="single"/>' || chr(13) || chr(10);
             end if;
             if nvl(tipo,' ') <> ' ' and nvl(tipo,' ') <> nvl(segments(i).btipo,' ') then
                resp := resp || '</text>' || chr(13) || chr(10);
                resp := resp || '<text name="B_1" minWidowLines="1">' || chr(13) || chr(10);
             end if;
             if segments(i).btipo in ('A') then
                if segments(i).brigh then
                   resp := resp || '<textSettings justify="end" spacing="single"/>' || chr(13) || chr(10);
                elsif segments(i).bcent then
                   resp := resp || '<textSettings justify="center" spacing="single"/>' || chr(13) || chr(10);
                elsif segments(i).bjust then
                   resp := resp || '<textSettings justify="flush" spacing="single"/>' || chr(13) || chr(10);
                elsif segments(i).bleft then
                   resp := resp || '<textSettings justify="start" spacing="single"/>' || chr(13) || chr(10);
                end if;
             end if;
             if i = 1 then
                y := 0.00000;
                resp := resp || '<geometryInfo x="0.06250" y="0.00000" width="7.00000" height="0.75000"/>' || chr(13) || chr(10);
                resp := resp || '<generalLayout verticalElasticity="variable"/>' || chr(13) || chr(10);
             elsif nvl(tipo,' ') <> ' ' and nvl(tipo,' ') <> nvl(segments(i).btipo,' ') then
                y := y + 0.75000;
                --width="7.06250"
                resp := resp || '<geometryInfo x="0.06250" y="'|| to_char(y + 0.00000, '0.00000') ||'" width="7.00000" height="0.75000"/>' || chr(13) || chr(10);
                resp := resp || '<generalLayout verticalElasticity="variable"/>' || chr(13) || chr(10);
             end if;        
             resp := resp || '<textSegment>' || chr(13) || chr(10);
             if segments(i).bbold then
                resp := resp || ' bold="yes"';
             end if;
             if segments(i).bital then
                resp := resp || ' italic="yes"';
             end if;
             if segments(i).bundr then
                resp := resp || ' underline="yes"';
             end if;
             resp := resp || '/>' || chr(13) || chr(10);
             resp := resp || '<string>' || chr(13) || chr(10);
             resp := resp || '<![CDATA[';
             resp := resp || segments(i).text;
             resp := resp || ']]>' || chr(13) || chr(10);
             resp := resp || '</string>' || chr(13) || chr(10);
             resp := resp || '</textSegment>' || chr(13) || chr(10);
             if (bold = true or alin = true) then        
                bold := false; 
                alin := false;
             end if;
             tipo := segments(i).btipo;
             if i = segments.last then
                resp := resp || '</text>' || chr(13) || chr(10);
                resp := resp || '</frame>' || chr(13) || chr(10);
                resp := resp || '</body>'    || chr(13) || chr(10);
                resp := resp || '</section>' || chr(13) || chr(10);
                resp := resp || '</layout>'  || chr(13) || chr(10);
                resp := resp || '</report>'  || chr(13) || chr(10);
            end if;
          end loop;
          return resp;
       End;
       procedure splitSegments(input VarChar2)
       Is
          segments LSEGMENTS;
          function Prin (bbold boolean, bundr boolean, bital boolean, bleft boolean, brigh boolean, bcent boolean, bjust boolean) return VarChar2
          Is
             resp VarChar2(3) := '';
          begin
             if bbold then resp := resp || 'B'; end if;
             if bundr then resp := resp || 'U'; end if;
             if bital then resp := resp || 'I'; end if;
             if bleft then resp := resp || 'P'; end if;
             if brigh then resp := resp || 'P'; end if;
             if bcent then resp := resp || 'P'; end if;
             if bjust then resp := resp || 'P'; end if;
             return resp;
          end;
       Begin
          segments := splitSegments2(input);
          for i in segments.first .. segments.last loop
             dbms_output.put_line(prin(segments(i).bbold, segments(i).bundr, segments(i).bital, segments(i).bleft, segments(i).brigh, segments(i).bcent, segments(i).bjust) || ' : ' || segments(i).text);
          end loop;
       End;
    end PKG_TESTSTR;I am getting an ORA-05602 error, and then an ORA-05612 at line 3 when I try to use and input with more than 4000 chars. Is this the problem?? I have changed all my varchar2 variables to get 32767 chars but i am still facing the same error.
    What I am possible doing wrong?
    Many thanks for all replies
    Thiago Locatelli

    That would be a bit of a problem once I cant get the part where it is raising such error. I have put dbms_output for debug, but everything goes in the outpout window but the error occurs.
    I am using plsql/developer to test the function...

Maybe you are looking for

  • Live Cyle forms

    I have Adobe Acrobat Pro 9 and in an update I have Live Cyle Designer for doing forms. I need to do a calculation and cannot figure out how. Where can I find a step by step explanation or a video explanation on how to do this.

  • Japanese fonts and writing and reading in all lang...

    Could you address me to a better nokia forum where developers could read my posts? Nokia messaging is very old, old T9 never updated. old text messanging, no html old only text messaging: no pictures, photos emoticons emoji (so japanese stopped buyin

  • Material Priceing Report

    Hello every body,                Plz help me, I am stuck with a report is to display all the priceing details based on Sales organization and division ( Material Priceing Report ) Kindly Plz send me as early as possible.

  • How to put jcheckbox in a jtable

    The problem is as followed: I've got An MSAcces2000 Database. From in my java prog I am getting data from this dbase. the data is loaded into a resultset. This resultset is loaded in a jtable. Now i want two extra columns in the jtable. One with a jc

  • How to protect ipad corners from any kind of damage?

    How to protect side or corners of ipad 2 ? How to protect back of ipad?