Oracle Form 6i cannot recognize attached library

I am using Oracle Forms 6i, the form comes with an attached library which was compiled OK. I tried to execute the form by running it directly (from Program > Run Form > Client / Server from form builder and it works as expected.

However, recently I encountered an error and would like to debug the form. The problem is, when I tried to debug the form from the Program > Run Form > Debug menu, the form couldn't seem to recognize my attached library. It works fine when I step to the form codes, but pop up error when the codes reached the attached library statement. The error code returned is: FRM-40735 : ON-ERROR trigger raised unhandled exception ORA-06508.

I've tried recompiling the server procedure, recompile the attached library, removing, reattaching the library but the outcome is the same. My form and the library sits in the same directory. This is how I opened my form builder.. It's a command file.

SET ORACLE_SID=MYTESTDB
SET NLS_LANG=AMERICAN_AMERICA.ZHT16MSWIN950
SET NLS_DATE_FORMAT=DD/MM/YYYY
SET FORMS60_PATH=C:\myForm\forms
SET UI_ICON=C:\myForm\forms\icon

cd C:\myForm\forms
C:\orant\BIN\ifbld60.EXE

Anyone come across this before? Please help... Thanks a lot...
huiyinglohAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

jwahlCommented:
did you remove the path when attaching the library to the form?
0
huiyinglohAuthor Commented:
yes.. I did remove the path when Forms asked the "....non portable directory specification..." question.

The .cmd file I used to open my form builder resides on my desktop.. I think it doesn't matter where I placed this, right? Coz for the previous project, this works alright..  

0
jwahlCommented:
but check also if you have entered a working directory in the .cmd file on you desktop ...!
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

huiyinglohAuthor Commented:
Hi Jwahl,
This is how my command file looks like:

*******************************************************
SET ORACLE_SID=MYTESTDB
SET NLS_LANG=AMERICAN_AMERICA.ZHT16MSWIN950
SET NLS_DATE_FORMAT=DD/MM/YYYY
SET FORMS60_PATH=C:\myForm\forms
SET UI_ICON=C:\myForm\forms\icon

cd C:\myForm\forms
C:\orant\BIN\ifbld60.EXE
*******************************************************
my working directory is C:\myForm\forms
0
jwahlCommented:
sorry for confusing you ... i meant if the desktop ICON is a shortcut to your *.cmd file, it may have itself a seperate working path.

if so, remove the path and try again.

0
huiyinglohAuthor Commented:
Hi Jwahl,

I found out the reason already... ! It's not due to the *.cmd file afterall..  After a few searches online, I found out that the reason for the error is because, when I compiled the .pll file, I need to click save to save the compiled .pll even though there's no changes... (duh!!) I didn't save the changes previously and assumed that the .plx generated should be ok for the Forms to use.. (if ever the form builder is going to use it.. )

Then, following one of the instructions on a website, I re-compiled the .pll again, saved it, remove library attachment, re-attached saved version of the pll, with no changes.. and viola! the debug works... :)

Should've tried one extra time before opening this Q... :S .. Thanks for your help anyways, Jwahl.
0
jwahlCommented:
yes, it's the behavior of the forms builder:

for compiling the *.pll file is used. but the runtime uses the *.plx and the *.pll only then if no *.plx is found ... and compiling a library IS changing it.



0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
huiyinglohAuthor Commented:
Hi Jwahl,
Something to clarify... You mentioned that, the runtime will first use *.plx and if there's no *.plx file, it will use the *.pll file.

This means that even though if I dont save the *.pll file after compiling it, there should not be a problem, right? Because after my compilation, my directory now have a compiled OK version of *.plx file and an unsaved copy of *.pll. Knowing the behavior of runtime which will use the *.plx first, then it will not load the unsaved version of *.pll? Is my understanding wrong?
0
jwahlCommented:
i think your assumptions are right.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Oracle Database

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.