Error ORA-28534 in sql developer
I have an insert to a remote SQLServer database via database link. One of the inserted values is a TO_DATE function. In SQL Developer i get the ORA-28534. But in TOAD or the SQLPLUS the insert works fine.
Database is 10.2.0.4. Sql server is 2005 accessed through oracle gateway for ODBC and easysoft ODBC driver.
Anyone knows why would this error appear only in SQL developer?
Detailed error:
SQL Error: ORA-28534: Heterogeneous Services preprocessing error
28534. 00000 - "Heterogeneous Services preprocessing error"
*Cause: One of the things that the Heterogeneous Services can do is
to preprocess parts of SQL statements that contain implicit
coercions or calls to explicit coercion functions like TO_CHAR
TO_NUMBER or TO_DATE. For example, it could convert a call to
TO_DATE to a bind variable, pre-evaluate the TO_DATE function
call and pass the resulting value to the non-Oracle system as
the bind value. This behavior is controlled by some coercion
related capabilities. If the capabilities are set incorrectly,
the HS could encounter errors when it attempts to do the
preprocessing. If it does then this error will be signaled.
*Action: The capability table settings are controlled by the agent
vendor and can be modified by the DBA. Contact your DBA and
agent vendor and get the correct set of capabilities installed.
Edited by: dsmoljanovic on Nov 13, 2009 3:35 PM
Edited by: dsmoljanovic on Nov 13, 2009 3:36 PM
If the code is correct, and when submitted by one client successfully and not by another client, it is reasonable to assume that one client is using different settings/environment/configuration than the other.
And the error you've posted seems to indicate this too.
Similar Messages
-
I have a form which uses a customer form/report, drop downs etc..
the debug shows it running this statement
...Execute Statement: begin begin SELECT distinct initcap(RTRIM (LTRIM (e.surname, ' *0123456789-/:.?,'), ' *0123456789-/:.?,') || ', ' || RTRIM (LTRIM (e.first_name, ' *0123456789-/:.?,'), ' *0123456789-/:.?,' )) empname, e.ID bulk collect into wwv_flow_utilities.g_display,wwv_flow_utilities.g_value FROM dms.dms_employees@dmsprd e, dms.dms_employee_contracts@dmsprd ec WHERE e.ID = ec.emp_id and e.surname like '%%' AND :p75_date BETWEEN ec.start_date AND NVL (ec.end_date, :p75_date) AND e.brh_id = 3654 ORDER BY 1; end; end;
Then says
"report error: ORA-06502: PL/SQL: numeric or value error: character string buffer too small"
Any Ideas?
Thanks
DeanDenes Kubicek wrote:
A select list is limited in size. I am not sure what the limit is but that is definitelly the case.The maximum size for the HTML generated for a select list is 32K.
86 options sounds on the low side to be hitting that limit, but there are other concerns to this as well. Scrolling through hundreds/thousands of options in a select list is a pain for users, and huge select lists produce bloated pages that impact load times and network bandwidth. That list of around 200 countries you find on many sites is about the sensible maximum length for a select list.
You should use popups.Indeed. -
The oracle application express environment is created by installing the HTTP Server on the windows server and the application express 3.2.1 components on the 11.1.0.7 oracle database on UNIX. The installation is successfully and have not seen any issues during the installation. After completing all the steps, when tried to login and click the application builder or workspace components, I see the error message
report error:ORA-06502: PL/SQL: numeric or value error: character to number.
This error message is seen on most of the pages when trying to accessed and not able to understand the reasons behind it. Its a brand new environment setup and not even presented to developers to test it.
Below error message is always seen when trying to access most of the components like application builder, schema comparison and some other tabs. Please advice
report error:
ORA-06502: PL/SQL: numeric or value error: character to number conversion error
Edited by: user589320 on Jun 9, 2011 5:17 PMI think its better you use APEX 4.x version ratherthan using old version.
You will get more features and some bug fixes and also it's easy for you to get some help when you need.
* If this answer is helpfull or correct then please mark it and grant the points. -
We face the above error in HTMLDB (APEX) application Ver 3.1.0. This occurs when we try to display more number of rows/records in drop-down list (LOV in tabular forms). We are able to display 200 records in LOV. When the list of records exceeds 230, we face the below error
report error:ORA-06502: PL/SQL: numeric or value error: character string buffer too small
the values listed in LOV are from tables (one of the columns in table)
Could anyone give us a solution?Hi
As you are using a tabular form, you could actually do the following:
1 - In the tabular form column's attributes, set the following:
Display as: Select List (query based on LOV)
Display extra values: Yes
List of values definition: SELECT null d, null r FROM DUAL
2 - Add a new page item and set it to generate your select list
3 - Create an HTML region with no template and use the following for its source:
<script type="text/javascript">
function loadList(c, l)
var s = document.getElementsByName(c);
var lItem = document.getElementById(l);
var lLength = lItem.options.length;
var k;
var j;
var x = lItem.innerHTML;
var v;
var o;
var z;
for (k = 0; k < s.length; k++)
z = s[k];
v = z.value;
z.options.length = 0;
for (j = 0; j < lLength; j++)
o = new Option()
o.value = lItem[j].value;
o.text = lItem[j].text;
z.options[j] = o;
z.value = v;
if (z.selectedIndex == -1)
z.selectedIndex = 0;
loadList("f05", "P1_MGR");
</script>
(Change "f05" and "P1_MGR" as appropriate to your column and your new page item respectively)
Now, when you load the page, the select list contains a null entry plus the entry already on the database. The javascript kicks in automatically, loops through every entry in the "f05" column, copies the existing value, replaces the select list with the new page item version and sets its value to the copied value.
Your new page item could be in a DIV tag that has a style of "display:none" to hide it from view.
Andy -
Hi everybody,
I have two Distinct Databases on two distinct servers. (Oracle Ent. Release 10.2.0.3.0 on AIX 5.3). After I install the latest patch last week, One of the APEX installation has some problems on Home>Application Builder Page. The error message is very random and
report error:
ORA-06502: PL/SQL: numeric or value error: NULL index table key value.
When i change the view (details to icons), everything goes to normal. This error message is reflected some of the pages (report region) of some of my applications randomly. When it appears in a report region, i deselect the order method of the region, the result is normal.
But the other APEX application on the other instance has no problem. It is a bug? or Should i re-install the APEX instance?
Thank you for your interest?
Gökhan ÇATALKAYANo, but we have a reproducible test case now so we're working on it. See ORA-06502: PL/SQL: numeric or value error: NULL index table key value
Scott -
Error : ORA-06508: PL/SQL: could not find program unit being called
Hi
I got surprise issue while testing my Oracle code . Let me explain first the environment detail . Our appliaction built on
Java/J2EE(Weblogic) and backend is Oracle 11g re2 . While calling from java it call thru different user which have been provide
synonym and exectue option for corresponding procdure ,
I created on package EXTRACT_CUSTOMER_INFO_PK which will exract data to text file using UTL_FILE ( direcory , UTL_FILE grant is provided to DB user).
Now this package has been called from rp_execute_procedure_pr -- Here I is the code
CREATE OR REPLACE PROCEDURE RP_EXECUTE_PROCEDURE_PR
i_atlas_job_schedule_fk IN atlas_job_schedule.atlas_job_schedule_pk%TYPE,
i_job_id IN atlas_job.job_id%TYPE,
i_parm_value IN atlas_job_schedule.parm_value%TYPE,
o_status_code OUT NUMBER,
o_status_mesg OUT VARCHAR2
IS
-------Other old code which is not relevent for this issue ----
--------Other old code which is not relevent for this issue ----
----Below code I added ----
ELSIF l_job_id = 'CUST_EXTRACT' THEN
EXTRACT_CUSTOMER_INFO_PK.customer_report ( i_parm_value ,
o_status_code,
o_status_mesg ) ;
-- o_status_code := -99999999;
--o_status_mesg := 'PARTHA PARTHA PARTHAcess terminated!';
ELSE
o_status_code := -20300;
o_status_mesg := 'Job Id : ' || l_job_id || ' NOT found. Process terminated!';
END IF;
update_log_auto
ajs_rec.atlas_job_schedule_pk ,
'Processing End Time (GMT): '
EXCEPTION
WHEN eProcError THEN
o_status_code := SQLCODE;
o_status_mesg := SUBSTR(vMsg ||'-'||SQLERRM, 1, 200);
WHEN OTHERS THEN
o_status_code := -20300;
o_status_mesg := SUBSTR(SQLERRM, 1, 200);
update_log_auto
ajs_rec.atlas_job_schedule_pk ,
'Error : '||SQLERRM||' '
update_log_auto
ajs_rec.atlas_job_schedule_pk,
'Processing End Time (GMT): '
END RP_EXECUTE_PROCEDURE_PR;
Now It compiled sucesfully . And while I did SIT then RP_EXECUTE_PROCEDURE_PR run fine and extracted txt file . But while I called it from Java procedure It gives us error like
Error : ORA-06508: PL/SQL: could not find program unit being called 02-AUG-2012 13:16:51.
As I told RP_EXECUTE_PROCEDURE_PR old proc and used by other proc , So I first suspect issue is newly added code or may be some grant or synonym ( Although it should not be )
so I created public synony amd gave execute grant to my pkg to public .
But it repeat same error .
I did lot of R&D on my pkg but nothing happen . Finally I remane my new pkg RP_EXTRACT_CUSTOMER_INFO_PK and it works fine
I need to know what is the RCA for it . I donot think any dependecy issue as renaming pkg is working fine .
NB my DB user is iATLAS and Javauser is SUDEEP
Thanks in Advance
Debashis MallickFirst of all If i run the main procedure in like below in my Schema it is working fine
begin
-- Call the procedure
rp_execute_procedure_pr(i_atlas_job_schedule_fk => :i_atlas_job_schedule_fk,
i_job_id => :i_job_id,
i_parm_value => :i_parm_value,
o_status_code => :o_status_code,
o_status_mesg => :o_status_mesg);
end;
So thre is no question of parameter .... or Invalid state etc . If it is parameter or Invalid state issue it will give other error.
Here problem is not syntax issue .
let me give u more detail regards this issue
1.. All objects corresponding to procedure all Valid
2.. If I test on the proc on my schema like above code . It works fine
3.rp_execute_procedure_pr is a old procudere which called for differner report generartion based on parameter passing . Also as extract_customer_info_pk called with in rp_execute_procedure_pr So there is no question of synonym or privilage issue for new procedure.
4. Suprising thing is if I rename and recreate package like extract_customer_info_pk _1 or rp_extract_customer_info_pk . Which are exactly same as extract_customer_info_pk and replace those new one with extract_customer_info_pk then it work fine in my java application
I think I make it clear the issue
Edited by: debashisora on Aug 3, 2012 5:31 AM
Edited by: debashisora on Aug 3, 2012 5:40 AM -
Hi,
I am trying toceate an interface which collects data from database make some transformation and populated seeded tables in the same database.
My Approach is :
a) Create a record type variable ( concists of multiple segments)
b) Create a pl/sql table type of the records type in a)
c) Created a cursor of same structure as pl/sql table type ( collects data)
d) BULK CoLLECT data from cursor into pl/sql table
e) Print the data
But during Bulk Collect i get the below error :
Unexpected error in xxc_hr2hr_populate_elements.main at FLOW TRACE-1.120. Error: ORA-06502: PL/SQL: numeric or value error: NULL index table key value
ORA-20003: Unexpected error in xxc_hr2hr_populate_elements.get_data at FLOW TRACE-1.1.100. Error: ORA-06502: PL/SQL: numeric or value error: Bulk Bind: Truncated BindAshish_Apps wrote:
Hi,
I am trying toceate an interface which collects data from database make some transformation and populated seeded tables in the same database.
My Approach is :
a) Create a record type variable ( concists of multiple segments)
b) Create a pl/sql table type of the records type in a)
c) Created a cursor of same structure as pl/sql table type ( collects data)
d) BULK CoLLECT data from cursor into pl/sql table
e) Print the data
But during Bulk Collect i get the below error :
Unexpected error in xxc_hr2hr_populate_elements.main at FLOW TRACE-1.120. Error: ORA-06502: PL/SQL: numeric or value error: NULL index table key value
ORA-20003: Unexpected error in xxc_hr2hr_populate_elements.get_data at FLOW TRACE-1.1.100. Error: ORA-06502: PL/SQL: numeric or value error: Bulk Bind: Truncated BindVerify the rows you are fetching are having the same data types as your Record like Dates should go to date , decimal should not be fetched in type defined as number etc. -
REP-1437: Run time error in the PL/SQL development environment (DE).
I have a report that has always worked. Now I get the following error
REP-0003: Warning: Unable to open global preference file.
Starting report STCONF6 [Mon Nov 10 21:38:59 2008] ...
REP-1437: Run time error in the PL/SQL development environment (DE).
PDE-PSD001 Could not resolve reference to <Unknown Program Unit> while loading <Unknown> <Unknown>.
End report STCONF6 [Mon Nov 10 21:39:10 2008].
What is it? I DON'T know.
Regards SILVIAI recall my report from a form, I get the parameter form with my parameters, then click on the traffic light to run and the error appears here
Silvia -
Error : ORA-06502: PL/SQL: numeric or value error while fetch LONG datatype
Hello All,
I have written a script to fetch the text for a view in PLSQL and it gives me the following error :
Error : ORA-06502: PL/SQL: numeric or value error
declare
l_text all_views.text%type;
begin
SELECT text INTO l_text FROM all_views WHERE view_name = 'XXVIEW';
exception
when others then
dbms_output.put_line('Error : '||sqlerrm);
end;
The above works for some views and not view other views. Can anyone let me know what could be the reason for ORA-06502 when fetching into a long variable in PLSQL.
Would appreciate any response.
Thanks,If view 'XXVIEW' contains "no record" for field "text" then it'll show this error.
I mean "SELECT text FROM all_views WHERE view_name = 'XXVIEW';" returns "No record found" then how can you assign "no record" to a variable "l_text ".
try to execute : SELECT text FROM all_views WHERE view_name = 'XXVIEW';
What does it give you? any "Blank records"?
Edited by: H. on Feb 20, 2009 8:17 AM -
E-Mail Generating from database error ORA-06502: PL/SQL:
Hello,
I have write script for generating HTML formated email from database (11g).
when text body increase 4000 char it generating error
ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06512: at "EXPORT.REALIZATIONHTML", line 56 ORA
how i can resolve it.
I also try with LONG
ThanksThanks for reply.
I try with CLOB, Reason is that message body have almost 1000 recode and length(message) have more than 8000 characters even more than 10000
how i can resolve it , which data type I have to use
Thanks -
Trying to produce report but have ERROR ORA-00900: invalid SQL statement
Hi,
I am new to Oracle so have been experimenting with a few things to get the hang of it. I have been trying to produce a report, but keep getting the error: ORA-00900: invalid SQL statement.
This happens at my first line of code where I have COLUMN <column_name> HEADING <Heading_name>
So I am a bit confused - is there a command that I am supposed to issue that indicates to SQL*Plus that I am trying to create a report?
Also, if I just delete the COLUMN <column_name> HEADING <Heading_name> rows and just start at BREAK ON <column_name> SKIP 1, it produces the same error.
I am using Oracle 8.0.6 - does this make a difference?
Here is my code:
COLUMN a.p_ctryid HEADING 'Country'
COLUMN s.p_animid HEADING 'Stallion ID'
COLUMN s.p_uname HEADING 'Stallion Name'
COLUMN a.p_animid HEADING 'Horse ID'
COLUMN d.p_careertp HEADING 'Career'
BREAK ON s.p_animid SKIP 1
BREAK ON d.p_careertp SKIP 2
COMPUTE SUM LABEL 'Total' OF d.p_careertp ON REPORT
SELECT DISTINCT a.p_ctryid, s.p_animid, s.p_uname, a.p_animid, d.p_careertp
FROM p_owby.p_animal a, p_owby.p_animal s, p_owby.p_mating m, p_owby.p_anim_dtl d
WHERE m.p_mateyr = 2001
AND a.p_animid = d.p_animid
AND a.p_animid = m.p_animid
AND a.p_animid > 0
AND s.p_animid = a.p_sire
AND a.p_ctryid IN('GB','IRE')
GROUP BY a.p_ctryid, s.p_animid, s.p_uname, d.p_careertp, a.p_animid
ORDER BY a.p_ctryid, s.p_animid, d.p_careertp
Any help would be greatly appreciated!
Thanks in advance!You are trying to do COMPUTE SUM ... ON REPORT but there is no BREAK ON REPORT specified. The computed sum will not be shown unless you also break on report. see below demonstration. first select has no sum even though we have specified COMPUTE. The second select shows the sum since now we have done break on report.
SQL> compute sum of sal on report
SQL> select * from scott.emp order by empno ;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 17-DEC-1980 800 20
7499 ALLEN SALESMAN 7698 20-FEB-1981 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-1981 1250 500 30
7566 JONES MANAGER 7839 02-APR-1981 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-1981 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-1981 2850 30
7782 CLARK MANAGER 7839 09-JUN-1981 2450 10
7788 SCOTT ANALYST 7566 19-APR-1987 3000 20
7839 KING PRESIDENT 17-NOV-1981 5000 10
7844 TURNER SALESMAN 7698 08-SEP-1981 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-1987 1100 20
7900 JAMES CLERK 7698 03-DEC-1981 950 30
7902 FORD ANALYST 7566 03-DEC-1981 3000 20
7934 MILLER CLERK 7782 23-JAN-1982 1300 10
14 rows selected.
SQL> break on report
SQL> select * from scott.emp order by empno ;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 17-DEC-1980 800 20
7499 ALLEN SALESMAN 7698 20-FEB-1981 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-1981 1250 500 30
7566 JONES MANAGER 7839 02-APR-1981 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-1981 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-1981 2850 30
7782 CLARK MANAGER 7839 09-JUN-1981 2450 10
7788 SCOTT ANALYST 7566 19-APR-1987 3000 20
7839 KING PRESIDENT 17-NOV-1981 5000 10
7844 TURNER SALESMAN 7698 08-SEP-1981 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-1987 1100 20
7900 JAMES CLERK 7698 03-DEC-1981 950 30
7902 FORD ANALYST 7566 03-DEC-1981 3000 20
7934 MILLER CLERK 7782 23-JAN-1982 1300 10
sum 29025
14 rows selected.
SQL> -
BUG: ORA-00600 in SQL Developer while good in SQL*Plus
Just run the following PL/SQL script:
SET SERVEROUTPUT ON
<< outer_block >>
DECLARE
v_test NUMBER := 123;
BEGIN
DBMS_OUTPUT.PUT_LINE ('Outer Block, v_test: '||v_test);
<< inner_block >>
DECLARE
v_test NUMBER := 456;
BEGIN
DBMS_OUTPUT.PUT_LINE ('Inner Block, v_test: '||v_test);
DBMS_OUTPUT.PUT_LINE ('Inner Block, outer_block.v_test: '|| outer_block.v_test);
END inner_block;
END outer_block;
In SQL*Plus, you get the correct result, while in SQL Developer 1.5.4, you get:
Error report:
ORA-00600: internal error code, arguments: [12259], [], [], [], [], [], [], []
00600. 00000 - "internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s]"
*Cause: This is the generic internal error number for Oracle program
exceptions. This indicates that a process has encountered an
exceptional condition.
*Action: Report as a bug - the first argument is the internal error numberMeanwhile a workaround is to enclose the whole lot in a BEGIN END;
-
ORA-01017 from SQL Developer while using SYS account
Hi,
We are seeing "ora-1017:invalid username/password" when trying to connect using sys user as SYSDBA Role in SQL Developer. The same account works fine in SQL*plus. The remote_login_password param is set to EXCLUSIVE and the file orapw$SID is also there.
Any inputs to resolve this error is appreciated.
Thanks
SathyaAs sqlplus seems to be working for you and sqldeveloper has its own forum, please post this in the sqldeveloper forum.
Sybrand Bakker
Senior Oracle DBA -
Problem with error ORA-06502: PL/SQL: numeric or value error string
Hi,
I am running a loop to just spool output data using 'dbms_output.put_line' and I keep getting this error after a few records. I resorted it and it happen at a different interval. Could it have to do with the length of the item I am trying to spool? Thanks.
ORA-06502: PL/SQL: numeric or value error stringSD wrote:
Hi,
I am running a loop to just spool output data using 'dbms_output.put_line' and I keep getting this error after a few records. I resorted it and it happen at a different interval. Could it have to do with the length of the item I am trying to spool? Thanks.
ORA-06502: PL/SQL: numeric or value error stringyes, it is a data dependent error.
Handle: SD
Status Level: Newbie
Registered: Nov 21, 2001
Total Posts: 289
Total Questions: 189 (183 unresolved)
why do you waste time here when you rarely get your questions answered? -
Package Returning Error ORA-06502: PL/SQL: numeric or value error
Hi,
I create a package to export to spread sheet .xls, The package work for simple query if i pass the query to package.
There is no error in package please create the package and do the following as mentioned below
create or replace
PACKAGE export_pkg_spread_sheet
AS
procedure download_excel(vsql in clob );
PROCEDURE excel_header(p_header in out nocopy clob);
procedure excel_content(p_content in out nocopy clob,
vsql in clob );
procedure excel_footer(p_footer in out nocopy clob);
procedure get_usable_sql (p_sql_in IN clob,
p_sql_out OUT clob);
END export_pkg_spread_sheet;
create or replace
PACKAGE body export_pkg_spread_sheet
AS
PROCEDURE excel_header (p_header IN OUT nocopy CLOB)
AS
BEGIN
p_header := '<html><body>';
END;
procedure download_excel( vsql in clob )
as
p_header clob;
p_footer clob;
p_content clob;
begin
owa_util.mime_header( 'application/octet', FALSE );
htp.p('Content-Disposition: attachment; filename="report.xls"');
owa_util.http_header_close;
excel_header( p_header);
excel_content(p_content,vsql);
excel_footer(p_footer);
dbms_output.put_line(p_header ||p_content|| p_footer);
HTP.PRN( p_header ||p_content|| p_footer);
htmldb_application.g_unrecoverable_error := true;
end;
procedure excel_content(p_content in out nocopy clob,
vsql in clob)
as
p_sql_stmt clob;
cur PLS_INTEGER := DBMS_SQL.OPEN_CURSOR;
cols DBMS_SQL.DESC_TAB;
ncols PLS_INTEGER;
TYPE varColumn IS TABLE OF varchar2(32000);
vtab varColumn;
v_column_count NUMBER DEFAULT 0;
v_status INTEGER;
BEGIN
htp.prn('am here');
/* SELECT region_source into p_sql_stmt
FROM apex_application_page_regions
WHERE region_id = p_region_id AND
page_id = p_page_id AND
application_id = p_app_id; */
get_usable_sql (vsql,p_sql_stmt);
p_content := p_sql_stmt;
-- Parse the query.
DBMS_SQL.PARSE(cur, p_sql_stmt , DBMS_SQL.NATIVE);
-- Retrieve column information
DBMS_SQL.DESCRIBE_COLUMNS (cur, ncols, cols);
-- Display each of the column names
p_content := '<table> <tr>';
FOR colind IN 1 .. ncols
LOOP
p_content := p_content || '<td>' || cols(colind).col_name || '</td>';
END LOOP;
p_content := p_content || '</tr>';
vtab := varColumn(null);
for i in 1..ncols
loop
vtab.extend;
DBMS_SQL.DEFINE_COLUMN (cur, i, vtab(i), 2000);
--dbms_output.put_line(vtab(i));
end loop;
v_status := DBMS_SQL.EXECUTE (cur);
LOOP
p_content := p_content || '<tr>';
EXIT WHEN (DBMS_SQL.FETCH_ROWS (cur) <= 0);
FOR i IN 1 ..ncols
loop
DBMS_SQL.COLUMN_VALUE (cur, i, vtab(i));
-- p_content := p_content || '<td>' || 'xyz' || '</td>';
p_content := p_content || '<td>' || vtab(i) || '</td>';
END LOOP;
p_content := p_content || '</tr>' ;
END LOOP;
p_content := p_content || '<table>' ;
DBMS_SQL.CLOSE_CURSOR (cur);
exception
when others then
p_content := '<td>Exception Error in printing data</td><table>' ;
DBMS_SQL.CLOSE_CURSOR (cur);
end;
procedure excel_footer( p_footer in out nocopy clob)
as
begin
p_footer := '</body></html>';
end;
PROCEDURE get_usable_sql (p_sql_in IN clob, p_sql_out OUT clob)
IS
v_sql clob;
v_names DBMS_SQL.varchar2_table;
v_pos NUMBER;
v_length NUMBER;
v_exit NUMBER;
BEGIN
v_sql := p_sql_in;
v_names := wwv_flow_utilities.get_binds (v_sql);
FOR i IN 1 .. v_names.COUNT
LOOP
<<do_it_again>>
v_pos := INSTR (LOWER (v_sql), LOWER (v_names (i)));
v_length := LENGTH (LOWER (v_names (i)));
v_sql :=
SUBSTR (v_sql, 1, v_pos - 1)
|| v_names (i)
|| SUBSTR (v_sql, v_pos + v_length);
v_sql :=
REPLACE (v_sql,
UPPER (v_names (i)),
'(SELECT v('''
|| LTRIM (v_names (i), ':')
|| ''') FROM DUAL)'
IF INSTR (LOWER (v_sql), LOWER (v_names (i))) > 0
THEN
GOTO do_it_again;
END IF;
END LOOP;
p_sql_out := v_sql;
END;
END export_pkg_spread_sheet;
After creating the package pass the parameter to package like this
begin
export_pkg_spread_sheet.download_excel('select * from emp');
end;
Package will allow to download the spread shreet. If i try to pass the a complex query to package it is returning error as mentioned below
ORA-06502: PL/SQL: numeric or value error
In the above package there is a procedure called procedure excel_content which actuall prints the data in the spread sheet this is where the error is coming from there is a variable called vsql have declared it as clob to hold large string but still i am getting the same error when trying to pass a big string.
Please check the error and let me know.
Thanks
SudhirHi Praveen,
This is the query i am using to pass
Declare
qry clob;
Begin
qry := ' 'SELECT
AR.REGION_CODE,
AR.DISTRICT_CODE,
AR.TERRITORY_CODE,
CASE
WHEN AR.REGION_NAME IS NOT NULL AND AR.DISTRICT_NAME IS NULL AND AR.TERRITORY_NAME IS NULL THEN
AR.REGION_NAME
WHEN AR.REGION_NAME IS NOT NULL AND AR.DISTRICT_NAME IS NOT NULL AND AR.TERRITORY_NAME IS NULL THEN
AR.DISTRICT_NAME
WHEN AR.REGION_NAME IS NOT NULL AND AR.DISTRICT_NAME IS NOT NULL AND AR.TERRITORY_NAME IS NOT NULL THEN
AR.TERRITORY_NAME
END TERR_NAME,
AR.EMPLOYEE_ID,
AR.LAST_NAME,
AR.FIRST_NAME,
AR.GENDER,
AR.DATE_OF_HIRE,
AR.PROJECT_EMPLOYEE_TITLE_ID,
AR.COMPANY_ID,
AR.CUSTOMER_EMAIL,
AR.BUSINESS_EMAIL,
AR.CUSTOMER_VOICEMAIL,
AR.CUSTOMER_VOICEMAIL_EXT,
AR.QUINTILES_VOICEMAIL,
AR.QUINTILES_VOICEMAIL_EXT , complete_roster_pkg_report.AR_F_ADDRESS_GET_LINE_1(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_ADDRESS_TYPE_1" , complete_roster_pkg_report.AR_F_ADDRESS_GET_LINE_2(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_ADDRESS_TYPE_2" , complete_roster_pkg_report.AR_F_ADDRESS_GET_PHONE(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_Phone" , complete_roster_pkg_report.AR_F_ADDRESS_GET_CITY_TOWN(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_City_Town" , complete_roster_pkg_report.AR_F_ADDRESS_GET_COUNTRY_NAME(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_Country_Name" , complete_roster_pkg_report.AR_F_ADDRESS_GET_STATE_NAME(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_State_Name" , complete_roster_pkg_report.AR_F_ADDRESS_GET_ZIP_POSTAL(AR.PROJECT_ID,AR.EMPLOYEE_ID,1 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Shipping_ZipCode" , complete_roster_pkg_report.AR_F_ADDRESS_GET_LINE_1(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_ADDRESS_TYPE_1" , complete_roster_pkg_report.AR_F_ADDRESS_GET_LINE_2(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_ADDRESS_TYPE_2" , complete_roster_pkg_report.AR_F_ADDRESS_GET_PHONE(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_Phone" , complete_roster_pkg_report.AR_F_ADDRESS_GET_CITY_TOWN(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_City_Town" , complete_roster_pkg_report.AR_F_ADDRESS_GET_COUNTRY_NAME(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_Country_Name" , complete_roster_pkg_report.AR_F_ADDRESS_GET_STATE_NAME(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_State_Name" , complete_roster_pkg_report.AR_F_ADDRESS_GET_ZIP_POSTAL(AR.PROJECT_ID,AR.EMPLOYEE_ID,3 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Storage_ZipCode" , complete_roster_pkg_report.AR_F_ADDRESS_GET_LINE_1(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_ADDRESS_TYPE_1" , complete_roster_pkg_report.AR_F_ADDRESS_GET_LINE_2(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_ADDRESS_TYPE_2" , complete_roster_pkg_report.AR_F_ADDRESS_GET_PHONE(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_Phone" , complete_roster_pkg_report.AR_F_ADDRESS_GET_CITY_TOWN(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_City_Town" , complete_roster_pkg_report.AR_F_ADDRESS_GET_COUNTRY_NAME(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_Country_Name" , complete_roster_pkg_report.AR_F_ADDRESS_GET_STATE_NAME(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_State_Name" , complete_roster_pkg_report.AR_F_ADDRESS_GET_ZIP_POSTAL(AR.PROJECT_ID,AR.EMPLOYEE_ID,4 ,TO_DATE(AAH.EFFECTIVE_DATE)) "Home_ZipCode" FROM AR_V_ROSTER AR
LEFT JOIN AR_V_ADDRESS_HISTORY AAH
ON
(AR.PROJECT_ID = AAH.PROJECT_ID AND
AR.EMPLOYEE_ID = AAH.EMPLOYEE_ID)
WHERE
UPPER(AR.USER_EMPLOYEE_ID) = ''Q766730'' AND
AR.PROJECT_ID = 81 ';
export_pkg_spread_sheet.download_excel(qry);
End;
Praveen you can pass your DB table query to check the error. I am trying to pass as mentioned above.
Please let me know if my question is not clear.
Thanks
Sudhir
Maybe you are looking for
-
Hi friends, I created a new for replacing List of business partners form.I need to display the newly created form when i press tab key from customer textbox of A/R Invoice form.For that my code is if (pVal.ItemUID == "4") & (pVal.EventType
-
I installed the newest itune (7) yesaterday and tried to install quicktime 7 on my g4 cube. I am running tiger and quicktime 7 will not install. It keeps saying try again later. I have repaired all permissions, restarted the computer, but still will
-
Client Security Solution error - Device not installed
After the latest update, the TV Fingerprint Software version 5.9.5.7038 was installed. Since then, the fingerprint scanner works well to start up, but if I open an Internet Explorer page which is password protected, instead of the scanner coming up,
-
Just out-of-box Q2613x won't work in HPLJ 1300
I've had a Q2613X sitting in the box for a while (got a good deal from a business that was getting rid of excess cartridges). It was still sealed in the black plastic bag. Recently my in-use Q2613A ran out of toner, and I put in the 13X. The orange l
-
HT201317 I lost all my pictures
I had my iphone 3GS replaced at the Apple store and now i think i lost all my pictures