Problem with error ORA-06502: PL/SQL: numeric string or the error value

Hello

I use a loop for the coil just out of data using 'dbms_output.put_line' and I get this error after a few records. I've been using and it happens at a different interval. He would have to do with the length of the question, I am trying to spool? Thank you.

ORA-06502: PL/SQL: numeric string or the error value

SD wrote:
Hello

I use a loop for the coil just out of data using 'dbms_output.put_line' and I get this error after a few records. I've been using and it happens at a different interval. He would have to do with the length of the question, I am trying to spool? Thank you.

ORA-06502: PL/SQL: numeric string or the error value

Yes, it's a mistake to dependent data.

Manage: SD
Status level: Beginner
Join date: November 21, 2001
Messages total: 289
Total Questions: 189 (183 pending)

Why wasting you time here when you get rarely answers your questions?

Tags: Database

Similar Questions

  • ORA-01722 PL/SQL: numeric string or the error value

    Hi people;

    I have an error with this request:
    SELECT SEQ_ENTITE.nextval, ENT_CODE_ENT, ENT_GPL_ID, TO_NUMBER('2012')+1, 
         pkg_etl_fdx.f_getseqexe('LPG_TYE', 'TYE_CODE_CON', ENT_CODE_TEN, 'TYE_SEQ', TO_NUMBER('2012')),
         ENT_LIB_ENT, ENT_SEUIL, 'O', 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, ENT_CODE_UNI, ENT_CODE_MERE, ENT_IND_FIN, 0,
         0, 0, ENT_NIVEAU, ENT_CODE_TEN, CHAR_TO_LABEL('EXERCICE', 'PUB:EXE'||TO_NUMBER('2012')+1||':'), OLS_GRP
         FROM ENTITE
         WHERE ENT_OLS_EXE = TO_NUMBER('2012');
    How to fix the PL/SQL ORA-01722: numeric value or error string?

    The description of the entity table:
    desc entite
    Nom           NULL     Type              
    ------------- -------- ----------------- 
    ENT_SEQ       NOT NULL NUMBER(38)        
    ENT_CODE_ENT  NOT NULL VARCHAR2(6 CHAR)  
    ENT_GPL_ID    NOT NULL NUMBER(10)        
    ENT_OLS_EXE   NOT NULL NUMBER(38)        
    ENT_TYE_SEQ            NUMBER(38)        
    ENT_LIB_ENT            VARCHAR2(40 CHAR) 
    ENT_SEUIL              NUMBER(3)         
    ENT_AUTO_DEP           VARCHAR2(1 CHAR)  
    ENT_TOT_REP            FLOAT(126)        
    ENT_TREC_VEN           FLOAT(126)        
    ENT_TREC_INT           FLOAT(126)        
    ENT_RPT_ANT            FLOAT(126)        
    ENT_TOT_VEN            FLOAT(126)        
    ENT_CUM_REP            FLOAT(126)        
    ENT_CREC_INT           FLOAT(126)        
    ENT_CRPT_ANT           FLOAT(126)        
    ENT_CCRE_RCU           FLOAT(126)        
    ENT_TOT_ENG            FLOAT(126)        
    ENT_TOT_FAC            FLOAT(126)        
    ENT_TDEP_INT           FLOAT(126)        
    ENT_TOT_DEM            FLOAT(126)        
    ENT_TOT_RES            FLOAT(126)        
    ENT_CODE_UNI           VARCHAR2(6 CHAR)  
    ENT_CODE_MERE          VARCHAR2(6 CHAR)  
    ENT_IND_FIN            VARCHAR2(1 CHAR)  
    ENT_TOT_ATT            FLOAT(126)        
    ENT_CUM_ATT            FLOAT(126)        
    ENT_CUM_REA            FLOAT(126)        
    ENT_NIVEAU             NUMBER(1)         
    ENT_CODE_TEN           VARCHAR2(2 CHAR)  
    OLS_EXERCICE           NUMBER(10)        
    OLS_GRP                NUMBER(10)   
    Thank you.
    select  'PUB:EXE'|| to_char(TO_NUMBER('2012')+1 )||':' from dual
    

    Kind regards
    Gena

  • ORA-06502: PL / SQL: numeric or value error: character string buffer too small

    Dear friends,

    We have a package customized for FTP PLSQL.
    I get ORA-06502: PL/SQL: digital or value error: character string buffer too small when the FTP service running.
    The FTP function call the HOST function that is in fact to launch the above mentioned error.
    Here is the code for FTP and HOST functions.
    FUNCTION HOST(text_in    IN VARCHAR2,
               result_out IN OUT VARCHAR2) RETURN BOOLEAN IS
    ret boolean;
    drun boolean;
    hid number;
    BEGIN
       dbms_output.put_line('host1 begin');
       ret := HOST(text_in,result_out,hid,drun,1);
       if not drun then
         dbms_output.put_line('not derun');
          return false;
       end if;
         dbms_output.put_line('after if');
       return ret;
    END HOST;
    FUNCTION GET_ENV(env IN VARCHAR2) RETURN VARCHAR2 IS
     res boolean;
     out varchar2(256);
    BEGIN
      res := HOST('echo '||env,out);
      return out;
    END GET_ENV;
    FUNCTION HOST(text_in      IN VARCHAR2,
              result_out IN OUT VARCHAR2,
              hostid     IN OUT NUMBER ,
              demrunning IN OUT boolean,
              maxlines   IN NUMBER DEFAULT NULL) RETURN BOOLEAN IS
      tempid      number;
      tempstat      varchar2(10);
      n           number;
      m           number;
      retry      number;
      mult           number;
      timestamp_date  date;
      lv_result_out varchar2(200);
    BEGIN
      --result_out := NULL; --fcxh76
      demrunning := true;
      dbms_output.put_line('host2 begin');
      select XXAR_SHELL_CMD_S.nextval
      into  tempid from dual;
      hostid := tempid;
    
      dbms_pipe.pack_message(tempid);
      n := dbms_pipe.send_message('CMD');
    
      dbms_pipe.pack_message(abs(maxlines));
      dbms_pipe.pack_message(rtrim(text_in));
      n := dbms_pipe.send_message ('CMD'||rtrim(to_char(tempid)),0);
    
      m := dbms_pipe.receive_message('CMDSTAT'||rtrim(to_char(tempid)),5);
      if m = 1 then
          demrunning := false;
          dbms_output.put_line('m=1');
          result_out := 'ERROR : GLCC0005 presumed not running';
          dbms_output.put_line('result_out - '||result_out);
          return FALSE;
      elsif m = 0 then
         dbms_pipe.unpack_message(tempstat);
      end if;
    
      if tempstat = 'ERROR' then
         dbms_output.put_line('tempstat = ERROR');
         result_out := NULL;
         dbms_output.put_line('after result out');
         return FALSE;
      end if;
    <<CHECK_AGAIN>>
         m := dbms_pipe.receive_message('RSLT'||rtrim(to_char(tempid)),0);
    
    if m <> 0 then
        goto CHECK_AGAIN;
    end if;
    
         if m = 0 then
                dbms_pipe.unpack_message(result_out);
                dbms_pipe.purge('RSLT'||rtrim(to_char(tempid)));
                return TRUE;
         else
             result_out := 'ERROR : Call to GLCC0006 failed';
             return FALSE;
         end if;
    END HOST;
    FUNCTION FTP (program_name in VARCHAR2,
               source_file in VARCHAR2,
               dest_file   in VARCHAR2 default NULL) RETURN BOOLEAN
    AS
    fd               utl_file.file_type;
    res            boolean;
    res1           boolean;
    out            varchar2(256);
    out1           varchar2(256);
    ftp_dnsname      varchar2(50);
    ftp_user         varchar2(50);
    ftp_pass         varchar2(50);
    ftp_pre_opt      varchar2(150);
    ftp_post_opt     varchar2(150);
    ftp_override     varchar2(150);
    destination_file varchar2(50);
    ftp_command      varchar2(2000);
    ftp_main         varchar2(2000);
    proc_id           varchar2(10);
    fderr             varchar2(100);
    rec           varchar2(1024);
    temp_buf      varchar2(100);
    base_source       varchar2(100);
    log_dir              varchar2(100) := get_env('$APPLCSF')||'/log';
    fndc_logfile_dir varchar2(100) := 'FNDC_LOGFILE_DIR';
    i            number ;
    ftp_tried        boolean;
    begin
     ftp_tried := false;
     dbms_output.put_line('begin');
    for ftp_rec in ( select  attribute1,
                       attribute2,
                       attribute3,
                       attribute4,
                       nvl(attribute5,' ') attribute5,
                       nvl(attribute6,' ') attribute6,
                       nvl(rtrim(attribute7),'put') attribute7
              from fnd_flex_values
              where  flex_value_set_id in
              (select flex_value_set_id
               from fnd_flex_value_sets
               where flex_value_set_name = 'CPC_FTPS'
              )
              and flex_value like program_name
              )
         LOOP
                 dbms_output.put_line('Looping');
               ftp_tried := true;
              ftp_dnsname      := ftp_rec.attribute1;
              ftp_user         := ftp_rec.attribute2;
              ftp_pass         := ftp_rec.attribute3;
              destination_file := ftp_rec.attribute4;
              if dest_file is not null then
                 destination_file := dest_file;
                    end if;
    
                                   if destination_file is null then
                    destination_file := base_name(source_file);
                end if;
                ftp_pre_opt      := ftp_rec.attribute5;
              ftp_post_opt     := ftp_rec.attribute6;
              ftp_override     := lower(ftp_rec.attribute7);
              dbms_output.put_line('host');
    
              res := HOST('echo $$',proc_id);
              dbms_output.put_line('proc_id - '||proc_id);
         dbms_output.put_line('after host');
         base_source := rtrim(base_name(source_file));
           dbms_output.put_line('host 1');
           res := HOST('>  '||log_dir||'/ftpcmd.'||proc_id ||
              ' ; chmod 777 '||log_dir||'/ftpcmd.'||proc_id,out1);
           dbms_output.put_line('host 2');
           res := HOST('>  '||log_dir||'/ftpmain.'||proc_id ||
              ' ; chmod 777 '||log_dir||'/ftpmain.'||proc_id,out1);
           dbms_output.put_line('host 3');
           res := HOST('>  '||log_dir||'/ftplog.'||proc_id ||
              ' ; chmod 777 '||log_dir||'/ftplog.'||proc_id,out1);
           dbms_output.put_line('host completed');
    ......
    ......
    ......
    Here is the PLSQL block that I will carry out and also the output on this block
    declare 
    lv_ftp_result boolean; 
    begin 
    lv_ftp_result := u.FTP('XXAR_REV_PA', ' ' || '/u07/app/qaoa083a/data/outgoing/xxar/PARECREV' || '/' || 'REVENUE_20120319014318.dat','REVENUE_20120319014318.dat');  
    IF lv_ftp_result THEN 
    dbms_output.put_line('True'); 
    ELSE 
    dbms_output.put_line('False'); 
    END IF; 
    exception 
    when others then 
    dbms_output.put_line('in exception - '||sqlerrm); 
    end;
    Output:
    host1 begin
    host2 begin
    m=1
    result_out - ERROR : GLCC0005 presumed not running
    not derun
    begin
    Looping
    host
    host1 begin
    host2 begin
    m=1
    in exception - ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    The flow of execution goes like this:
    1 FTP function called from PL/SQL block
    2 inside of the FTP service, the Sub statement calls the HOST function
    log_dir              varchar2(100) := get_env('$APPLCSF')||'/log';
    3. This HOST function in turn calls another function of overloaded HOST (code shown above).
    4. in the function overloaded with the HOST, the following statements are executed successfully, and FALSE is returned by the function
    dbms_output.put_line('m=1');
    result_out := 'ERROR : GLCC0005 presumed not running';
    dbms_output.put_line('result_out - '||result_out);
    5. the remaining code in the FTP service is running and the HOST function is called again using the Sub statement
    res := HOST('echo $$',proc_id);
    6.again, this HOST function in turn calls another function of overloaded HOST (code posted above).
    7. this time, in the function overloaded host, ORA-06502 is thrown when the following statement is executed and the execution stops here that this exception is unhandled.
    result_out := 'ERROR : GLCC0005 presumed not running';
    This statement is very successfully in the previous call to the function of HOST (step 4), but it fails now.

    Any idea on why this error occurs in this scenario? Because the issue of memory?

    DB Info:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    PL/SQL Release 11.2.0.1.0 - Production
    Kind regards
    Anthony

    Published by: Anthony Alix on March 20, 2012 08:53

    Hello

    HOST (1) calls the function of MODERATOR (2) with his second parameter as result_out

    The first time you call the function of host (1) in the function get_env you use

    ...
     out varchar2(256);
    BEGIN
      res := HOST('echo '||env,out);
    ...
    

    out is big enough varchar2 (256)

    The second time you call (1) HOST of the FTP function as:

    ...
    ftp_main         varchar2(2000);
    proc_id           varchar2(10);
    fderr             varchar2(100);
    ...
    
    ...
              res := HOST('echo $$',proc_id);
              dbms_output.put_line('proc_id - '||proc_id);
    ...
    

    Here, use you proc_id which is varchar2 (10)

    And it's not big enough!

    Kind regards

    Peter

  • Workflow PO error "ORA-06502: PL/SQL: digital error or value."

    Hi guys,.


    Column MAIL_STATUS of the WF_NOTIFICATIONS ERROR value



    SQL > select ERROR_MESSAGE in wf_item_activity_statuses_v WHERE NOTIFICATION_ID = 1320203



    ERROR_MESSAGE

    --------------------------------------------------------------------------------

    [WF_ERROR] ERROR_MESSAGE = 3835: error '-6502 - ORA-06502: PL/SQL: numeric or earned

    e error: form of associative array is not compatible with enco session settings

    untered during execution of the function Generate ' WF_XML. Generate 'event' oracl

    e.apps.WF.notification.Send'. ERROR_STACK =

    PO_REQAPPROVAL_LAUNCH. POREQ_SELECTOR (POAPPRV, TEST_CTX, 10150-25246)

    Wf_Engine_Util.Function_Call (PO_REQAPPROVAL_LAUNCH. POREQ_SELECTOR, POAPPRV, 1015

    0-25246, TEST_CTX)

    Wf_Engine_Util.Execute_Selector_Function (POAPPRV, TEST_CTX, 10150-25246)

    Wf_Engine_Util.Function_Call (PO_REQAPPROVAL_LAUNCH. POREQ_SELECTOR, POAPPRV, 1015

    0-25246, TEST_CTX)

    Wf_Engine_Util.Execute_Selector_Function (POAPPRV, TEST_CTX, 10150-25246)

    Wf_Engine.CB (TESTCTX, POAPPRV:10150 - 25246:208270, :::))

    Wf_Engine.oldCB (TESTCTX, POAPPRV:10150 - 25246:208270, :::))

    WF_MAIL. SetContext (1320203)

    WF_XML. GenerateDoc (oracle.apps.wf.notification.send, 1320203)

    WF_XML. Generate (oracle.apps.wf.notification.send, 1320203)

    WF_XML. Generate (oracle.apps.wf.notification.send, 1320203)

    Wf_Event.setMessage (oracle.apps.wf.notification.send, 1320203, WF_XML.) Generate)

    Wf_Event.dispatch_internal)

    1 selected line.





    OS: RHEL5.7

    Database: 10.2.0.3

    Applications: R12.0.4

    Please help me to solve this error.

    Salvation;

    Please see the bulletin:

    Approval Confirmation e-mail is not received by trainer - ERROR_MESSAGE = 3835 ORA-20001 ORA-6502 [ID 465146.1]

    Respect of

    HELIOS

  • ORA-06502: PL/SQL: digital or value error: character conversion number e

    Hi all
    I work with DBLOCALE , which is
    Oracle Database 10g Release 10.2.0.3.0 - 64bit Production
    PL/SQL Release 10.2.0.3.0 - Production
    CORE     10.2.0.3.0     Production
    TNS for IBM/AIX RISC System/6000: Version 10.2.0.3.0 - Productio
    NLSRTL Version 10.2.0.3.0 - Production
    and DBREMOTE
    Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
    PL/SQL Release 9.2.0.8.0 - Production
    CORE     9.2.0.8.0     Production
    TNS for IBM/AIX RISC System/6000: Version 9.2.0.8.0 - Production
    NLSRTL Version 9.2.0.8.0 - Production
    Leave a procedure on DBLOCALE I run SCHEMA. MYPROCEDURE@dbremote (NUMBER, stringPar VARCHAR2, datePar DATE numberPar)

    I use this procedure only to call a function in a package of DBREMOTE with education booleanresult: = MYPACKAGE. MYFUNC (NUMBER, stringPar VARCHAR2, datePar DATE numberPar)

    In the service, I try to INSERT IN MYTABLE (numberPar, stringPar, datePar) and the error
    ORA-06502: PL/SQL: numeric or value error: character to number conversion error
    is triggered.

    I missed something basic? Where is my mistake?

    I have check all types of past data and types of data in the table, that I have to insert.

    Any help or suggestion will be appreciated. Feel free to ask me any questions that need me to explain or for more details.

    Best regards
    Alex

    OraclePSP wrote:

    It starts with a page of APEX who call a procedure in DBLOCALE.

    Apex point (page) variables are all text - and bind as text variables when used in PL/SQL and SQL code.

    In this procedure, ii assess the past, then insert into a few tables@DBREMOTE without errors.
    The end of it, I'm calling the remote packaged function.
    In the function I use parameters to open a cursor and insert into MYTABLE.

    That you pass as parameters? The variable element of Apex (e.g. : P1_DATE) or do you attribute the object variable to a PL/SQL variable and the neck of the PL/SQL variable as a parameter?

    Even if I agree with you on the copy & paste I don't know what part of the process, I can speak to you.

    Well, you can try the following. Create a dynamic PL/SQL region on the page. This region should be implemented and made that the page has been sent (in other words, element variables used in the page need value for this region, for the record). You can create a condition for this region that must be met to be made - and this can check the QUERY variable, or to check if the relevant variables have values.

    In this dynamic PL/SQL code for the region block, use HTP.prn () as you would use DBMS_OUTPUT.put_line () in client-server test normal (using TOAD or SQL * more). And in this block of code, call the remote procedure.

    For example

    --// dynamic PL/SQL region code block:
    HTP.prn( 'Item P1_DATE = ['||:P1_DATE||'] 
    ' ); HTP.prn( 'Item P1_NUMBER = ['||:P1_NUMBER||']
    ' ); ..etc.. HTP.prn( 'Calling remote procedure:
    ' ); begin RemoteProc@RemoteDB( param1=>:P1_DATE, param2=>:P1_NUMBER ); HTP.prn( 'Call was successful
    ' ); exception when OTHERS then HTP.prn( 'Call failed with: '||SQLERMM(SQLCODE)||'
    '); end; ..etc..
  • LONG LONG-&gt; ORA-06502: PL/SQL: digital error or value

    SQL>desc all_views
     Name                                      Null?    Typ
     ----------------------------------------- -------- ----------------------------
     OWNER                                     NOT NULL VARCHAR2(30)
     VIEW_NAME                                 NOT NULL VARCHAR2(30)
     TEXT_LENGTH                                        NUMBER
     TEXT                                               LONG
     TYPE_TEXT_LENGTH                                   NUMBER
     TYPE_TEXT                                          VARCHAR2(4000)
     OID_TEXT_LENGTH                                    NUMBER
     OID_TEXT                                           VARCHAR2(4000)
     VIEW_TYPE_OWNER                                    VARCHAR2(30)
     VIEW_TYPE                                          VARCHAR2(30)
     SUPERVIEW_NAME                                     VARCHAR2(30)
    
    SQL>
    SQL>declare 
      2      txt_view  LONG;
      3   begin
      4      SELECT 
      5      TEXT INTO txt_view
      6      from all_views
      7      where
      8      VIEW_NAME = 'V_KN_SKA';
      9   end;
     10   /
    declare
    *
    FEHLER in Zeile 1:
    ORA-06502: PL/SQL: numeric or value error
    ORA-06512: in Zeile 4
    
    SQL>select TEXT_LENGTH
      2  from all_views
      3  where
      4  VIEW_NAME = 'V_KN_SKA';
    
    TEXT_LENGTH
    -----------
          53816
    When I put the TEXT in ULTRA EDIT, I get a 54676 byte value.

    'TEXT' of all_views column is of type LONG, and the variable "txt_view" is too LONG. Why become a digital error or value?

    just a number...

    Oracle advises against the use of LONG columns, they advice to use instead the LOB (CLOB or BLOB)
    For a long TIME are a pain in one... to work with, as you have found by yourself

    Why do you want to use LONG and not of CLOB?

  • product loop "ORA-06502: PL/SQL: digital error or value."

    Why I get the error message ' ORA-06502: PL/SQL: digital error or value "to the code below.
    create table bc (
      a number, 
      b varchar2(10)
    );
    
    
    declare
      type t_bc_a is table of bc.a%type;
      type t_bc_b is table of bc.b%type;
      l_bc_a t_bc_a;
      l_bc_b t_bc_b;
    begin
      dbms_output.put_line('1');
      select a, b bulk collect into l_bc_a, l_bc_b from bc;
       dbms_output.put_line('2');
       if l_bc_a is null then
         dbms_output.put_line('2.1'); 
       else
         dbms_output.put_line('2.2, l_bc_a.count=' || l_bc_a.count); 
         
       end if;
      for i in l_bc_a.first .. l_bc_a.last loop
       dbms_output.put_line('3');
        dbms_output.put_line(l_bc_a(i) || ', ' || l_bc_b(i));
      end loop;
    end;
    
    /*
    1
    2
    2.2, l_bc_a.count=0
    ORA-06502: PL/SQL: numeric or value error
    */
    "Bc" table is empty and I expect loop never to do any cycle a step, but I get the error. Why the error is there.

    Hello!

      for i in l_bc_a.first .. l_bc_a.last loop
       dbms_output.put_line('3');
        dbms_output.put_line(l_bc_a(i) || ', ' || l_bc_b(i));
      end loop;
    

    In your case, l_bc_a.first is null and l_bc_a.last is the same

    in the case

    because me to null... loop of null

    such an error is returned

    T

  • ORA-06504: PL/SQL: return variables of the game results or the query types do not match

    Hello!

    I have a simple object type and a proecdure in which I am trying to use it to insert into another table

    -object

    CREATE ORREPLACETYPEmt_mtg ASOBJECT

    (

    ACOL NUMBER ,

    BCOL NVARCHAR2 (100)

    );

    CREATE ORREPLACETYPEREF_MTG ASTABLEOFMt_MTG ;

    -same structure as the use of sampletbl target table in the cursor query

    create table tbl_MT_MTG

    (

    ACOL NUMBER ,

    BCOL NVARCHAR2 (100)

    );

    -procedure

    CREATE ORREPLACEINTERIORTEST_PROCEDURE1

    AS

    ref_cur sys_refcursor ;

    REFR ref_mtg ;

    BEGIN

    OPEN ref_cur FOR

    Select acol,

    BCOL

    DE sampletbl rownum<10;

    Fetch ref_cur in bulk collectintorefr;

    Insert intotbl_MT_MTG(acol,bcol)selectacol,bcol fromtable(refr);

    commit;

    CLOSE Ref_cur;

    END;

    /

    When I run this procedure fails with

    ORA-06504: PL/SQL: return variables of the game results or the query types do not match

    ORA-06512: at "TEST_PROCEDURE1", line 10

    ORA-06512: at line 2

    Any help on this please...

    Thanks to an OLD POST below

    so perfect helped me! Thank you

    Tubby

    After 5 years of more :-)

    How to store refcursor in collection How to store refcursor in collection

  • Getting Ora-06502: PL/SQL of Numeric or value error.

    Hello

    I m getting the following error when a calculation for form fields.

    ""Server Ajax Call returned error Ora-06502: PL/SQL digital error or value ".

    I m using the dynamic action to calculate my value fields display. Here is the code of my DA.

    (Required value) event: change

    Selection type (required): product (s)

    Article (s) (required): P141_PROP_COST, P141_DOWNPAY_AMT, P141_PREM_PERC, P141_DOWNPAY_PERC, P141_PREM_AMT



    Begin

    : P141_TOTAL_SELL_PRICE: =: P141_DOWNPAY_AMT +: P141_PREM_AMT;

    : P141_COMM_AMT: =: P141_TOTAL_SELL_PRICE*.02;

    : P141_TOTAL_SELL_PRICE_FEE: =: P141_TOTAL_SELL_PRICE +: P141_TRANSFER_COST +: P141_COMM_AMt;

    : P141_INST_REM_AMT: =: P141_PROP_COST-: P141_DOWNPAY_AMT;

    End;

    Page point to presented: P141_PROP_COST, P141_DOWNPAY_AMT, P141_PREM_AMT, P141_TRANSFER_COST

    Return point page: P141_TOTAL_SELL_PRICE, P141_COMM_AMT, P141_TOTAL_SELL_PRICE_FEE, P141_INST_REM_AMT

    I m using another DA for the calculation and validation of my form fields rest. Here is the code:

    {$("#P141_DOWNPAY_PERC").change (function ()}

    var x = ($("#P141_DOWNPAY_PERC").val () / 100) * $("#P141_PROP_COST").val ();

    $("#P141_DOWNPAY_AMT").val (x);

    });

    {$("#P141_DOWNPAY_AMT").change (function ()}

    If ($("#P141_DOWNPAY_AMT").val () > $("#P141_PROP_COST").val ())

    {

    Alert ("section may be no greater than the basic price");

    }

    on the other

    {var y = ($("#P141_DOWNPAY_AMT").val () / ($("#P141_PROP_COST").val ())) * 100;}

    y = Math.Round (y);

    $("#P141_DOWNPAY_PERC").val (y) ;}

    });

    {$("#P141_PREM_PERC").change (function ()}

    var x = ($("#P141_PREM_PERC").val () / 100) * $("#P141_PROP_COST").val ();

    $("#P141_PREM_AMT").val (x);

    });

    {$("#P141_PREM_AMT").change (function ()}

    If ($("#P141_PREM_AMT").val () > $("#P141_PROP_COST").val ())

    {

    Alert ("section may be no greater than the basic price");

    }

    on the other

    {var z = ($("#P141_PREM_AMT").val () / ($("#P141_PROP_COST").val ())) * 100;}

    z = Math.Round (z);

    $("#P141_PREM_PERC").val (z) ;}

    });

    Any help.

    Concerning

    Pa

    'Problems of implicit conversion' comes to mind when I see this:

    : P141_TOTAL_SELL_PRICE: =: P141_DOWNPAY_AMT +: P141_PREM_AMT;

    This is similar to the problems I've seen when using the default formats for the Date Picker Item Types.

    I will add in some APEX_DEBUG. MESSAGE() lines to check what are the string values.

    (remember, all bind variables are of type VARCHAR2)

    You should maybe explicitly to convert strings to numbers using TO_NUMBER() and include the appropriate format.

    (a bit like you have to do with the conversion of strings to dates.)

    My $0.02 worth

    MK

  • ORA-06502: PL/SQL: digital error: error in the conversion of char to number

    Hello world.

    I have a strange problem here. I'll try to explain better. I work with APEX 4.2 and of Oracle Database 11 g Enterprise Edition Release 11.2.0.3.0 - 64 bit Production.

    Here are my parameters NLS_SESSION_PARAMETER and NLS_DATABASE_PARAMETER: NLS_NUMERIC_CHARACTERS,.


    I have a table with a lot of body numbers, and when I imported a MS Access application data, all fields were imported with the comma as decimal separator.


    Now, I have a form with several fields of number and when I leave a numeric field, a body of numbers of amount total is calculated and automatically filled with a bit of javascript.


    Now the problem: calculating fields (sum) succeeds only when I use the decimal as the delimiter. If I use the comma, I get a NaN value in the total amount field. I managed to convert all commas in points with javascript, so the total amount is calculated.

    When I try to save the record, I get the error: ORA-06502: PL/SQL: digital error: error in the conversion of char to number because I'm trying to save the separator point in my number fields.


    I tried to use REPLACE function to replace the. by one, before winning but does not solve the problem.


    This sounds familiar to anyone?


    Thanks in advance.



    OK, the problem is solved people.

    Somehow, the registration procedure had an influence on another calculation of my form and the error came from this process. So I put a to_number and replace stated in the calculation and all records very well and it shows my total.

  • Process apex Pl/SQL error: ORA-06502: PL/SQL: digital error or value: specified incorrect LOB Locator

    Apex 4.2

    I searched through the forums of the research about this error, but I do not understand what to do from here. I am writing a process that sends an e-mail when a value of the claim is made (or on a button click). Procedure is as follows:

    DECLARE
       l_body        clob;
       l_body_html   clob;
       l_subject    varchar2(100);
    
    BEGIN
      
    l_body := empty_clob();
    l_body_html := empty_clob();
    
    
    IF V('REQUEST') in ('SAVE_ME') AND :P32_PARENT_UPDATED_FL IS NOT NULL THEN
       l_subject :=  'Survey Job Request Updated'||utl_tcp.crlf||utl_tcp.crlf;
       l_body := 'Update'||utl_tcp.crlf;
    
       l_body_html := '<html>
          <head>
             <style type = "text/css">
                 /* Can add style attributes later */
             </style>
          </head>
          <body>'||utl_tcp.crlf;
       l_body_html := l_body_html ||'Survey Job Request has been updated.<br /><br />'||utl_tcp.crlf;
       l_body_html := l_body_html ||'Title: '||utl_tcp.crlf;
       l_body_html := l_body_html ||:P32_TITLE||utl_tcp.crlf;
       l_body_html := l_body_html ||'<br />Request Category : '||utl_tcp.crlf;
       l_body_html := l_body_html ||:P32_REQUEST_CATEGORY||utl_tcp.crlf;
       l_body_html := l_body_html ||'<br />Update Date: '||utl_tcp.crlf;
       l_body_html := l_body_html ||:P32_UPDATE_DATE||utl_tcp.crlf;
       l_body_html := l_body_html ||'<br />Updated By: '||utl_tcp.crlf;
       l_body_html := l_body_html ||:P32_LAST_EDITED_BY_USERID||utl_tcp.crlf;
       l_body_html := l_body_html ||'</body></html>';
    
    
    
    
    
    END IF;
    
    :P32_CANCELLATION_REASON := l_body_html;
    
    apex_mail.send(
       p_to             =>  '[email protected]',
       p_from           =>  '[email protected]',
       p_body           =>  l_body_html,
       p_body_html      =>  l_body_html,
       p_subj           =>  l_subject);
    
    END;
    
    
    
    
    
    
    
    
    
    

    I added two lines to the code (lines 08 and 09) and when I run my program, I now get the error:

    • ORA-21560: 3 argument is null, invalid or out of range

    Without these two lines, I received the error:

    ORA-06502: PL/SQL: digital error or value: specified incorrect LOB Locator

    I'm not quite sure what is wrong or what I can change. There seems to be right, and in fact, it worked before. I have no idea why this error keeps popping up. Any help on that would be great. Thanks in advance.

    Hello

    NewApexCoder wrote:

    Hmmm... good point. I think that apex_mail.send must be called inside the IF block. But in the future, I added several conditional statements, won't I need to include the apex_mail.send function in each IF block? But at the same time, there is the case that if no conditional instructions are met? Tests, when none of the conditions are true (when I had a second IF block in the code), an email would not be defined, which is correct. Could that be causing a problem however. If the IF block is not filled could he always try to send an email about anything or the l_body_html and l_subject fields have in them the garbage that causing ORA error?

    If the call to the procedure of sending (it is a procedure, and not a function) many times is necessary or useful depends on exactly what you're trying to do.

    For example, you can write to Santa for

    • Submit a wish list
    • Change of address
    • Contradiction with your boss, who can you tell Santa you were mean

    or any combination of these grounds.  If you want to send a simple email whenever any of the conditions are met (and not send a when none are met), then you could do something like this:

    DECLARE

    need_to_send BOOLEAN: = FALSE;

    ...

    BEGIN

    ...

    IF wish_list IS NOT NULL

    THEN

    l_body: = l_body | ...

    need_to_send: = TRUE;

    END IF;

    IF old_addresss <> new_address

    THEN

    l_body: = l_body | ...

    need_to_send: = TRUE;

    END IF;

    IF boss_is_a_big_fat_liar

    THEN

    l_body: = l_body | ...

    need_to_send: = TRUE;

    END IF;

    IF need_to_send

    SO - It's the only call to send

    apex_mail. Send...

    In any case, the error message ' ORA-21560: argument 3 sucks...» "is pretty clear: If you have not given a value to everything you're passing as p_body, then you'd better call the procedure.

  • Text editor enriched ORA-06502: PL/SQL: digital or value error: character string buffer too small

    Hello

    I have apex user 4.2.3 with enterprise database edition 11, I page include RICH TEXT EDITOR, when I add data to this text and save it will record successfully and when I try to view this information in another page I see all the data, as expected, the problem when I try to go to the same page as RICH TEXT EDITOR error message apper ORA-06502 : PL/SQL: digital or value error: buffer string too small, I see this link https://forums.oracle.com/thread/2461151?tstart=0 but I don't know how it solve it, the problem is made data at the point of the rich text editor.


    Any suggestion?


    Thank you

    Thanks for the reply,

    Its standard form with text rich field, my question she same as link above I added before

  • ORA-06502: PL/SQL: digital error or value

    Hello

    We have a package with a cursor that returns the session information:

    create or replace 
    PACKAGE BODY             "LOGIN_AUDIT" 
    ...
    ...
      CURSOR session_cur IS
        SELECT * FROM v$session WHERE audsid=USERENV('sessionid');
    
     session_rec session_cur%ROWTYPE;
    
    ...
    
    FUNCTION get_osuser
        RETURN VARCHAR2
      IS
      BEGIN
        RETURN session_rec.osuser;
      END;
    
    FUNCTION get_dbuser
        RETURN VARCHAR2
      IS
      BEGIN
        RETURN NVL(session_rec.username, 'ORACLE_SYS');
      END;
    
    ...
    

    The package compiled successfully and works ok out for a function that is the get_osuser. When you launch sqlplus, we get the following error:

    Select double LOGIN_audit.get_osuser;

    *

    ERROR on line 1:

    ORA-06502: PL/SQL: digital error or value

    ORA-06512: at "APPUSR. LOGIN_AUDIT', line 94

    ORA-06512: at "APPUSR. LOGIN_AUDIT', line 102

    The APPUSR has select priv on V$ SESSION and a select * from v$ session returns the session information. We can perform any other function since the package without any problem, for example:

    APPUSR@APPD > select double login_audit.get_dbuser;

    GET_DBUSER

    -------------------------------------------------------------

    APPUSR

    Can someone help us work on what happens please.

    PS Oracle: 11.2.0.3, OS Windows 2008 server.

    Thank you

    Really I have not aside, this and raise the question?

    Why you write all this code?

    wouldn't the following very good enough?

    1. FUNCTION get_osuser RETURN VARCHAR2;                    Use sys_context ('USERENV', 'OS_USER')
    2. FUNCTION get_dbuser RETURN VARCHAR2;                    Use sys_context ('USERENV', 'SESSION_USER')
    3. FUNCTION get_client_info RETURN VARCHAR2;                   Use sys_context ('USERENV', 'CLIENT_INFO')
    4. FUNCTION get_module_info RETURN VARCHAR2;               Use sys_context ('USERENV', 'MODULE')
    5. FUNCTION get_action_info RETURN VARCHAR2;                  Use sys_context ('USERENV', 'ACTION')

    Just do not know, I see the advantage of messing around with this slider and have to fight with the updating of information and others.

    This would totally work around the error you get and probably accelerate - and make it easier to maintain.

    ??

    Unless there is some additional requirements, that I'm missing

  • Error processing request. ORA-06502: PL/SQL: digital error or value OK

    Hello

    I want to open a session in an APEX application using the IE 8 browser, but I can't because this error:

    https://naa-vm02.us.oracle.com:7510/i/error.gifErrorError processing request.
    ORA-06502: PL/SQL: digital error or value
    Ok

    I can run this app with Chrome or Mozilla, but I need to open it with IE.

    Can you please tell me how should I solve this problem?

    Thank you

    It is a problem with your version of APEX that you use... There was a patch released about 6 months ago... or you can just upgrade to the latest version. I also had this problem, and there are several similar topics in this forum about the exact problem and at least the a precise details on the patch/fix.

  • ORA-06502: PL/SQL: digital error or value: number too high accuracy

    Hi all
    Sorry I can't speak English very well
    ========
    IM creating a function in the hr schema
    I need to calculate a tax
    syntax of the function is

    CREATE OR REPLACE THE TAX FUNCTION
    (F_TAX EMPLOYEES % OF SALARY TYPE)
    RETURN NUMBER IS
    V_SAL EMPLOYEES. % SALARY TYPE.

    BEGIN
    SELECT salary * 12
    IN v_sal
    Employees
    WHERE EMPLOYEE_ID = F_TAX;
    IF V_SAL > = 40000 THEN
    V_SAL: = V_SAL / 0,20;
    ELSIF V_SAL > = 30000 THEN
    V_SAL: = V_SAL / 0.15;
    END IF;
    RETURN V_SAL;
    TAX END;
    ==================
    When I select a tax I have this problem
    SELECT (EMPLOYEE_ID) TAX
    EMPLOYEES

    It comes
    SELECT (EMPLOYEE_ID) TAX
    *
    ERROR on line 1:
    ORA-06502: PL/SQL: digital error or value: number too high accuracy
    ORA-06512: at "HR. The TAX", line 16

    V_SAL is declared as HR. EMPLOYEES. % OF SALARY TYPE. If you look at the definition of time. The table EMPLOYEES, the SALARY column is a NUMBER (8,2). This means that it can handle numbers up to $999,999.99 (8 total digits with 2 decimal places).

    Your IF statement is dividing the salary by 0.20, which is equivalent to multiplying by 5 or dividing by 0.15, which is multiplied by 6.67. In reality, at least a salary is high enough now that when you multiply by 5 or 6.67 it exceeds the limit of $999,999.99 (especially when you already multiplied by 12 SALARY column in your SELECT statement).

    -If your intention is to return in numbers that exceed the limits of the SALARY column in human resources. EMPLOYEES, you will need to declare V_SAL differently. You can declare V_SAL as a NUMBER (11.2), for example, given that any number that you store in a NUMBER (8.2), multiplied by 60, which can be represented in a NUMBER (11.2).
    -If your intention is to return the numbers that fall within the limits of the SALARY column in human resources. USED, I suspect that the algorithm that you implemented is incorrect. Perhaps, for example, you would divide by 1.2 or 1.15 as a kind of tax accounting?

    Justin

Maybe you are looking for

  • the Recycle Bin icon is grayed out

    I deleted a large number of emails and the iMac trash icon is grayed out, avoid emptying the trash. I deleted the items from trash iCloud in Mail, but was unable to empty the trash "about this mac" because it did not show everything.

  • the keyboard was updated

    Hello! my name is Mitesh and I'm from the India. model of my laptop is hp pavilion dv6 7010tx 3rd generation core i7, 6 GB RAM, 2 GB nvidia graphics card, etc. I want to improve my laptop a little. I just wanted to ask that the keyboard of my laptop

  • Laser jet 1018 HP printer does not

    Original title: Laser jet 1018 HP printer does not I have a Laser jet HP 1018 and lost the disc printer if I can get any computer to be able to communicate with him. I downloaded the software that I thought I was able to run the printer, but nothing

  • How to install a PHOTO HP 564XL ink cartridge in the printer all-in-one HP Photosmart 6525?

    I have a HP Photosmart 6525 all-in-one printer.  I buy original HP 564XL ink for my printer in a color combo-pack at my local Costco.  The package includes 3 color cartridges as well as a 4th label "Photo".  My printer has only the slots 3 color + a

  • trial version

    I bought elements photoshop 13 and install it on my PC.Now, I want to check the ps 14 on my laptop before you pay for it.I downloaded the trial version, but I can´t connect me because I Don t have a registration key next to the ps 13 elements.Please