nour911
asked on
Error 201 Indeitfied functionname must be declared
hi,
when i created a funciton the in the back-end and try to run from the form or report i got this error , what is the reason ?
thank you,
nour911
when i created a funciton the in the back-end and try to run from the form or report i got this error , what is the reason ?
thank you,
nour911
Try this
without parameter
with parameter
if you still get error please give error details.
without parameter
select * from dbo.functionName()
with parameter
select * from dbo.functionName(parametername1,parametername2,...)
if you still get error please give error details.
have you connected to the proper database? if yes, you should get it.
try to execute the function through sql plus first, if successful, do it in forms or reports. You may check copying in forms or reports program unit as well
Hope this help
try to execute the function through sql plus first, if successful, do it in forms or reports. You may check copying in forms or reports program unit as well
Hope this help
ASKER
Thank you all,
when i run this function sqlplus it is working okay, but in the forms or report it is give me this error 201
ASKER
when i run in the form
declare
ret varchar2(50);
begin
ret := spell_number(10);
end;
----
when i do compile i got this error
error 201 indentifier spell_number must be decleared
-------------
declare
ret varchar2(50);
begin
ret := spell_number(10);
end;
----
when i do compile i got this error
error 201 indentifier spell_number must be decleared
-------------
try this
declare
ret varchar2(50);
begin
select spell_number(10) into ret from dual;
end;
declare
ret varchar2(50);
begin
select spell_number(10) into ret from dual;
end;
ASKER
Leoahmad
i try but get same error
i try but get same error
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
it is seems to be a "Privillege issue"
Grant required privilleges to execute the procedure to connected user
Grant required privilleges to execute the procedure to connected user
ASKER
LeoAhmad
the problem is not only with this function, the problem with any function i created.
But i have anotehr database, when i tried to run the function from form it is working fine.
ASKER
Shajukg
i grant all the priviliges to this user... but same error
i grant all the priviliges to this user... but same error
Have you tried this function creating in Forms Program units? if it works then surely you have privileges problem.
Are u connected as owner in forms or u connected with diff. user who has aquired privilleges thru roles. If it is the second case u need explicit grants from owner to run the procedure.
ASKER
Leoahmad
yes the function is working fine in forms programming units,
if it is priviliges problem ? what will be ??
ASKER
Shajukg
i connect as the owner ,,
is the function name case sensitive?
ASKER
shajukg:
No
No
select * from all_objects where object_name ='SPELL_NUMBER';
-- put spell_number in caps only
-- put spell_number in caps only
ASKER
Shajukg
when i try this
select * from all_objects where object_name ='SPELL_NUMBER';
i got this error:
ORA-06552: PL/SQL: compilation unit analysis terminated
ORA-06553: character set name is not recognized
then i try to desc all_objects
ORA-00942: table or view does not exist
when i try this
select * from all_objects where object_name ='SPELL_NUMBER';
i got this error:
ORA-06552: PL/SQL: compilation unit analysis terminated
ORA-06553: character set name is not recognized
then i try to desc all_objects
ORA-00942: table or view does not exist
ASKER
how can i fix this problem ??
For
ORA-06552/53 - http://www.lattimore.id.au/2007/03/09/ora-06552-plsql-compilation-unit-analysis-terminated/
Regarding your error, check out this
http://forums.devshed.com/oracle-development-96/who-can-resolve-the-error-pls-00201-identifier-must-be-declared-270170.html
I think the important error here is "character set name is not recognized"
Check the character sets between the two databases and your NLS_LANG from your client machine. Make sure everything matches.
Check the character sets between the two databases and your NLS_LANG from your client machine. Make sure everything matches.
ASKER
Ok i will tomorrow ,
Thank you
Thank you
ASKER
SlightWv
i check the character set in both PC they are same
i check the character set in both PC they are same
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
ok
databasename.dbo.functionn