1828362 Members
3358 Online
109976 Solutions
New Discussion

Re: Dec term problem

 
berlioz
Regular Advisor

Dec term problem

Hello

i'm currently using Dec Windows interface under OpenVMS 7.3-2.

My problem is :
When i invoke script "@orauser.com" in login.com file for user oracle, i can't opened any dec term windows

What's the problem ? there's no "set term" function in that script... what kind of function cause problem ?

(sorry for my poor english)

thanks in advance for all
philippe
26 REPLIES 26
Antoniov.
Honored Contributor

Re: Dec term problem

Hi Philippe,
when you invoce script @orauser?
LOGIN.COM is executed after user is logged into system, so I guess DecWindows is already active.
If script is executed by batch or detached process, I guess you can't open a new windows.

Antonio Vigliotti
Antonio Maria Vigliotti
labadie_1
Honored Contributor

Re: Dec term problem

Can you post this orauser.com file ?

What does it do ?

Does it exit, or wait for something ?

Try a
$ ! 'f$ver(1)
$ set watch file/class=major
before calling orauser

$ set watch file/class=none
to suppress this verbosity

:-)
Martin Vorlaender
Honored Contributor

Re: Dec term problem

Antoniov,

ORAUSER.COM sets up the environment to work with Oracle. Normally, it just defines a few logicals and symbols.

Philippe,

what do you get when you issue
$ SHOW DISPLAY
and
$ CREATE /TERMINAL

cu,
Martin
berlioz
Regular Advisor

Re: Dec term problem

orauser.com script is used to set up oracle environnement and is necessary for such an user.

Is there an other way to invoke that script in some login file (login.com or decw$login.com) ?
somethink like : run/detach/output='display' orauser.com ?

what can i do ?
berlioz
Regular Advisor

Re: Dec term problem

martin,

show display normally print display characteristics (device,node,transport) and create/terminal opened a new dec term windows
Wim Van den Wyngaert
Honored Contributor

Re: Dec term problem

Try putting "set noon" before the "@".

Wim
Wim
berlioz
Regular Advisor

Re: Dec term problem

wim

sorry but... nothing changes

A question :
what command is invoke when clinking on decterm icon from decw menu task ? what script is invoking ?
berlioz
Regular Advisor

Re: Dec term problem

labadie,

when trying your solution, logging is impossible.

i've no decw interface... only a gray backgroud... what could i do ?
labadie_1
Honored Contributor

Re: Dec term problem

it was not intented to allow logging, but only to see what happens, the last command, and may be understand why it fails.
Martin Vorlaender
Honored Contributor

Re: Dec term problem

>>>
I've no decw interface... only a gray backgroud... what could i do ?
<<<

Log in by some other means (e.g. SET HOST or TELNET), repair the login file, and issue

@SYS$MANAGER:DECW$STARTUP RESTART

Re: the commands I suggested

I know what they do. What I wanted to know is what their output is when you enter them. If you can't (because you don't have a DECterm), log in by some other means, and enter

$ SET DISPLAY/TRANSPORT=LOCAL
$ CREATE /TERMINAL

cu,
Martin
berlioz
Regular Advisor

Re: Dec term problem

Sorry martin...

show display : device WSA7:[super], node 0, transport local, server 0, node 0

create/terminal just opened a new decterm

Precision : i'm using the new interface CDE

Wim Van den Wyngaert
Honored Contributor

Re: Dec term problem

bp,

The command executed when you click the decterm icon is something like
$ create/term/detach with some options.

If you go into the subdirectory dt you find a file "errorlog." created by cde. Anything in it ? (or errorlog.old)

If not, rename dt.dir to tdold.dir and see if it is cde setting related (undo rename afterwards).

How about your quotas ? Since you only have the problem when defining extra logicals and symbols, increase e.g. jtquota.


Wim
Wim
John Gillings
Honored Contributor

Re: Dec term problem

philippe,

It sounds to me like you're executing orauser.com unconditionally in your LOGIN.COM. I suspect you should only execute it for interactive logins. It's extremely unlikely that it needs to be executed for the process running your session & window managers.

Try modifying your LOGIN.COM to have multiple branches for different mode processes and place orauser.com only in the INTERACTIVE branch:

template LOGIN.COM

$! Stuff for all modes goes here
$
$ GOTO DO_'F$MODE()
$! shouldn't get here
$ EXIT
$
$ DO_NETWORK:
$! stuff for network jobs
$ EXIT
$
$ DO_BATCH:
$! stuff got batch jobs
$ EXIT
$
$ DO_OTHER:
$! stuff for other jobs
$ EXIT
$
$ DO_INTERACTIVE:
$! stuff for interactive jobs
$ EXIT
A crucible of informative mistakes
Martin Vorlaender
Honored Contributor

Re: Dec term problem

John's reply reminded me of something:
For some time now, we have the following snippet of code in all our SYLOGIN files:

$ mode = f$mode()
$ tt_devname = f$trnlnm("TT")
$ session_mgr_login = (mode .eqs. "INTERACTIVE") .and. -
(f$locate("WSA",tt_devname) .ne. f$len(tt_devname))
$ session_detached_process = (mode .eqs. "INTERACTIVE") .and. -
(f$locate("MBA",tt_devname) .ne. f$len(tt_devname))
$!
$ if (mode .eqs. "INTERACTIVE") .and. .not. -
(session_mgr_login .or. session_detached_process)
$ then
$ ! ...REAL interactive stuff, e.g.
$ SET TERMINAL /INQUIRE /INSERT
$ endif

HTH,
Martin
Wim Van den Wyngaert
Honored Contributor

Re: Dec term problem

Martin,

We find our real interactive processes with
$ if f$getdvi("TT","TRM") .and. f$mode() .eqs. "INTERACTIVE"
$ then
$! real interactive
$ endif

Is your version better ?

Wim
Wim
Bojan Nemec
Honored Contributor

Re: Dec term problem

John,

You are rigth that some commands must be executed only for interactive (or some other) mode. But orauser.com defines the logical names and symbols needed to interact with Oracle database and you need to interact with the database in all modes. So I think that must be executed unconditionally.

Philippe,

I sugest you that you try to see which symbols and logical names are different after executing the orauser.com. You can do that with a set of commands like this:

$ DEFINE SYS$OUTPUT BEFORE.TXT
$ SHOW SYMBOL/GLOBAL/ALL
$ SHOW LOGICAL
$ DEASSIGN SYS$OUTPUT
$ @ORAUSER.COM
$ DEFINE SYS$OUTPUT AFTER.TXT
$ SHOW SYMBOL/GLOBAL/ALL
$ SHOW LOGICAL
$ DEASSIGN SYS$OUTPUT
$ DIFFERENCES BEFORE.TXT AFTER.TXT

Now you can see which symmbols and logicals are defined or changed.

Bojan
Martin Vorlaender
Honored Contributor

Re: Dec term problem

Wim,

I think I got the code from some DECwindows cookbook (which explains the restriction to WS and MB devices).

I didn't know about the TRM item (as I always look at $GETDVI straight ahead ;-)

It seems that your code is more general. Thanks for the pointer.

cu,
Martin
Martin Kirby
Advisor

Re: Dec term problem

We have noticed a bug in the New Desktop login that if the login.com exits the login can fail and the login box not be restarted.

If that is what you are seeing you should see the errors from running the login.com in your DECW$SM.LOG file. If you have no access after the login then to access the file, reboot, login with the /NOCOMM qualifier, and look at DECW$SM.LOG;-1.

You may want to add a SET VERIFY to the login.com

The two cases we have had reported of problems were:

1. Where the LOGIN.COM exitted with a severe error state.
2. Where the LOGIN.COM included a SET DISPLAY command.

Another thing to try is to select on the login box to login as a DECwindows session rather than a New Desktop session.

If I am misunderstanding your problem and the issue is that you have been able to login and obtain a front panel but can't start a DECterm then start the Application Manager and from the New Desktop Tools start Watch Errors. Then try and start a DECterm and see if any errors are reported.

Martin Kirby
Sometims DECwindows maintainer
Wim Van den Wyngaert
Honored Contributor

Re: Dec term problem

Martin,

This is a feature, not a bug. And create/term worked.

Wim
Wim
Antoniov.
Honored Contributor

Re: Dec term problem

Wim,
Statement of Martin's SYLOGIN are standard of V6 of VMS.
I never seen statements like your sylogin

We find our real interactive processes with
$ if f$getdvi("TT","TRM") .and. f$mode() .eqs. "INTERACTIVE"
$ then
$! real interactive
$ endif

I guess TRM value return TRUE for all type of terminal also for RTAn and WTa type, where inquire doesn't need.
In V7 of VMS, standard login exclude all terminal beginning by TW, RT, WT, TK, WS, PY, FT and TN. Usually I enable inquire for TNA (telnet session).

Antonio Vigliotti
Antonio Maria Vigliotti
berlioz
Regular Advisor

Re: Dec term problem

Wim, martin,

it's working better !!!

But I don't really understand what is missing or what the system is waiting for in no-interactive mode
Wim Van den Wyngaert
Honored Contributor

Re: Dec term problem

Check with accounting why the decterm process terminated.
I vaguely remember something that the output shown during login is not unlimited for a decterm. Maybe you did define/log ?

Wim@home
Wim
Lawrence Czlapinski
Trusted Contributor

Re: Dec term problem

ORAUSER.COM shouldn't be causing a dec term windows problem. I recommend doing some tests to make sure that the problem is in ORAUSER.COM. As previously suggested, perhaps your job symbol table is too small for the current version of Oracle. JTQUOTA should be 8192 for Oracle 8I. If that is ok, I have the following suggestions:
1. LOGINOUT should we setting up your DECwindow. Does the DEFAULT directory for user ORACLE exists. Verify that the default directory for username ORACLE exists. [On one of our systems the username exists but there the default directory does not which surprised me. The actual oracle account on that system is currently ORACLE8I.]Even if the default directory doesn't exist, you should get a window with sys$announce and sys$welcome and error messages.
2. On our systems, @orauser.com is called by sylogin.com for all modes and also by oracle's login.com interactive and batch modes. Actually Oracle installs orauser.com in ORA_UTIL directory. ORAUSER.COM is needed in all modes. There is a $ set noON in it. You should be getting an error message if ORAUSER.COM isn't being found in interactive mode. There shouldn't be anything in ORAUSER.COM that would prevent a DECwindows login. You could temporarily set $ set noON before the @orauser.com. However, unless the system logicals needed by ORAUSER.COM aren't defined, it seems unlikely that it would get an error. As you said, it just defines logicals for Oracle.
$! define oracle client logicals
$! ... watch out for customizations if moved or re-installed!!
$ if f$search("ora_util:orauser.com") .nes. "" then @ora_util:orauser.com
3. Try commenting out $@orauser and try logging in to user oracle just to verify that you can login in from user oracle. That will show whether the problem is with orauser.com or elsewhere. Perhaps there is something else in the login.com that is causing a problem.
4. Can you call ORAUSER.COM from a different account and get a decterm window? If you can, the problem may be with the oracle account or oracle login.com or something it calls. May sure there is a $ set noON in the login.com. Otherwise any commands after an error won't execute. I like to do $ show time as the first command in the interactive part of login.com to know that I'm at least getting to that command. I would suggest temporarily putting in a $ set verify in the interactive part of the ORACLE login.com.
However,you say you're not even getting a window. You will only get a window for an INTERACTIVE login.
5. If you have a real terminal, see if you can complete the ORACLE user login from it.
6. I'm assuming that DECwindows logins, normally work from other accounts. Do any of the other accounts call ORAUSER.COM?
Lawrence
Wim Van den Wyngaert
Honored Contributor

Re: Dec term problem

Philippe,

I did some tests. if your login show too many lines of output, the window will not be shown. But the process is created and stays alive. I simply did a type of a large file during login and I had the problem.

Wim
Wim