- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Dibol & CGI
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
08-16-2006 03:19 AM
08-16-2006 03:19 AM
Dibol & CGI
In a web application, I use a DCL script that will at end execute an program written in Dibol that produices a report in HTML (or XML) format.
I have several webservers running in parallel (for testing), but each uses the same procedures, code, executables and dataas the others. You _would_ expect the same results: valid HTML for each.
Using OSU or SWS produces the expected output. Using WASd hoever just gives two spaces on each line and that's it. No error!
I've seen the same behaviour with Dibol programs that write to standard output, when running as a netwerk process or in batch it happens as well (but I have to confirm éxactly when and where), but running interactively, there is no problem at all.
Redefine of SYS$OUTPUT to TT doesn't help: Invalid Channel.
What causes thsi behaviour and how to overcome it (without extensive re-programmming...)
(VMS 7.3-2, Dibol 5.6.7 (development) 7.5.1 (execution - but the same has been found using 5.7.6), OSU 3.8, SWS 1.3-1, WASD 9.1.4)
OpenVMS Developer & System Manager
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-16-2006 03:23 AM
08-16-2006 03:23 AM
Re: Dibol & CGI
OpenVMS Developer & System Manager
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-16-2006 03:41 AM
08-16-2006 03:41 AM
Re: Dibol & CGI
THE moment to try the excellent WATCH utility (in server basics).
What do you see in view source (in IE) ?
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-16-2006 04:25 AM
08-16-2006 04:25 AM
Re: Dibol & CGI
WASd might be trying to bypass RMS and not cover correctly the full range record formats.
If so, a simple tweak to the Dibol program would likely fix it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-16-2006 11:56 PM
08-16-2006 11:56 PM
Re: Dibol & CGI
Mark hinted to that from the beginning (and I LOVE the feaure!)
David,
I cannot tell - it's probably somthing internal to the RTL; having said that, I don't think it'll be a "simple" tweak.
UPDATE:
I've been told that SWS writes to a BG device (so TCPIP traffic - quite obvious for a Unix program), OSU writes to NET: (obvious since it uses DECNet) and WASD writes to an MBX device (obvious for a non-decnet VMS program). Network processes could well use a mailbox as SYS$OUTPUT so that explains why the same thing happens there.
By deduction on what facilities are available, it's very well possible that the software we use (an external library) uses SMG for output, and that should now be bypassed. NOT an easy tweak, I guess.
OpenVMS Developer & System Manager
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-17-2006 01:21 AM
08-17-2006 01:21 AM
Re: Dibol & CGI
And what about directing output to a file a doing a type of that file ?
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-17-2006 08:11 PM
08-17-2006 08:11 PM
Re: Dibol & CGI
@subproc "''report'"
and there:
$ define/user sys$output sys$scratch:x.x
$ mcr cgi_report 'p1'
$ type sys$srcratch:x.x
Data is still wrong: just spaces.
Even the interactive version that runs fine in batch as well, gives spaces in this case.
Doing this in the sub-script:
$ define sys$output sys$scratch:x.x
$ define sys$input sys$command
$ mcr run_report 'p1'
1
j
$ type sys$srcratch:x.x
will give a warning when run by the gateway:'
$ define sys$output sys$scratch:x.x
%DCL-W-SKPDAT, image data (records not beginning with "$") ignored
$ define sys$input sys$command
$ mcr run_report 'p1'
%DCL-W-SKPDAT, image data (records not beginning with "$") ignored
$ type sys$srcratch:x.x
OpenVMS Developer & System Manager
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-20-2006 09:59 PM
08-20-2006 09:59 PM
Re: Dibol & CGI
When you did the TYPE, sys$output was still directed to the file. You have to do define/user.
I've read that SMG outputs in a faulty way (TCPIP does it too with SMG : try ucx show comm and watch what you get when you edit the output file).
If you create the file first as stream, it seems to work (but tcpip opens the file as erronious as append).
$ create/fdl=sys$input x.x
record
format stream
$ tcpip show comm
So, I guess you need to set the file to stream with set file/at=rfm=stm x.x.
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-28-2006 08:33 AM
08-28-2006 08:33 AM
Re: Dibol & CGI
Digging even deeper: the program has not been build correctly and so it did not use lib$put_output where it should have. So I tried to build it properly - and the program crashed with ACCVIO.
It must have been as such for ages....Time to investigate and solve the issue propely!
But surely, it's a SMG-issue, because that's just the difference between the crashing program and the wrongly built one.
OpenVMS Developer & System Manager
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-29-2006 11:21 PM
08-29-2006 11:21 PM
Re: Dibol & CGI
Drilling deep into the code (including reversed engineering) lead to value returned by LIB$GET_FOREIGN.
The program is started with options, and LIB$GET_FOREIGN is used to retrieve them from the commandline, and all three webservers (OSU. SWS and WASD do return the remainder of the commandline. But where OSU and SWS did return the values in uppercase, WASD returned them in as specified: in lowercase. Since control of required options is done with an uppercased string, these are nmot foud when running under WASD.
If the options are specified in uppercase in the script, the program went flawlessly in WASD as well.
I wonder: do OSU and SWS process the CGI-procedure before processing? I didn't look into that. But it's good to know this difference.
OpenVMS Developer & System Manager