Hello,
Not really I think :)
I guess that somebody catalogued object that has different file name, but contains same symbolic name. Look for 2 routines that have same name after SUBROUTINE keyword, but differently named source files.
Name mentioned after SUBROUTINE keyword must match (source code) file name. Too long story to explain.
Kind regards
Pawel
Hi, Thank you for the reply, yes, you are correct sorry i wrongly mentioned the error file.. the exact error file name is " TEST_2EOBJCAT_2ETESTCAT "(i got the error for this file name only not for that) what the error means ???? i am in great confusion!!!!!!!!!!
jsh anch ~ -->CATALOG TESTING.BP TEST.OBJCAT.TESTCAT
TEST.OBJCAT.TESTCAT The subroutine TEST_2OOBJCAT_2OTESTCAT is already
defined in 35637
** Unable to catalog object TEST.OBJCAT.TESTCAT ** jsh anch ~ -->
is indicating it cannot catalog the "TESTING.BP" version of this file
because it "already" has a copy of the subroutine cataloged, but it's in a
different file... in this case it appears the subroutine is in a file
called "35637" (Presumably this occurred accidentally/someone copied the
subroutine file to "35637" and then cataloged it there?). Generally, JBase
keeps an inventory of subroutines and how they're mapped to .dll's/.so's,
what the source is, etc., in a file (in the LIB folder) called libdef.def.
Basically, when you attempt to catalog the above, jbase looks in libdef.def,
and says, sorry, I've already got a copy of the subroutine and it's in a
file called "35637". To fix, you need to get the bad info out of
libdef.def. Typically you can do this by DECATALOG'ing. I'm not sure if
you need to do:
DECATALOG TESTING.BP TEST.OBJCAT.TESTCAT
or
DECATALOG TESTING.BP 35637
but I would recommend doing both at least 2 times, then try CATALOG'ing
again...
Tom @ Proco, Inc
800-867-7626 x4
t...@proman.com
-----Original Message-----
From: jB...@googlegroups.com [mailto:jB...@googlegroups.com] On Behalf Of
suresh
Sent: Monday, July 07, 2008 3:22 AM
To: jBASE
Subject: Re: Unable to catalog the object - 35637
> TEST.OBJCAT.TESTCAT The subroutine TEST_2OOBJCAT_2OTESTCAT is already
> defined in 35637
This is a symptom of wrong subroutine name.
The subroutine name should match the source code name !
Also, if you change the program type from main to subroutine or
viceversa, you should first decatalog the existing program then
catalog.
If the subroutine name does not match the program name and more over
if the right program is loaded in memory you get this kind of message.
For example, let's say there is cataloged subroutine named ABC.
Now let's say TEST.OBJCAT.TESTCAT source code starts with:
SUBROUTINE ABC(...) ;* Bad, should be TEST.OBJCAT.TESTCAT
The error message tells you that the "rightfull" ABC is already
cataloged and probably running.
Be very careful not to do this kind of mistake in a "live" setting
because you can corrupt the lib & bin libraries.
Lucian
- original message -
Subject: Re: Unable to catalog the object - 35637