Tony

For non-Uniobjects sessions...

You need to

PCPERFORM 'newversion n'

where 'n' is the pid of the running process to get that pid to pick up any
changed s/w.  This works whether the s/w is locally or globally cataloged as
far as I can see - so I don't know what the shared memory reference in the
manual means.

The manual says a number of things about NEWPCODE and its effect - the true
bit is where it says the NEWPCODE only effects the session that runs it.

ie both newversion and NEWPCODE are equivalent to dropping to ECL and
re-starting a program - newversion for other sessions, and NEWPCODE for your
own session.

I've just checked this with a uniobjects session for UD 6.0.12 on Windows
and newversion doesn't seem to work.  You might want to log this with IBM
support to confirm that this is indeed the case.  However, executing
NEWPCODE from the uniobjects session does make it pick up new code.  While
developing can you put an EXECUTE 'NEWPCODE' in a uniobjects sub that will
get called regularly (perhaps your session load/save; a logging sub etc)?

Note to Richard Sammartino: Putting EXECUTE 'NEWPCODE' in your menu program
loop should solve your issue.

Simon


"Tony Gravagno" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> Platform is Unidata 6.0 PE over WinXP.
>
> I've been having a hard time doing development on subroutines when the
main
> calling programs are running on active processes.  This isn't live code,
> it's all development, but I'm trying to avoid stop/restarting the main
code
> every time I change a subroutine.  For some reason the main code is always
> executing the shared/cached object.  I've tried cataloging globally and
> locally, using various combinations of DIRECT, LOCAL, FORCE, and
NEWVERSION.
> I've made sure to DELETE.CATALOG/DECATALOG twice to clear the CTLG and
I've
> watched the catalog files disappear through the Windows Explorer, so I
know
> the object is going away, and that points to shared memory.  I've tried
the
> !NEWPCODE and !NEWVERSION commands to force a refresh with no joy.  I've
> made sure that the NEWVERSION_USERS=ALL (or whatever that param is) was
> filed in the config record, because even my Administrator user was flagged
> as lacking the privs to use !NEWVERSION.
>
> The main routine is a client running through UniObjects.  If that process
> itself does a recompile and recatalog, everything works.  The problem is
> getting another process to refresh shared memory for the running (main)
> process.
>
> Can I just turn off smm while I'm in development?  How?
>
> Thanks!!
> Tony
> -------
> u2-users mailing list
> [EMAIL PROTECTED]
> To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to