MrMarco
13th June 2002, 11:20
A very strange problem has occured which I haven't come across before:
I am attempting to compile a program script in debug. It compiles fine, but when the program is run, it runs whichout debug i.e. as normal.
There are no other instances of the session running.
The script has statements in the before.program section, so it has the opportunity to "get into debug", as it were.
I looked in the application directory and there are two files dated correctly: one with an "o" prefix and one with a "u" prefix.
I have attempted to compile other existing programs in debug, but with the same puzzling result.
Has anyone any suggestions?
Thanks
OmeLuuk
13th June 2002, 12:27
Let me guess, you use a NT server
The NT OS does not refresh its cached objects when they are refreshed on disk. You should log off from Baan to get a new session object from disk. Restart shared memory might help if that does not work (then the object is in Baan's shared mem). Remember that also NT is caching its (frequently used) files.
Last but not least ... you do not have the -- -nodebug option set?
MrMarco
13th June 2002, 15:51
Actually, no. We don't use an NT server here, which is particularly puzzling!
I have logged out and even taken the system down and restarted Baan. Still the same problem.
I have checked, and I do not have the -nodebug option set in the user profile. Still completely stuffed!
I am sitting here loading cartriges into my shotgun. I don't know whether to shoot the computer or myself!
OmeLuuk
13th June 2002, 15:59
In that case, there can be only one solution.
That is the one of which you will say "Stupid me, I should have thought of that!"
If you test it in a package combination that does not have the current developers VRC in its derivation structure, the newer compiled object will never be used.
If you compile in the TEST_001 vrc (actually the Own VRC of the TEST_001 package combination), but you test in the OPER_001, you will never see the debugger come up.
Check the output of "ls -l `explode6.1 o[objectcode]`"
r_nagu
13th June 2002, 16:28
There could be one more reason why you are not seeing the debug window. Check under User Managment/Default Settings/Maintain User Settings, the Debug Display should be set to Yes.
NS
spartacus
14th June 2002, 14:13
I have had a similar problem ... the other way round. After compiling with the debugger, it was not possible to remove it again.
At that time I did the following:
- copie the script to an other name
- compile it without debugger (helps nothing, but I did it!)
- delete the original
- copy the other script to the original name and compile it
- and things went well again
there should be another posibility:
- delete the object, and compile again
Hope that helps!
Spartacus
OmeLuuk
14th June 2002, 14:17
Before I said:
Check the output of "ls -l `explode6.1 o[objectcode]`"
I want to add:
You can check whether the object is in debug or not by reading the compilation flag shown in "bic_info6.1 -h o[objectcode]"
if your current object is in debug, you can see the debug flag.
NPRao
14th June 2002, 20:17
Diplay Debug flag..
There could be one more reason why you are not seeing the debug window. Check under User Managment/Default Settings/Maintain User Settings, the Debug Display should be set to Yes.
NS
Hi NS,
I couldnt find the Debug display session ? Can you please clarify me?
Thanks!
Other options to verify -
1. $BSE/bin/bic_info[version code] -f o[script code]
The output would be like -
>bic_info6.2 -f ozmadmtest
---------------------------OBJECT FLAGS---------------------------------
object_flags = 2=DEBUG
[DEV:nprao]/app/baan/bse/bin
>
It indicates if the object is in debug or not.
2. Please check the VRC structure as well as your current VRC as per Omeluuk suggestion. If you are doing parallel development on different VRC that can be an issue.
r_nagu
14th June 2002, 21:27
Rao,
There is no Debug display session rather its an option in the following session.
User Management
Default Settings
Maintain User Settings
In session Maintain User Settings, there is a field Display Debug which needs to be set to yes in order to see the debug screen in a separate window.
Thanks,
NS
NPRao
14th June 2002, 21:34
Hi NS,
I dont know which BaaN Version you are working on...
We are on the BaaN5.2 and I couldnt find the option you referred to.
r_nagu
14th June 2002, 21:36
Rao,
Sorry, I should have mentioned the version before. We are using Baan IV.
NS
MrMarco
17th June 2002, 10:42
Hi,
I have tried all of the suggestions here. Everything seems to be set up correctly. The only problem was an error message when I attempt to use bic_info, as follows:
bshell6.1> ls -l oxxx9100
-rwxrwxrwx 1 bsp bsp 71582 Jun 17 08:12 oxxx9100
bshell6.1> lic_info6.1 -h oxxx9100
oxxx9100: Error 0
oxxx9100: Fatal Error: Can't open object 'oxxx9100' for reading
1 ERROR REPORTED
bshell6.1>
This also happens when I use the -h option.
I cannot compile ANY programs at all in debug, whereas I had no problem doing this a few days ago. It would seem to suggest a global setting has been changed, but all seems fine.
The suggestions so far have been great, and they are much appreciated. Thanks.
OmeLuuk
17th June 2002, 13:53
You should use bic_info6.1 like
bic_info6.1 -h oppmmmnnnn
so you should also add the package code here.
o = for object
pp = code of package (like td or ti)
mmm = code of module (like ilc or pcs)
nnnn = number of object (like 4113 or 5201)
MrMarco
17th June 2002, 16:12
Thanks for that! I now have a response. The relevant bit is:
object_flags = 2=DEBUG 8=DLL
So it looks like the debugger is being added to the object, but when I run it, it STILL does not go into debug.
OmeLuuk
17th June 2002, 16:39
Now try this:
ba6.1 -- -dbgfdev -keeplog -logfile WhyNoDebug <Session to run>
where <Session to run> should be some code like
tiitm0101m000
or
tdpur4401m000
so
ppmmmnnnnlooo
where pp mmm and nnnn are like above, but l = m for main session and ooo stands for 000 ;)
Now in the file WhyNoDebug you can find all loggings of the file actions inclusive paths that are used to retrieve the objects from.
Compare the object paths given for your object and the output of bic_info6.1 -a oppmmmnnnn | head
(one of the first lines should give the object path, this path should also be used when the session is run).
mark_h
17th June 2002, 16:48
(1) Any new tools patches installed?
(2) Does explode6.1 point to the same object that you did the bic_info on?
You can try create runtime data dictionary(ttadv5210m000) on the session.
Good Luck!
Mark
(Ooops forgot to add you may have to log off and back on to the system to get the new data dictionary)
nick_rogers
17th June 2002, 22:02
Here is a truly wild stab at this if none of the other suggestions work. It could be the compiler, has anyone there ever compiled in debug ??? if not then it could be the compiler:
type this to get the last fix date for bic6.1
what `explode6.1 bic6.1' > file.out
or go to $BSE/bin and type what bic6.1 > file.out
look at the very first line in the file.out file, it will give you the date of the latest fix.
I am on BaanIVb2 and the bic6.1 is from Aug 1999
Is youre's older ?? if so see if any solutions are availble from baan.
mark_h
18th June 2002, 22:29
Hey MrMarco!
Did you get your problem resolved? I am curious as to what was causing the problem.
Mark