- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Translating Logical Name
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2006 11:16 PM
01-25-2006 11:16 PM
I'd like to use the same translation mechanism as DCL does (default: process, job, group, system). Is there an easy way to do this?
I'd like this to work on fairly old versions of VMS (7.1 on...)
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2006 11:37 PM
01-25-2006 11:37 PM
Re: Translating Logical Name
you can use lib$get_logical.
(See help rtl lib$)
Rgds
Marc
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2006 11:40 PM
01-25-2006 11:40 PM
Re: Translating Logical Name
the logical name LNM$FILE_DEV in table LNM$SYSTEM_DIRECTORY holds the table names that get searched.
HTH,
Martin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-25-2006 11:54 PM
01-25-2006 11:54 PM
Re: Translating Logical Name
To begin with: Welcome to the VMS forum!
Martin just about described the answer, but to put it in the phrasing of your question:
Use LNM$FILE_DEV as the table, and you and up with the same translation that VMS presents to $TRNLNM (and its derivatives).
This way you also take in account any redefines that might be in effect.
hth.
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 01:56 AM
01-26-2006 01:56 AM
Re: Translating Logical Name
To my recollection (without a set of V5.0 manuals handy), SYS$TRNLNM has not changed significantly over the entire time.
On the translation side, the additon of cluster logical names was done by expanding the definition of LNM$SYSTEM to embrace the cluster-wide table (LNM$SYSTEM, the name for the System Logical name table, is used in LNM$FILE_DEV).
You can display the contents of the default LNM$FILE_DEV with the command:
SHOW LOGICAL LNM$FILE_DEV/TABLE=LNM$SYSTEM_DIRECTORY
- Bob Gezelter, http://www.rlgsc.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 02:00 AM
01-26-2006 02:00 AM
Re: Translating Logical Name
Both of these are defined in LNM$SYSTEM_DIRECTORY which is a logical name table containing names of logical name tables which are shared.
The names of process local logical name tables are held in LNM$PROCESS_DIRECTORY.
So the answer to your question is specify LNM$DCL_ TABLE as the the logical name table when calling $TRNLNM.
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 02:28 AM
01-26-2006 02:28 AM
Re: Translating Logical Name
Sample output:
$ run log
SYS$SYSDEVICE
"SYS$SYSDEVICE" = "DS6000$DKA0:" (LNM$SYSTEM_TABLE)
SYS$TRNLNM:
444 no logical name match
LIB$_GET_LOGICAL:
444 no logical name match
What's going on?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 02:39 AM
01-26-2006 02:39 AM
Re: Translating Logical Name
$ SHOW LOGICAL LNM$FILE_DEV/TABLE=LNM$SYSTEM_DIRECTORY
"LNM$FILE_DEV" = "LNM$PROCESS" (LNM$SYSTEM_DIRECTORY)
= "LNM$JOB"
= "LNM$GROUP"
= "LNM$SYSTEM"
= "DECW$LOGICAL_NAMES"
1 "LNM$SYSTEM" = "LNM$SYSTEM_TABLE" (LNM$SYSTEM_DIRECTORY)
= "LNM$SYSCLUSTER"
2 "LNM$SYSCLUSTER" = "LNM$SYSCLUSTER_TABLE" (LNM$SYSTEM_DIRECTORY)
1 "DECW$LOGICAL_NAMES" [table] = "" (LNM$SYSTEM_DIRECTORY)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 03:28 AM
01-26-2006 03:28 AM
SolutionHein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 12:11 PM
01-26-2006 12:11 PM
Re: Translating Logical Name
Simple rule for system services. Don't expect them to do ANY extra processing of parameters. No trimming of whitespace or case conversions. What you pass is what is used.
Logical name tables are case sensitive, but most of the time, logical names are upper case. When calling $TRNLNM, make sure the string is exactly what you're looking for, with correct case, and all whitespace trimmed and correct length specified.
RTL routines STR$TRIM & STR$UPCASE might be useful.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 03:00 PM
01-26-2006 03:00 PM
Re: Translating Logical Name
Or specify the LNM$M_CASE_BLIND flag when
calling SYS$TRNLNM()(first argument).
I had this one all figured out, too, but my
Fortran is so rusty these days, that HvdH got
his response posted while I was still running
my test program. Such a disappointment.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 07:38 PM
01-26-2006 07:38 PM
Re: Translating Logical Name
The test program now works if I use the argument lnm(:length) where length=len_trim(lnm).
I appreciate the time everyone took to contribute.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2006 07:44 PM
01-26-2006 07:44 PM
Re: Translating Logical Name
I have been browsing the OVMS forums for a few months now and have gained valuable information just reading the topics. After posting my first question, I got a solution and some good advice within 24 hours!
I'll now close this thread.. thanks again, guys!