RPC error while executing procedure
Hi,
whenever I execute a procedure which extracts data from COBOL through relativity, it gives me RPC error and exits, the procedure code and error description is provided below,
Procedure Code:
===========
CREATE OR REPLACE Procedure CDB.pop_UtilityBill AS
txt_Truncate Varchar2(200);
txt_Rename Varchar2(500);
BEGIN
txt_Truncate := 'truncate table UtilityBill_Tmp';
execute immediate (txt_Truncate);
--Loading of Date from UTLMERGE File to Temporary Table
Insert into UtilityBill_TMP
(UtlBillDate,Branch ,Booth ,Batch,Card,Bill ,DocNo,Account ,ElcAcc ,ElcFil, GasAcc, GasFil, RegCode , ExchCode, PtclAcc , PtclFil ,
WasaAcc, WasaFil , Amount , TranType , ChequeNo , Bank , Flag , UtlBillTime , PostId , FlatbedFlag , FlatbedMicrread , FlatbedEndorse , BillingMonth )
Select DECODE("MrgDate",0,TO_DATE(NULL),TO_DATE("MrgDate"+1721423,'J')) UtlBillDate,
"Branch",
"Booth",
"Batch",
"Card",
"Bill",
"DocNo",
"Account",
"ElcAcc",
"ElcFil",
"GasAcc",
"GasFil",
"RegCode",
"ExchCode",
"PtclAcc",
"PtclFil" ,
"WasaAcc",
"WasaFil" ,
"Amount",
"TranType",
"ChequeNo",
"Bank" ,
"Flag" ,
"MrgTime" UtlBillTime ,
"PostId",
"FlatbedFlag",
"FlatbedMicrread" ,
"FlatbedEndorse",
"BillingMonth"
From UTLMRG2M_CURR@BIDB
INNER JOIN Branches_Control_UtlBill BU on BU.Branch = "Branch"
where "MrgDate" > UtilityBill_Date
and "Card" <> 9;
COMMIT;
--Loading of Date from Temporary Table to Interface Table
INSERT INTO UtilityBill_I
(UtlBillDate,Branch ,Booth ,Batch,Card,Bill ,DocNo,Account ,ElcAcc ,ElcFil, GasAcc, GasFil, RegCode , ExchCode, PtclAcc , PtclFil ,WasaAcc,
WasaFil , Amount , TranType , ChequeNo , Bank , Flag ,UtlBillTime , PostId , FlatbedFlag , FlatbedMicrread , FlatbedEndorse , BillingMonth )
Select UtlBillDate,
Branch,
Booth,
Batch,
Card,
Bill,
DocNo,
Account,
ElcAcc,
ElcFil,
GasAcc,
GasFil,
RegCode,
ExchCode,
PtclAcc,
PtclFil ,
WasaAcc,
WasaFil ,
Amount,
TranType,
ChequeNo,
Bank ,
Flag ,
UtlBillTime ,
PostId,
FlatbedFlag,
FlatbedMicrread ,
FlatbedEndorse,
BillingMonth
From UtilityBill_TMP;
COMMIT;
--Swapping of Data from Interface Table to Actual Table
EXECUTE IMMEDIATE('RENAME UtilityBill TO UtilityBill_Bkp');
EXECUTE IMMEDIATE('RENAME UtilityBill_I TO UtilityBill');
EXECUTE IMMEDIATE('RENAME UtilityBill_Bkp TO UtilityBill_I');
-- Insertion in Interface Table for Next Day Preparation
INSERT INTO UtilityBill_I
(UtlBillDate,Branch ,Booth ,Batch,Card,Bill ,DocNo,Account ,ElcAcc ,ElcFil, GasAcc, GasFil, RegCode , ExchCode, PtclAcc , PtclFil ,WasaAcc,
WasaFil , Amount , TranType , ChequeNo , Bank , Flag ,UtlBillTime , PostId , FlatbedFlag , FlatbedMicrread , FlatbedEndorse , BillingMonth )
Select UtlBillDate,
Branch,
Booth,
Batch,
Card,
Bill,
DocNo,
Account,
ElcAcc,
ElcFil,
GasAcc,
GasFil,
RegCode,
ExchCode,
PtclAcc,
PtclFil ,
WasaAcc,
WasaFil ,
Amount,
TranType,
ChequeNo,
Bank ,
Flag ,
UtlBillTime ,
PostId,
FlatbedFlag,
FlatbedMicrread ,
FlatbedEndorse,
BillingMonth
From UtilityBill_TMP;
COMMIT;
txt_Truncate := 'TRUNCATE TABLE UtilityBill_Tmp';
execute immediate(txt_Truncate);
Commit;
END;
Error Description:
===========
BEGIN pop_UtilityBill; END;
ERROR at line 1:
ORA-02068: following severe error from BIDB
ORA-28511: lost RPC connection to heterogeneous remote agent using
SID=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=cdbprd)(PORT=1521)
))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=HSODBC1)))
ORA-06512: at "CDB.POP_UTILITYBILL", line 10
ORA-06512: at line 1
HS trace file:
========
Oracle Corporation --- TUESDAY MAY 08 2012 18:03:53.979
Heterogeneous Agent Release
9.2.0.8.0
HS Agent received unexpected RPC disconnect
Network error 1003: NCR-01003: NCRS: Read error.
Oracle database Version:
===============
Oracle9i Release 9.2.0.8.0 - Production
Operating System:
===========
Microsoft Windows Server 2003 SP2
can anybody help me out on this?
remove the line break then if youre loading that in. Apologies, I didnt read the next line. The error is with the insert, if youre loading that up as a sql command file it wont run like that with the line break as it reads it as separate commands quick example.
SQL> host more ins.sql
insert into t1
(select * from dba_objects
where rownum = 1);
commit;
SQL>
SQL> create table t1 as select * from dba_objects where 1=0;
Table created.
SQL> @ins
OWNER
OBJECT_NAME
SUBOBJECT_NAME OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE
CREATED LAST_DDL_ TIMESTAMP STATUS T G S NAMESPACE
EDITION_NAME
SYS
ICOL$
20 2 TABLE
OWNER
OBJECT_NAME
SUBOBJECT_NAME OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE
CREATED LAST_DDL_ TIMESTAMP STATUS T G S NAMESPACE
EDITION_NAME
09-DEC-10 09-DEC-10 2010-12-09:03:39:59 VALID N N N 1
Commit complete.
SQL> select * from t1;
no rows selected
SQL>
-- ok, try it without the linebreak
SQL> host more ins1.sql
insert into t1
(select * from dba_objects
where rownum = 1);
commit;
SQL> @ins1
1 row created.
Commit complete.
SQL>
Similar Messages
-
Error while executing procedure for excel upload
Hi Friends
Pl. find below error while executing procedure for loading excel data. pl. verify and suggest for any changes in the format of data.
Rgds
SriGIf reading Excel as a database you would use "Access LSLINK"
Access external means you are reading a file. I don't think it is possible to treat Excel as a file because the internal structure is complex.
In the past I have saved the Excel as a CSV or as a Tab delimeted file. Then I use something like
ACCESS External
USE &filename
BEGIN
DESCRIPTION free ,
Variables text 20
Organisation text 20
'July 2008' numeric 20
'August 2008' numeric 20
'September 2008' numeric 20
'October 2008' numeric 20
'November 2008' numeric 20
'December 2008' numeric 20
'January 2009' numeric 20
'February 2009' numeric 20
'March 2009' numeric 20
'April 2009' numeric 20
'May 2009' numeric 20
'June 2009' numeric 20
END
peek
read
... quit the access sub system
END -
ORA-06550 error while executing procedure
HI Friends,
I have written a proc for the below process.
SP_Control (table)
sno campgn_id campgn_typ campgn_no current_wave
1 ET07001 ONB ONB01 1
2 ET07001 ONB CNB01 1
3 ET03053 IAL IAL1A A
4 ET03053 IAL IAL2A A
5 ET03053 IAL IAL3A A
6 ET03053 IAL IAL4A A
After calling the procedures with bellow parameters
Get_next_campgn(‘ONB01’,’ONB’);
Get_next_campgn(‘CNB01’,’ONB’);
Get_next_campgn(‘IAL1A’,’IAL’);
Get_next_campgn(‘IAL2A’,’IAL’);
Get_next_campgn(‘IAL3A’,’IAL’);
Get_next_campgn(‘IAL4A’,’IAL’);
…………… it should update the table with below data.
sno campgn_id campgn_typ campgn_no current_wave
1 ET07001 ONB ONB02 2
2 ET07001 ONB CNB02 2
3 ET03053 IAL IAL1B B
4 ET03053 IAL IAL2B B
5 ET03053 IAL IAL3B B
6 ET03053 IAL IAL4B B
I have written a procedure like this and its compliled successfully.
But throws error while executing like
execute Get_next_campgn(‘ONB01’,’ONB’);
create or replace procedure Get_next_campgn(p_campgn varchar2,p_type varchar2)
as
begin
update SP_Control set campgn_no = substr(p_campgn,1,length(p_campgn)-1)||to_char(ascii(substr(p_campgn,-1,1))+1) ,
curr_wave = to_char(ascii(curr_wave)+1)
where campgn_type = p_type
and campgn_no = p_campgn ;
exception
when others then
dbms_output.put_line(sqlerrm);
end Get_next_campgn;
Error::::
Error starting at line 15 in command:
execute Get_next_campgn(‘ONB01’,’ONB’)
Error report:
ORA-06550: line 1, column 24:
PLS-00103: Encountered the symbol "" when expecting one of the following:
( ) - + case mod new not null <an identifier>
<a double-quoted delimited-identifier> <a bind variable>
table continue avg count current exists max min prior sql
stddev sum variance execute multiset the both leading
trailing forall merge year month day hour minute second
timezone_hour timezone_minute timezone_region timezone_abbr
time timestamp interval date
<a string literal with character set specification>
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
Please suggest....The procedure executed successfully for me.
drop table sp_control;
create table sp_control
campgn_no varchar2(20),
curr_wave varchar2(20),
campgn_type varchar2(20)
insert into sp_control values ('ONB01', '1', 'ONB');
insert into sp_control values ('IAL1A', 'A', 'IAL');
create or replace procedure Get_next_campgn(p_campgn varchar2,p_type varchar2)
as
begin
update SP_Control set campgn_no = substr(p_campgn,1,length(p_campgn)-1)||to_char(ascii(substr(p_campgn,-1,1))+1) ,
curr_wave = to_char(ascii(curr_wave)+1)
where campgn_type = p_type
and campgn_no = p_campgn ;
exception
when others then
dbms_output.put_line(sqlerrm);
end Get_next_campgn;
begin
Get_next_campgn('ONB01','ONB');
end;
select * from sp_control;
--Output as Follows:
drop table sp_control succeeded.
create table succeeded.
1 rows inserted
1 rows inserted
procedure Get_next_campgn(p_campgn Compiled.
anonymous block completed
CAMPGN_NO CURR_WAVE CAMPGN_TYPE
ONB050 50 ONB
IAL1A A IAL
2 rows selectedJust a hunch, in the Procedure call
execute Get_next_campgn(‘ONB01’,’ONB’);the "Single Quotes" does not appear correct. They were probably typed into some other editor.
When executed as
execute Get_next_campgn(‘ONB01’,’ONB’);
Error starting at line 1 in command:
begin
Get_next_campgn(‘ONB01’,’ONB’);
end;
Error report:
ORA-06550: line 2, column 19:
PLS-00103: Encountered the symbol "‘" when expecting one of the following:
( ) - + case mod new not null <an identifier>
<a double-quoted delimited-identifier> <a bind variable>
table continue avg count current exists max min prior sql
stddev sum variance execute multiset the both leading
trailing forall merge year month day hour minute second
timezone_hour timezone_minute timezone_region timezone_abbr
time timestamp interval date
<a string literal with character set specification>
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:So, just replace them in any SQL editor and your Invoker block shall work properly.
Regards,
P. -
Error while executing procedure in TOAD which contains parameter and dblink
Hi all,
I am getting error while executing the following code in TOAD and APEX.
It contains parameter( start_date and end_date) and dblink(@TO_FUT).
When I hardcode the parameter values, It works fine.
When I dont give hardcoded values in the procedure, the error comes.
When I comment the lines whereever parameter comes, still the error comes.
I am not sure whether it is parameter issue or dblink issue or some other issue
Is anybody having any clue about this error?
Your help is very much appreciated.
The code:
CREATE OR REPLACE PROCEDURE PROC_ENR_ACC(START_DATE DATE,END_DATE DATE)
AS
BEGIN
EXECUTE IMMEDIATE 'TRUNCATE TABLE OUTPUT_TABLE';
INSERT INTO OUTPUT_TABLE
(FIRST_NAME ,LAST_NAME,HID ,EFF_DT,CID,PLAN, FLAG)
SELECT
TEMP1.FIRST_NAME,
TEMP1.LAST_NAME,
TEMP1.HID,
TEMP1.EFF_DT,
TEMP1.CID,
TEMP1.PLAN,
NVL((SELECT 'Y'
FROM FADMIN.MEMI_TABLE@TO_FUT MEMI
WHERE MEMI.MEME_CK = TEMP1.MEME_CK
AND MEMI.TXN_EFF_DT = TEMP1.EFF_DT
AND MEMI.PBP = TEMP1.PLAN
AND MEMI.MEMI_TXN_CD IN ('AC','RE')
AND MEMI.MEMI_SEQ_NO = (SELECT MAX (MI.MEMI_SEQ_NO)
FROM FADMIN.MEMI_TABLE@TO_FUT MI
WHERE MI.MEME_CK = MEMI.MEME_CK
AND MI.TXN_EFF_DT = MEMI.TXN_EFF_DT
AND MI.PBP = MEMI.PBP
AND MI.MEMI_TXN_CD IN ('AC','RE')
AND MI.MEMI_INTF_STS = 03 )),'N') AS FLAG
FROM
( SELECT
M1.FIRST_NAME ,
M1.LAST_NAME ,
M1.HID ,
M1.EFF_DT,
M1.CID,
M1.PLAN ,
(SELECT MEME.MEME_CK
FROM FADMIN.MEME_TABLE@TO_FUT MEME, FADMIN.GRGR_TABLE@TO_FUT GRGR
WHERE MEME.M_HIN = M1.HID
AND MEME.GRGR_CK = GRGR.GRGR_CK
AND GRGR.GRGR_ID = M1.GRGR_ID
)AS MEME_CK
FROM FADMIN.METR_TABLE@TO_FUT M1,
( SELECT M3.HID, M3.EFF_DT FROM FADMIN.METR_TABLE@TO_FUT M3
WHERE M3.TYPE IN ('60','61')
AND M3.REPLY IN ('117','118')
AND TRUNC (M3.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
AND M3.SYIN_INST = (SELECT MAX (M4.SYIN_INST)
FROM FADMIN.METR_TABLE@TO_FUT M4
WHERE M4.HID = M3.HID
AND M4.TYPE IN ('60','61')
AND M4.REPLY IN ('117','118')
AND TRUNC (M4.EFF_DT) = TRUNC (M3.EFF_DT))
) TEMP
WHERE M1.TYPE IN ('60','61')
AND M1.REPLY ='011'
AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
AND M1.SYIN_INST = (SELECT MAX (M2.SYIN_INST)
FROM FADMIN.METR_TABLE@TO_FUT M2
WHERE M2.HID = M1.HID
AND M2.TYPE IN ('60','61')
AND M2.REPLY ='011'
AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
AND M1.HID = TEMP.HID (+)
AND M1.EFF_DT = TEMP.EFF_DT (+)
AND TEMP.HID IS NULL
UNION
SELECT
M1.FIRST_NAME ,
M1.LAST_NAME ,
M1.HID ,
M1.EFF_DT,
M1.CID,
M1.PLAN ,
(SELECT MEME.MEME_CK
FROM FADMIN.MEME_TABLE@TO_FUT MEME, FADMIN.GRGR_TABLE@TO_FUT GRGR
WHERE MEME.M_HIN = M1.HID
AND MEME.GRGR_CK = GRGR.GRGR_CK
AND GRGR.GRGR_ID = M1.GRGR_ID
)AS MEME_CK
FROM FADMIN.METR_TABLE@TO_FUT M1
WHERE M1.TYPE IN ('60','61')
AND M1.REPLY IN ('016', '017', '022', '023')
AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
AND M1.SYIN_INST = (SELECT MAX (M2.SYIN_INST)
FROM FADMIN.METR_TABLE@TO_FUT M2
WHERE M2.HID = M1.HID
AND M2.TYPE IN ('60','61')
AND M2.REPLY IN ('016', '017', '022', '023')
AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
)TEMP1 ;
END;
The error:
ORA-00918: column ambiguously defined
ORA-02063: preceding line from TO_FUT
ORA-06512: at "PROC_ENR_ACC", line 5
ORA-06512: at line 5Okay
Here's the code formatted
CREATE OR REPLACE PROCEDURE PROC_ENR_ACC (START_DATE DATE, END_DATE DATE)
AS
BEGIN
EXECUTE IMMEDIATE 'TRUNCATE TABLE OUTPUT_TABLE';
INSERT INTO OUTPUT_TABLE (FIRST_NAME,
LAST_NAME,
HID,
EFF_DT,
CID,
PLAN,
FLAG)
SELECT TEMP1.FIRST_NAME,
TEMP1.LAST_NAME,
TEMP1.HID,
TEMP1.EFF_DT,
TEMP1.CID,
TEMP1.PLAN,
NVL (
(SELECT 'Y'
FROM MEMI_TABLE MEMI
WHERE MEMI.MEME_CK = TEMP1.MEME_CK
AND MEMI.TXN_EFF_DT = TEMP1.EFF_DT
AND MEMI.PBP = TEMP1.PLAN
AND MEMI.MEMI_TXN_CD IN ('AC', 'RE')
AND MEMI.MEMI_SEQ_NO = (SELECT MAX (MI.MEMI_SEQ_NO)
FROM MEMI_TABLE MI
WHERE MI.MEME_CK = MEMI.MEME_CK
AND MI.TXN_EFF_DT = MEMI.TXN_EFF_DT
AND MI.PBP = MEMI.PBP
AND MI.MEMI_TXN_CD IN ('AC', 'RE')
AND MI.MEMI_INTF_STS = 03)
),'N') FLAG
FROM (SELECT M1.FIRST_NAME,
M1.LAST_NAME,
M1.HID,
M1.EFF_DT,
M1.CID,
M1.PLAN,
(SELECT MEME.MEME_CK
FROM MEME_TABLE MEME, GRGR_TABLE GRGR
WHERE MEME.M_HIN = M1.HID
AND MEME.GRGR_CK = GRGR.GRGR_CK
AND GRGR.GRGR_ID = M1.GRGR_ID) MEME_CK
FROM METR_TABLE M1,
(SELECT M3.HID, M3.EFF_DT
FROM METR_TABLE M3
WHERE M3.TYPE IN ('60', '61')
AND M3.REPLY IN ('117', '118')
AND TRUNC (M3.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
AND M3.SYIN_INST = (SELECT MAX (M4.SYIN_INST)
FROM METR_TABLE M4
WHERE M4.HID = M3.HID
AND M4.TYPE IN ('60', '61')
AND M4.REPLY IN ('117', '118')
AND TRUNC (M4.EFF_DT) = TRUNC (M3.EFF_DT))
) TEMP
WHERE M1.TYPE IN ('60', '61') AND M1.REPLY = '011'
AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
AND M1.SYIN_INST = (SELECT MAX (M2.SYIN_INST)
FROM METR_TABLE M2
WHERE M2.HID = M1.HID
AND M2.TYPE IN ('60', '61')
AND M2.REPLY = '011'
AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
AND M1.HID = TEMP.HID(+)
AND M1.EFF_DT = TEMP.EFF_DT(+)
AND TEMP.HID IS NULL
UNION
SELECT M1.FIRST_NAME,
M1.LAST_NAME,
M1.HID,
M1.EFF_DT,
M1.CID,
M1.PLAN,
(SELECT MEME.MEME_CK
FROM MEME_TABLE MEME, GRGR_TABLE GRGR
WHERE MEME.M_HIN = M1.HID
AND MEME.GRGR_CK = GRGR.GRGR_CK
AND GRGR.GRGR_ID = M1.GRGR_ID) MEME_CK
FROM METR_TABLE M1
WHERE M1.TYPE IN ('60', '61')
AND M1.REPLY IN ('016', '017', '022', '023')
AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
AND M1.SYIN_INST = (SELECT MAX (M2.SYIN_INST)
FROM METR_TABLE M2
WHERE M2.HID = M1.HID
AND M2.TYPE IN ('60', '61')
AND M2.REPLY IN ('016', '017', '022', '023')
AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
) TEMP1;
END;
/When posting code if you put {noformat}{noformat} (with the curly brackets and in lower case) above and below it you can preserve formatting.
To your original question...
Is the link name supposed to be variable?
What do you mean by 'hard coding' the values, do you mean in the procedure itself so you'd actually PROC_ENR_ACC();?
What happens when you run this?DECLARE
start_date DATE;
end_date DATE;
BEGIN
start_date := '01-JAN-2009';
end_date := '01-FEB-2009';
PROC_ENR_ACC(start_date, end_date);
END;
I need to know exactly how to recreate your error...
Cheers
Ben
http://www.munkyben.wordpress.com
+Don't forget to mark replies helpful or correct+ ;) -
Error while executing procedure
Hi,
I am executing a procedure, which will write a query result into a spreadsheet and it will store it into the local PC. i am trying to run this procedure using TEST username.
Now i created a utl_file directory like below:
create directory MYDIR5 AS 'c:\raj';
and i tried to assign permission like below :
grant read,write on directory MYDIR5 to TEST
i got the below error, while i am executing the GRANT stmt:
ORA-01749: you may not GRANT/REVOKE privileges to/from yourself
So who has to grant privileges for this. I tried to execute the procedure without granting privileges but it end up with ORA-29283: error.
So pls help me on this issue.
Thanks in advance!!!You looked up the CREATE DIRECTORY statement right? What does it say under "Prerequisites"?
> I am executing a procedure, which will write a query result into a spreadsheet and it will store it into the local PC
Is the database also on your local PC? UTL_FILE runs on the database server. -
Error while executing procedure for FTP
Hi all,
I am facing error while copying l the csv files from FTP to local directory on my machine.
I have created a procedure & selected technology jython . please find the code below.
import snpsftp
ftp = snpsftp.SnpsFTP('ftp://noid-misa-01-pp/', 'indiaftp', 'PWD')
ftp.setmode('ASCII')
ftp.mget('INT/GPInput(AU)/', '*.csv', 'C:\D_DRIVE_NEERAJ\reading')
ftp.close()
The error i am receiving is :
org.apache.bsf.BSFException: exception from Jython: Traceback (innermost last):
File "<string>", line 2, in ?
File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\snpsftp.py", line 50, in __init__
File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\snpsftp.py", line 58, in connect
File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\ftplib.py", line 118, in connect
File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\socket.py", line 135, in connect
java.net.UnknownHostException: ftp://noid-misa-01-pp/If reading Excel as a database you would use "Access LSLINK"
Access external means you are reading a file. I don't think it is possible to treat Excel as a file because the internal structure is complex.
In the past I have saved the Excel as a CSV or as a Tab delimeted file. Then I use something like
ACCESS External
USE &filename
BEGIN
DESCRIPTION free ,
Variables text 20
Organisation text 20
'July 2008' numeric 20
'August 2008' numeric 20
'September 2008' numeric 20
'October 2008' numeric 20
'November 2008' numeric 20
'December 2008' numeric 20
'January 2009' numeric 20
'February 2009' numeric 20
'March 2009' numeric 20
'April 2009' numeric 20
'May 2009' numeric 20
'June 2009' numeric 20
END
peek
read
... quit the access sub system
END -
ORA-00900: invalid SQL statement Error while Executing Procedure
Hi:
I am trying to execute following procedure through java code, but i am getting ORA-00900: invalid SQL statement error.
Procedure is :
<code>
(vResult out int)
as
vCardId varchar2(16);
vForacid varchar2(16);
vApp_Entry_No varchar2(10);
vSrNo number(6);
vCardStatus char(1);
vCardStat char(2);
vExpiryDate date;
Cursor cardCur1 is
select u.card_number,trim(u.ACCOUNT_NUMBER),u.CARD_STATUS,to_char(u.EXPIRY_DATE,'dd-MM-yyyy')
FROM DailyCardData u
where default_indicator='1'
and isprocessed = 'N'
order by expiry_date;
begin
vSrNo := 0;
vResult := 0;
open cardCur1;
Loop
fetch cardCur1 into vCardId,vForacid,vCardStat,vExpiryDate;
if cardCur1%NOTFOUND then
exit;
end if;
if (vCardStat != null) then
vCardStatus := 'H';
elsif (vExpiryDate <= sysdate) then
vCardStatus := 'E';
else
vCardStatus := null;
end if;
select a.app_entry_no into vApp_Entry_No from Application a,ApplicationLinkedAccounts l
where l.foracid = vForacid and l.AcSrNo = '1'
and a.app_entry_no = l.app_entry_no
and a.cardid is null
and a.DOWNLOADFILECREATIONFLAG = 'Y';
update Application set CardId = vCardId,
Card_Status = vCardStatus,APPLICATIONPROCESSEDFLAG = 'Y',
APPLICATIONPROCESSEDdate = DOWNLOADFILECREATIONdate
where App_Entry_No = vApp_Entry_No;
commit;
update DailyCardData set isprocessed = 'Y',app_entry_no = vApp_Entry_No
where card_number = vCardId;
commit;
end Loop;
close cardCur1;
vResult := 1;
end;
</code>
Can any body help me in that?
Thank You,
AnupFirst of all I don't see a procedure header.
Secondly I see you commit inside your procedure. This is a bug.
Thirdly I see you also commit inside a loop. This is also a bug, and needs to be removed asap.
The error indicates a statement doesn't parse. As you don't post the error stack, nor a table definition no one can reproduce the problem.
You need to isolate the statements, one by one, and run them through sql*plus to see what happens.
Sybrand Bakker
Senior Oracle DBA -
Error while executing procedure : ORA-06550 and PLS-00103
Hi I have created the Stored Procedure as,
CREATE OR REPLACE PACKAGE BODY APPS.TMP_IMPORT_ITEMS_PKG AS
PROCEDURE LOAD_INTERFACE_TABLE(organization_code IN VARCHAR2, errbuf OUT VARCHAR2, retcode OUT NUMBER) IS
org_code varchar2(3);
BEGIN
org_code:= organization_code;
DBMS_OUTPUT.PUT_LINE('Organization Code is...' || org_code);
END LOAD_TABLE;
END TMP_IMPORT_ITEMS_PKG;
And here is the code what i am trying to execute:
DECLARE
V_ERRBUF VARCHAR2(1000);
V_RETCODE NUMBER;
BEGIN
EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', V_ERRBUF, V_RETCODE);
END;
when i run the above code i am getting the following error:
ORA-06550: line 5, column 10:
PLS-00103: Encountered the symbol "TMP_IMPORT_ITEMS_PKG" when expecting one of the following:
:= . ( @ % ;
The symbol ":=" was substituted for "TMP_IMPORT_ITEMS_PKG" to continue.
Can any body tell me what's wrong with the above code
Thanks in Advance,
Kumar K
Edited by: user2054206 on Dec 17, 2008 9:09 PM
Edited by: user2054206 on Dec 17, 2008 9:27 PMBEGIN
EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', '', null);
END;why are you executing it like that , it should be
EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', '', null);or as Prabhakar said in PL/SQL
BEGIN
TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', '', null);
END;Edited by: Rajneesh Kumar on Dec 18, 2008 11:08 AM -
Error while executing procedure having IN and OUT parameters
Hi,
I will be really gratified if someone can please help me in solving with the following problem.
I have one procedure given below
create or replace procedure abcd1april (
nd_in IN varchar2,
sal_in IN number,
success_out OUT number,
error_code_out OUT number,
error_msg_out OUT varchar2
AS
old_sal number;
cursor H7 is select SERV_ACC_LINK_CODE_N from pair_bkup where PAIRE_STATUS in (3,4) and nd=nd_in;
BEGIN
old_sal:=0;
open H7;
fetch H7 into old_sal;
close H7;
if old_sal=0
then
success_out:=0;
error_code_out:=01;
error_msg_out:='Check this error';
else
update pair_bkup set SERV_ACC_LINK_CODE_N=sal_in where nd=nd_in and SERV_ACC_LINK_CODE_N=old_sal;
success_out:=1;
error_code_out:=00;
error_msg_out:='NO ERROR IS THERE';
end if;
EXCEPTION
WHEN OTHERS
THEN
success_out:=0;
error_code_out:=SQLCODE;
--error_msg_out:=SQLERRM;
END;
Now when i try to execute this script it throws an error given below:-
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "TELMATEST.ABCD1APRIL", line 39
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
Now i am executing this procedure by following script:-
DECLARE
nd_in_n VARCHAR2(10);
sal_in_n NUMBER;
success_out_n NUMBER;
error_code_out_n NUMBER;
error_message_out_n VARCHAR2(10);
BEGIN
nd_in_n := '';
sal_in_n:= 0;
success_out_n := 0;
error_code_out_n:= '';
error_message_out_n := '';
abcd1april('02022',3,success_out_n,error_code_out_n,error_message_out_n);
insert into errormsgs values(&error_code_v,'error_message_v');
END ;
Now please help me in above case.
Regards
Gursimran SinghGursimran,
The error message tells you what you need to know -
ORA-06502: PL/SQL: numeric or value error: character string buffer too small.You're calling the procedure and supplying
error_message_out_n VARCHAR2(10);In each case, the message 'Check this error', 'NO ERROR IS THERE' or SQLERRM is longer than 10 characters - therefore the error.
Try it with
error_message_out_n VARCHAR2(1000);Cheers,
Bryan. -
Error while executing procedure from the web
Hi,
<p>
I am developing some procedures that I want to execute from an html form. The problem is that when I am trying to execute it in SQL Developer I got the following error:<br>
Connecting to the database oracle.<br>
ORA-06502: PL/SQL: numeric or value error<br>
ORA-06512: at "SYS.OWA_UTIL", line 325<br>
ORA-06512: at "SYS.OWA_UTIL", line 366<br>
ORA-06512: at "MMARTA.INSERTPROJECT", line 3<br>
ORA-06512: at line 10<br>
Process exited.<br>
</p>
<p>
The procedure is the following:<br>
create or replace <br>
procedure insertproject(jnum j.j#%type, jname j.jname%type, city j.city%type) as <br>
begin <br>
owa_util.mime_header('text/plain');<br>
if jpak.insertj(jnum,jname,city)<0 then<br>
htp.print('The jnum already exists in the database!');<br>
else <br>
htp.print('Insert successfull!');<br>
end if;<br>
end;<br>
<br>
and the function has the following code:
<br>
function insertj(jnum j.j#%type, jname j.jname%type, city j.city%type)<br>
return number is<br>
x number;<br>
begin<br>
Select count(*) into x From J<br>
Where J#=jnum;<br>
if x=0 then<br>
insert into J values(jnum,jname,city);<br>
commit;<br>
return 0;<br>
end if;<br>
return -1;<br>
END insertj;<br>
</p>
<p>
Does anyone have any idea why I get this error?
</p>
<p>
Thanks!
<p/>Hi,
<p>
The function has the following parameters:<br>
function insertj(jnum j.j#%type, jname j.jname%type, city j.city%type)<br>
where j# is varchar2(5), jname is varchar2(35) and city is varchar2(35)<br>.
I was trying to insert the following values:<br>
j#:='J11', jname:='JobName' and city:='Paris'.<br>
</p>
<p>
The procedure just calls this function with the same parameters. It is very strange because it is hard to see what the problem is. The line 10 is return 0 in the function where I believe the error comes from. It starts in the procedure and then goes in the function body, if I am interpreting this right.
</p>
<p>
Any idea?
</p>
Thanks! -
Date format error while executing procedure
Hi,
Oracle9i
Table A has TIME column with datatype as DATE.
In table A TIME column has values in format as mm/dd/yyyy hh:mm:ss
Trying to execute the procedure (with the date value as an input parameter) to retrieve the records from the above table A, but getting the below error:
get_product_details(17012,TO_DATE(24-10-2020,'mm/dd/yyyy hh:mm:ss'),TO_DATE(26-10-2020,'mm/dd/yyyy hh:mm:ss'),v_cur); ;
ORA-01810: format code appears twice
ORA-06512: at "SYS.STANDARD", line 231
ORA-06512: at line 14
RegardsHi,
Your format mask is incorrect.
TO_DATE(24-10-2020,'mm/dd/yyyy hh:mm:ss') The problem here is the first two characters is date but you are masking it as month and also the delimiter is - but you are masking it as / and for minutes the mask is mi and most importantly to_date accepts a String literal.
should be changed to
TO_DATE('24-10-2020 00:00:00','dd-mm-yyyy hh:mi:ss')cheers
VT -
Error while executing Procedure - ORA-06511: PL/SQL: cursor already open
I have successfully compiled the following procedure but when I execute it, following error occurs, please adv.
Thanks and Regards,
Luqman
create or replace
procedure TESTKIBOR
(contno in varchar)
AS
BEGIN
DECLARE cursor c1 is
SELECT * FROM KIBOR_SCHEDULE
WHERE CN=contno;
begin
OPEN C1;
FOR line IN c1 LOOP
update kibor_schedule
set lincome=line.Lincome,
expo=line.eXPO,
pport=line.pPORT
where cn=line.cn
and rno=line.rno;
END LOOP;
COMMIT;
close c1;
END;
END TESTKIBOR;
ERROR at line 1:
ORA-06511: PL/SQL: cursor already open
ORA-06512: at "MKTG.TESTKIBOR", line 6
ORA-06512: at "MKTG.TESTKIBOR", line 10
ORA-06512: at line 1Hi,
CREATE OR REPLACE PROCEDURE Testkibor
(contno IN VARCHAR)
AS
BEGIN
DECLARE
CURSOR c1 IS
SELECT *
FROM kibor_schedule
WHERE cn = contno;
BEGIN
--// OPEN c1; --no need to open if using for loop
FOR line IN c1 LOOP
UPDATE kibor_schedule
SET lincome = line.lincome,
expo = line.expo,
pport = line.pport
WHERE cn = line.cn
AND rno = line.rno;
END LOOP;
COMMIT;
--// CLOSE c1; -- no need for loop does it for you
END;
END testkibor;SS -
"Warning: compiled but with compilation errors" while executing procedure.
Hi All, i am so new to plsql. this code has been compiled but it gave a warning. I guess i am missing a small issue like semicolon but since im new i could not see what the problem is.
CREATE OR REPLACE procedure BAKIM.grantt_uguser as
cursor synn is
select 'CREATE PUBLIC SYNONYM '||object_name||' for '||owner||'.'||object_name TXT from dba_objects
where owner= 'FCY' and object_type in ('INDEX','PROCEDURE','TABLE','FUNCTION','VIEW','TRIGGER','SEQUENCE','PACKAGE')
and
object_name not in (select table_name from dba_synonyms where owner = 'FCY');
begin
for li in synn
loop
execute immediate li.TXT;
end loop;
end;Immediately after compiling, when you get the warning:
select * from user_errors;
In this case the root cause is "ORA-00942: table or view does not exist" because you probably don't have select on DBA_OBJECTS or DBA_SYNONYMS granted directly to BAKIM (it is probably through a role which is not sufficient for PL/SQL procedures). -
Gettng Error while executing the procedure(oracle 10.2.0.3.0)
Hi all,
I am getting following error While executing the package .
PLS-00103: Encountered the symbol "Truncate" when expecting one of
the following:
* & = - + ; < / > at in is mod remainder not rem return
returning <an exponent (**)> <> or != or ~= >= <= <> and or
like LIKE2_ LIKE4_ LIKEC_ between into using || multiset bulk
member SUBMULTISET_I have written follwing query in the package body.
EXECUTE IMMEDIATE 'TRUNCATE TABLE FORT ';
EXECUTE IMMEDIATE '
INSERT INTO FORT (CID,CODE,DESC,SCODE,SES,T_DT,SDN,LANG)
SELECT
SERVICES.CID CID,
PROFILE.FUCODE CODE,
TO_DATE(SUBSTR(SERVICES.STAT_CHNG,-7,6),'YYMMDD') T_DT,
PHOR.NUM SDN,
C_ALL.cLANGUAGE LANG
FROM
SERVICES .....Please give me the solution for this .
Thank y ou
Edited by: user636482 on Apr 10, 2009 1:08 AMI am getting following errors if I gave " ' " after not null.
LINE/COL ERROR
42/8 PLS-00103: Encountered the symbol "AND" when expecting one of the
following:
begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipe
42/56 PLS-00103: Encountered the symbol "A" when expecting one of the
following:
LINE/COL ERROR
) , * & | = - + < / > at in is mod remainder not rem => ..
<an exponent (**)> <> or != or ~= >= <= <> and or like LIKE2_
LIKE4_ LIKEC_ between || multiset member SUBMULTISET_
The symbol ", was inserted before "A" to continue.
42/74 PLS-00103: Encountered the symbol "D" when expecting one of the
following:
* & - + ; / at mod remainder rem return returning
<an exponent (**)> and or || multiset
The symbol "* was inserted before "D" to continue.
LINE/COL ERROR
45/6 PLS-00103: Encountered the symbol "COMMIT"
52/3 PLS-00103: Encountered the symbol "PROCEDURE" when expecting one
of the following:
end not pragma final instantiable order overriding static
member constructor map
The symbol "static" was substituted for "PROCEDURE" to continue.
85/8 PLS-00103: Encountered the symbol "AND" when expecting one of the
following:
begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
LINE/COL ERROR
<an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipe
85/56 PLS-00103: Encountered the symbol "A" when expecting one of the
following:
) , * & | = - + < / > at in is mod remainder not rem => ..
<an exponent (**)> <> or != or ~= >= <= <> and or like LIKE2_
LIKE4_ LIKEC_ between || multiset member SUBMULTISET_
The symbol ", was inserted before "A" to continue.
LINE/COL ERROR
85/74 PLS-00103: Encountered the symbol "D" when expecting one of the
following:
* & - + ; / at mod remainder rem return returning
<an exponent (**)> and or || multiset
The symbol "* was inserted before "D" to continue.
88/8 PLS-00103: Encountered the symbol "COMMIT"
95/3 PLS-00103: Encountered the symbol "PROCEDURE" when expecting one
of the following:
end not pragma final instantiable order overriding static
LINE/COL ERROR
member constructor map
The symbol "static" was substituted for "PROCEDURE" to continue.
133/3 PLS-00103: Encountered the symbol "PROCEDURE" when expecting one
of the following:
end not pragma final instantiable order overriding static
member constructor map
The symbol "static" was substituted for "PROCEDURE" to continue.
169/3 PLS-00103: Encountered the symbol "PROCEDURE" when expecting one
of the following:with out adding " ' " I am getting the previous error which I mentioned in Previous thread(TRUNCATE)
Thank you -
Error while executing the stored procedure through sender JDBC adapter
Hi All,
I am getting below error while executing the stored procedure through sender JDBC adapter.
Database-level error reported by JDBC driver while executing statement 'exec SapgetNextEntity 'SalesOrder''. The JDBC driver returned the following error message: 'com.microsoft.sqlserver.jdbc.SQLServerException: The statement did not return a result set.'. For details, contact your database server vendor.
what is the problem? any idea to anyone...
regards
Rameshhi Dharamveer,
I am not getting below statement for your reply
Try to use Refrence Cursor it will return u reference of resultset.
I mention SP like this
exec SapgetNextEntity 'SalesOrder'
SapgetNextEntity -
> SP Name
SalesOrder----
> Parameter I am passing...
regards
Ramesh
Maybe you are looking for
-
Pedido de compra com - Plano de Faturamento
Boa tarde senhores, Energia elétrica, Gás, Água, etc.... Qual é a melhor forma de tratar este tipo de aquisição? Um pedido de compra com plano de faturamento? Contratos? Como fica o fluxo de caixa? Consigo utilizar folha de serviço para plano de fatu
-
How to migrate from BE6000 to Communications Manager
Dear forum members, first of all, I'am tired. I have been on a long journey from the day we bought our Cisco Unified Communication system until now. Technically everything worked just fine, right from the beginning until now. But starting from the fi
-
Scale precision - LabVIEW 8.5
I seem to be having a problem related to keeping a scale precision to 0 digits of precision. I have even specified advanced formatting using format string of %d and it does not work. This problem seems to be related to the issue raised here: http:/
-
Help needed configuring Tomcat 4.1
Hi there, I hope that someone can help me out with this problem!! I am having problems running my applications on Tomcat 4.1 (on Win XP, j2sdk1.4.1, j2sdkee1.4) each time i try to run a JSP page that uses JavaBeans i get an 'unable to compile class f
-
I've received some TIF files created in basic sRGB mode but that contain Adobe 1998 images within them. The files, I've been told, were saved without embedding any profile to them. My printer just told me that I need to have a matching color profile,