Path: utzoo!mnetor!uunet!mcvax!ukc!stc!idec!prlhp1!mcwill From: mcwill@prlhp1.prl.philips.co.uk (Iain McWilliams) Newsgroups: comp.os.vms Subject: DCL query -- f$parse Message-ID: <319@prlhp1.prl.philips.co.uk> Date: 11 Apr 88 14:23:55 GMT Reply-To: mcwill@prlhp1.UUCP (Iain McWilliams) Followup-To: comp.os.vms Distribution: comp.os.vms Organization: MEL, Crawley, West Sussex, England Lines: 26 Keywords: f$parse, f$search Summary: YADCLQ ( Yet Another DCL Query ) I wish to use F$PARSE to create a full file spec in a command file, when I only supply part of the filename as a parameter. The problem arises when the default spec is to contain a logical symbol set up as a search list ==> ---------------------------------------- $assign [unit],[subsystem],[project] search$path: !usually in login.com $full_spec = F$PARSE(p1,"search$path:standard.dat") $if f$search(full_spec) .nes. "" then write sys$output p1," found" ---------------------------------------- Under these circumstances, F$PARSE will translate the logical into the first element in the search list, so that if the file exists elsewhere in the search list, F$SEARCH cannot find it. There is a field "parse-type" which I thought may offer a solution, but it will stop iterative translation only when it encounters a logical name with the 'concealed' attribute, and that attribute is only valid for an equivalence string which is a physical device. Does anyone have a solution, or has the lexical been changed in any recent (post 4.5) release Any suggestions received with thanks, -- Iain.