Invalid Number : Database Procedure Proxy

Hi Folks,
I am trying to create DB Procedure proxy in ECC with importing parameter as table(OUT). It is giving a dump says Invalid Number(SQL Error 339). It works perfectly for scalar outputs.
Sreehari

Hi Sreehari,
Can you please share the script you used to create?
Best Regards,
Ranjit

Similar Messages

  • Which is better External View OR Database procedure Proxy ?

    Hi Jasmin and Kilian,
    Creation of External View in HANA and consume in ABAP.
    Which is better External View OR Database procedure Proxy.
    Regards,
    Pravin
    Message was edited by: Jens Weiler
    Branched from http://scn.sap.com/thread/3498161

    Hi Pravin,
    that depends on your application logic and use case. There is no general recommendation for one or the other.
    If, for instance, you have input parameters, you would go for a DB procedure proxy, since the external view does not allow to pass input parameters from the ABAP to the HANA column view.
    On the other hand, if you would like to consume the result in an ALV with integrated data access (the "next generation ALV"), you would rather go for an external view... so - like the answer to so many other questions - it depends... .
    Cheers,
      Jasmin

  • Error while executing DB procedure proxy

    I am getting error 'Database error text: Insufficient privilege: Not Authorized ' when I call a database procedure proxy in a abap report program.
    Can any one help?
    CALL DATABASE PROCEDURE zdpp_oia_topandflop
    EXPORTING iv_number = lv_number
    IMPORTING et_top = lt_top
    et_flop = lt_flop
    I also tried calling a  HANA procedure in an ABAP report program  which works fine .
    Thanks in advance !,
    Sharada

    Hi. Sharada GSharada G
    I had been got in same problem.
    Finally, I solved the issue.
    Just follow below steps.
    1. Log on your HANA System with HANA Studio (SYSYTEM Account)
    2. Add "GET_OBJECT_VERSION" Object Privileges to SAP<SID> Account with only "execute" option.
    3. then Everything will be done.
    I hope you save a couple of day to settle down this problem.....

  • Handling blank values in Database Procedure

    Hello Guys,
    I am building an application with HANA on ABAP. Here, I have created a database procedure which we are consuming from ABAP via database procedure proxy. In this case, we are facing issues on the below point:
    As in conventional ABAP program, within the 'Where Clause' of a select statement if we pass a select-options/parameter with no value, then it will get all the data from the table. However, while passing blank value to database procedure, then it is unable to fetch the data from underlying HANA database tables/views.
    In this regard, it will be really helpful, anyone could guide me on how to handle the blank value like we do in ABAP.
    With Regards,
    Arnab

    Have a look on the discussions in this thread.
    How to keep filter for Blank values in Calculation view
    Regards,
    Krishna Tangudu

  • Database error text: invalid number

    Hi Gurus,
    I am calling a procedure proxy from ECC and it is giving me a short dump:
    Error 339 has occurred while executing database procedure
      ""_SYS_BIC"."Krishna_Demo_Proj.Model/KC_GET_MARA"" on the
    current database connection "R/3".
    Database error text: invalid number: ''
    Triggering statement: "dsql_open_proc"
    I have created a table with only one field.
    Mapped the Data types after creating the Procedure Proxy
    Which data type I need to use? I tried with lots of combinations but, still the same error.
    Regards,
    Krishna Chauhan

    Hi Srinu,
    I have used NVARCHAR 18 and corresponding to that CHAR18 is used.
    Please see the attached screen shots.
    Regards,
    Krishna Chauhan

  • Very Urgent: Invalid number in database

    We are getting an invalid number error on a date field in a Form that has run this procedure for two years. The query is something like select max(upload_date) from pfe_time_report where ssn = :block_update.ssn. We think that an invalid number has been inserted into the database but we can't find out where. Has anyone run into this situation before? This is a crucial enterprise application (3000 people won't get paid w/o it!)
    Thanks.

    Jeremy:
    I support a payroll app for 10000, I sympathize.
    I think that your bad data is in either whatever table you get :block_update.ssn from , or in pfe_time_report.ssn
    The invalid number error occurs when there is an implicit or explicit conversion from a string to a number, and the string contains alpha characters.
    If pfe_time_report.ssn is defined as numeric, I would look at the block_update source which may be char or varchar.
    Assuming that :block_update.ssn is VARCHAR2(10), you could use something like:
    SELECT ROWID,identifying_columns
    FROM block_update_source
    WHERE RPAD(TRANSLATE(ssn,'1234567890','$$$$$$$$$$'),10,'$') <> '$$$$$$$$$$'This will change all valid numbers in :block_update.ssn to 10 $'s. Any non-numeric characters will remain as they were.
    I hope everyone gets paid. Thanks for the advice. The table is pfe_time_report. SSN is a Varchar2(10) and upload_date is a date. The :block_update is based on this table. Would it be advisable to use the query you mentioned to update the table and correct any errors in these columns? I don't want to touch the query on the form because it is a client/server app and the customers are spread out all over the state of New Mexico.

  • Getting an error "invalid Number" while populating Xref database

    Hi all,
    My target table(XREF_DATA) has the following parameters and its respective datatypes:-
    XREF_TABLE_NAME
    XREF_COLUMN_NAME
    ROW_NUMBER
    VALUE
    IS_DELETED
    LAST_MODIFIED
    LAST_ACCESSED
    All are of varchar2
    But when i am executing the interface and observing the results then this error crops up:-1722 : 42000 : java.sql.SQLException: ORA-01722: invalid number at the stage
    Insert flow into I$ Table(I$_XREF_DATA)
    I have used CKM, LKMSql to Oracle and IKM Oracle Incremental Update)
    My target table has all varchar2 datatype, then why is it giving this invalid number error?
    Regards,
    Sourav

    Hi,
    You can copy the SQL code generated by ODI ( for the step giving this error) and then try to execute it via any SQL client like toad/ sql developer etc.
    This will help you to find the wrong data .
    Also is LAST_MODIFIED and LAST_ACCESSED have datatype as VARCHAR2 ? From the name it seems it is ment to have DATE .
    Thanks,
    Sutirtha

  • Ora-01722 invalid number error in oracle 11g working fine in 9i

    Problem : I am getting ora-01722 invalid number i below mention code.Some times the procedure runs successfully but sometimes it gives error for the same parameters.The code runs fine in 9i Database.Help needed ASAP.
    CODE :
    PROCEDURE Get_HQ_for_Manager(p_person_id IN NUMBER
    ,p_maximum_level IN NUMBER
    ,io_cursor OUT dynamic_cursor) IS
    v_session_id NUMBER;
    BEGIN
    /* Create the Employee hierarchy */
    v_session_id := AMHR_GENIE_APIS.GET_SESSION_ID(p_person_id);
    OPEN io_cursor FOR
    SELECT decode(t.org_information3, 402, 'India - DVCI HR HQ', ou.NAME) HQ_Name,
    t1.org_information2 HQ_Email
    FROM hr.hr_organization_information t,
    hr_all_organization_units ou,
    hr_organization_information t1,
    (SELECT *
    FROM AMDOCS.AMHR_EMP_HIERARCHY_TMP B
    WHERE B.MNG_PERSON_ID = P_PERSON_ID
    AND B.SESSION_ID = V_SESSION_ID
    AND b.hier_level <= p_maximum_level) hier,
    per_all_people_f p_emp,
    hr_locations_all l
    WHERE t.organization_id = 342
    AND t.org_information_context = 'AMHR_COUNTRY_BY_HQ'
    AND t.org_information2 + 0 = ou.organization_id
    AND t.org_information1 = l.country
    AND t.org_information2 = t1.organization_id
    AND t1.org_information_context = 'AMHR_HQ_EMAIL_LIST'
    AND t1.org_information1 = 'HQ'
    AND p_emp.person_id = hier.person_id
    AND trunc(SYSDATE) + 0 BETWEEN p_emp.effective_start_date AND
    p_emp.effective_end_date
    AND p_emp.business_group_id <> 0
    AND (hier.ASSIGNMENT_TYPE = 'C' OR hier.ASSIGNMENT_TYPE = 'E')
    AND hier.location_id = l.location_id(+)
    AND hier.person_id <> p_person_id
    UNION
    SELECT 'India - ABSI HR HQ' HQ_Name, '[email protected]' HQ_Email
    FROM hr.hr_organization_information t,
    hr_all_organization_units ou,
    (SELECT *
    FROM amdocs.AMHR_EMP_HIERARCHY_TMP a
    WHERE a.mng_person_id = p_person_id
    AND a.session_id = v_session_id
    AND a.hier_level <= p_maximum_level) hier,
    per_all_people_f p_emp,
    hr_locations_all l
    WHERE t.organization_id = 342
    AND t.org_information_context = 'AMHR_COUNTRY_BY_HQ'
    AND t.org_information2 = ou.organization_id
    AND t.org_information1 = l.country
    AND p_emp.person_id = hier.person_id
    AND trunc(SYSDATE) + 0 BETWEEN p_emp.effective_start_date AND
    p_emp.effective_end_date
    AND p_emp.business_group_id <> 0
    AND (hier.ASSIGNMENT_TYPE = 'C' OR hier.ASSIGNMENT_TYPE = 'E')
    AND hier.location_id = l.location_id(+)
    AND t.org_information3 = 402
    AND hier.person_id <> p_person_id;
    END Get_HQ_for_Manager;

    Hi There,
    I'm having trouble seeing anything spatial in your procedure. Since this forum is for "Discussions related to Oracle Spatial, Locator, GeoRaster, Topology, Network Data Model, GeoCoder, Router, Spatial Web Services and 3D Data Model. Recommended reading: Pro Oracle Spatial" you might have better luck asking your question on one of the other forums:
    http://forums.oracle.com/forums/category.jspa?categoryID=18
    A line number for the error would help too.
    Best of luck,
    Matt

  • Java.sql.SQLException: invalid number of in_out_binds in IOV

    We're upgrading our platform from WL 4.51 SP14 to WL 6.0 SP2., Sun Solaris 2.6
    and JDK 1.3.1.
    We use oracle thin driver 8.1.6 (Type 4) for connecting to ORACLE database. We're
    encountering the following error message while executing a stored procedure. This
    error occurs very intermittently. I've looked at one of the news group threads
    and I've noticed that someone referring to patch CR04274_60.jar which had addressed
    this kind of a problem. Pl let advise us if that is correct or not. If true, pl
    let's know how we can get hold of this patch.
    ===================================================
    java.sql.SQLException: invalid number of in_out_binds in IOV
    ====================================================
    Thanks
    Ravi Garikipati

    You are hitting a bug 11672797 (more detail: http://java.net/jira/browse/ADFEMG-83).
    As a workaround you have to change the data type to oracle.jbo.domain.Number in your EO or VO if they VO is not based on a EO.
    Timo

  • TO_NUMBER and ORA-01722 invalid number pls delete

    I cannot see where to delete a post I made. I found out my problem. It was in my NLS settings. Decimals were set to be commas instead of periods.
    please disregard this post, and delete if you are a moderator
    I recently tried to bring in lat/long coordinates from a VARCHAR2 field (and even as a flat file) into a NUMBER field with a setup of NUMBER(20,13) to ensure I'd capture all of the signifigant digits.
    I even ran this through a procedure to check if the data is a number first, and update only. I've found however that I keep getting the ORA-01722 invalid number error.
    So I started testing out some points, and came across this:
    select to_number('-79.662965387') from dual;
    this query results in the invalid number error. I don't want to have to load these as an SDO GEOMETRY object, has anyone encountered this scenario before?
    Or is my choice of 13 decimal places too high for Oracle?

    I just ran that code in my database (10g) and it returned this
    select to_number('-79.662965387') from dual;
    TO_NUMBER('-79.662965387')
                    -79.662965
    1 row selected.Message was edited by:
    Tridith

  • Invalid  number error (urgent)

    hi..
    in my stored procedure i have been used
    the fallowing query
    SELECT COUNT(*) INTO v_pmCount FROM (SELECT
                                  MEM_ID,
                                  MEM_FNAME,
                                  MEM_LNAME,
                                  MEM_EMAIL,
                                  MT_DESC,
                                  MEM_EMP,
                                  MEM_REGDATE,
                                  MEM_PROMO_CODE,
                                  MEM_DEL_STATUS,
                                  (SELECT ALBUMCOUNT FROM VIW_MEM_ALBUM_CNT WHERE MAL_MEMID=MEM_ID ) AS ALBUMCNT,
                                  ORDERCOUNT AS ORDERCNT,
                                  DECODE(UPL_STATUS,'','N',UPPER(UPL_STATUS)) AS UPLOADERST,
                                  MT_ID,
                                  TOTPV,
                                  MEM_USAGE.MUL_AVAIL_PHOTOS,
                                  MEM_USAGE.MUL_PHOTOS_USED,
                                  MEM_REF_ID,
                                  MEM_NSE_DIST_ID,
                                  MEM_NSE_CUST_ID,
                                  MEM_DIST_ID
                        FROM
                                  MEMBER,
                                  VIW_ORDERPV_CNT,
                                  UPLOADSTATUS,
                                  MEMBER_TYPE,
                                  MEM_USAGE
                        WHERE
                                  MEM_TYPE = MT_ID
                             AND
                                  MEM_ID=ORD_MEMID(+)
                             AND
                                  MEM_ID=UPL_MEMID(+)
                             AND
                                  MEM_DEL_STATUS<>'Y'
                             AND
                                  ORD_STATUS(+) IN ('S')
                             AND
                                  MEM_USAGE.MUL_MEM_ID = MEMBER.MEM_ID);
                                                           || ' ' ||v_pmFMail||v_pmFName||v_pmLName||v_pmOrderid||v_PmxIdFieldName||v_pmNseFieldName||v_pmOrderBy);
    i'm given the input only for
    v_pmFMail as 'AND UPPER(MEM_EMAIL) LIKE ''[email protected]%'''
    it gives the error
    ORA-01722: invalid number
    pls give solution
    Message was edited by:
    user448073

    Perhaps if you could explain how this is related to the XML features of the database we could help. If it's not related to the XML features, and there is nothing in your post to suggest it is you would get a faster response by posting in the correct forum
    General Database Discussions
    or
    PL/SQL
    may be appropriate for non XML Issues.

  • XMLType toobject return invalid number while providing the XML Schema/DTD

    We are exploring an option of converting XML into an oracle object and found toobject procedure that does the job. It works fine without XML Schema and provides XML data as oracle object. But it takes more time in parsing the XML since it uses canonical mapping. I hope by providing XML Schema we can improve the performance of this procedure. However when we use toobject with XML Schema it reports error as INVALID NUMBER irrespective of the input XML changes. Could anyone help me in this regard?

    Sorry
    The option of using toObect() to get an instance of the object that was creaed by regidsteing an XML Schema with the database, or which is associated with an XML Schema that has been registered with the database is depricated and will be removed in the next release. The main reason for this is that we reserve the right to change the structure, naming conventions or any other aspects of the object model we dervie from an XML schema, even as a result of a one-off patch, and consequently any code that was written to rely on this mapping would be broken on a regular basis.
    We do gurantee that code that uses the XML abstraction (eg XPATH/XQUERY) to access the content of the XML will work unchanged...
    In you case you have 2 options...
    1. Use the canonical mapping mechansim
    2. Write code that instantiates the objects from the outpiut of an XMLTable...
    -M

  • Very Urgent: Invalid Number error

    We are getting an invalid number error on a date field in a Form that has run this procedure for two years. The query is something like select max(upload_date) from pfe_time_report where ssn = :block_update.ssn. We think that an invalid number has been inserted into the database but we can't find out where. Has anyone run into this situation before? This is a crucial enterprise application (3000 people won't get paid w/o it!)
    Thanks.

    Infact I also got this error, I solved this problem by removing NLS_DATE_FORMAT from the registry you can try out this option and see it does work.
    Rahamath

  • How displaying an alert message called from a database procedure

    Hi,
    How can I display an alert message that is called from a database procedure.
    I've tried the following code:
    l_al_button NUMBER;
    l_al_message VARCHAR2(80);
    l_al_id ALERT;
    Set_Alert_Property(l_al_id, alert_message_text,l_al_message);
    l_al_Button := show_alert(l_al_id);
    When trying I receive an error that says that the word ALERT need to be declared.
    Any suggestions?
    Thanks

    Hi,
    leave the procedure without error handling.
    This is what you can do:
    1.Inside the database procedure-
    BEGIN
    RAISE_APPLICATION_ERROR (-20001, 'The chosen length of the Public Key Exponent ....');
    END;
    2.Into your Form -
    BEGIN
    EXCEPTION
    WHEN OTHERS THEN
    IF sqlcode = '-20001' THEN
    Display Your Messages.
    END IF;
    Monica
    END;

  • Error Message - ORA-01722 Invalid Number

    Hello:
    I have the following situation. When I create an organization, a record is inserted into the following table, AGREEMENTS, and populates four fields.
    I have an update form which selects the organization from the AGREEMENTS table so the user can populate the rest of the table. In addition, on this form, there is a drop-down box which allows the user to select the name of a legal document along with the version of the document in which the user needs to select. This select list is created via an LOV joining three tables. The item name for this select list is :P6_DOCUMENT.
    The code for the LOV is:
    SELECT S.DOC_NAME||' - '|| O.VERSION_NO AS DOC, O.ORG_DOC_CURR_KEY
    FROM SUPPORTING_DOCS S,
         ORG_DOC_CURR_VER O,
         AGREEMENTS H
    WHERE
        S.DOC_TYPE = 'HISA'
    AND S.SUPPORTING_DOC_KEY = O.SUPPORTING_DOC_KEY
    AND H.ORG_KEY_LE = O.ORG_KEY
    AND O.ORG_KEY=:P6_ORG_KEY_LEWhen the user completes the form, the SUBMIT process is a PL/SQL block consisting of an UPDATE statement to update the AGREEMENTS table based on the selected organization and an INSERT statement to insert a record into the AGREEMENTS_DOC table to store the value stored in :P7_DOCUMENT.
    Ok, now here is where my problem starts.
    When I first bring up the form and I select the organization I want to update, I click the Search button to find the organization and I receive the following error message: ORA-01722 Invalid Number.
    At this point all I'm doing is a basic search. There is no insert/update or anything going on. I'm not understanding why I would be receiving this error message.
    The search is based on the database column ORG_KEY_LE whose datatype is NUMBER.
    In my application, the item assigned to ORG_KEY_LE is P6_ORG_KEY_LE.
    I have a PL/SQL block process created (On Load-Before Header) in the Page Rendering area of my page definition. The PL/SQL code that is written is:
    BEGIN
    IF :P6_SEARCH_ORG != '0' THEN
    :P6_ORG_KEY_LE := :P6_SEARCH_ORG;
    END IF;
    END;I then have an Item created, :P6_SEARCH_ORG, which is a Select List. In the LOV portion of the page for this item, I have the following:
    select ORG_KEY_LE display_value, ORG_KEY_LE return_value
    from AGREEMENTS
    order by 1The reason for using this table is because this table contains the newly created organization which needs to be updated with the remaining columns of data.
    I then have a Search button in the Button area which has the following settings:
    Button Position: Region Template Position #CHANGE#.
    Condition Type: Value of Item in Express 1 is NULL.
    Expression 1: :P6_ORG_KEY_LE.
    To troubleshoot this problem, I created two pages, one page to do the UPDATE and the second page to do the INSERT.
    The SEARCH functionality in both pages are identical.
    When I run my UPDATE page, which only involves updating the missing fields, the process works. I have my search box, I'm able to search for the organization, make my updates, and I'm good.
    When I run my INSERT page, which involves inserting the record with the assigned document, I receive the error message after I click the SEARCH button. In order to INSERT the record into this table, I first need to SELECT the organization that was UPDATED in the AGREEMENTS table (using the UPDATE page described in above paragraph). When I select the organization, the user can then assign the appropriate legal document to the organization and insert the record into the AGREEMENTS_DOC table.
    Can someone help me with this error message? I'm not sure why I am able to perform my SEARCH on a page with the UPDATE statement, not able to perform the SEARCH on the page with my INSERT statement, and not be able to perform the SEARCH on the page that combines the UPDATE and INSERT statements.
    I did some more troubleshooting and I do believe my SUBMIT process which contains the INSERT statement is the issue. I created a fourth page which doesn't have a SUBMIT process. I brought up the form, searched for my organization and the information for that organization appeared. The problem is definately with my UPDATE/INSERT process.
    The PL/SQL block for the Submit process is the following:
    BEGIN
    update
        MDD.HISA_AGREEMENTS
         set
           LAST_UPDATED_BY=V('APP_USER'),
           APPROVER_SALUTATION=:P6_APPROVER_SALUTATION,
           APPROVER_FIRST_NAME=:P6_APPROVER_FIRST_NAME,
           APPROVER_MIDDLE_INITIAL=:P6_APPROVER_MIDDLE_INITIAL,
           APPROVER_LAST_NAME=:P6_APPROVER_LAST_NAME,
           APPROVER_NAME_SUFFIX=:P6_APPROVER_NAME_SUFFIX,
           APPROVER_EMAIL_ADDR=:P6_APPROVER_EMAIL_ADDR,
           SPONSOR_EMAIL_ADDR=:P6_SPONSOR_EMAIL_ADDR,
           APPROVER_TITLE=:P6_APPROVER_TITLE
    where
          ORG_KEY_LE=:P6_ORG_KEY_LE
    INSERT INTO
        HISA_AGREEMENT_DOCS
          (HISA_AGREEMENT_DOC_KEY,
           ORG_KEY_LE,
           APPLICATION_KEY,
           STATUS,
           STATUS_DATE,
           CREATED_BY,
           ORG_DOC_CURR_KEY)
    VALUES
          (HISA_AGREEMENT_DOC_KEY_SEQ.NEXTVAL,
           :P6_ORG_KEY_LE,
           :P6_APPLICATION_KEY,
           'C',
           SYSDATE,
           V('APP_USER'),
           :P6_DOCUMENT)
    END;There is something wrong with the above statement and I do not understand what it could be. Can someone help?
    Thanks for the help.

    Hi,
    I believe you are on to something.
    The select list for item :P6_DOCUMENT appears when I first bring up the form. When I select my organization and receive the error message, I clicked on the Session in the Developer's bar. The value in item/field :P6_DOCUMENT shows %null%.
    This is the path in which my user would like to accomplish her task:
    1. Select an organization
    2. Display the information for that organization from the AGREEMENTS table
    3. Enter the data for the remaining fields in the AGREEMENTS table
    4. Select the document (:P6_DOCUMENT) from the drop-down.
    5. Click Submit
    6. Update the AGREEMENTS table with data entered in #3.
    7. Insert a record into the AGREEMENTS_DOC table with the selection from #4.
    Somehow I need the :P6_DOCUMENT field not to show the %null% during the SEARCH functionality. I think that is causing the problem.
    How do I fix this?

Maybe you are looking for