Hi Simon,

Thanks.  I am using QZHBCGI.  I changed SHWSTDOUTC to system state using SST
(offset 105C changed from x'01' to x'80' -- btw, in the MI archives, Leif
has two emails, one that says change offset 105C, the other that says change
offset 15C1), and it now indeed shows the output of my program if I call it
after calling my program.

I changed my Wrt procedure like this:

d Wrt             pi
d  WrtData                   32766a   const varying

d CRLF            s              2a   inz(x'0D25')
d Data            s          32766a
d DataLen         s              5p 0

c                   eval      DataLen = %len(WrtData) + 2
c                   eval      %subst(Data:1:DataLen) = WrtData + CRLF
c                   if        DataLen > *zero and
c                             $PGM_PARMS = *zero
c                   callp     Translate(DataLen:
c                                       Data:
c                                       'Q037101367':
c                                       'QUSRSYS')
c                   endif

c                   callp     WrtStdOut(Data: DataLen: Error)
c                   add       DataLen       PDF_loc

which seemed a little shorter and accomplishs the same thing as the changes
you suggested, and all is well.  Thanks!

Peter Dow
Dow Software Services, Inc.
909 793-9050 voice
909 522-3214 cellular
909 793-4480 fax


----- Original Message -----
From: "Simon Coulter" <shc@flybynight.com.au>
To: "Peter Dow" <maillist@dowsoftware.com>; <WEB400@midrange.com>
Sent: Sunday, August 04, 2002 12:48 AM
Subject: Re: [WEB400] Displaying standard-out


> Investigation shows that different DSM sessions are used for displaying
> the output from *USER state programs and *SYSTEM state programs.
>
> QZHBCGI (or QTMHCGI if you are still using that but you shouldn't be
> because IBM have been telling you not to use it since VRM430) is a *SYSTEM
> state service program.
>
> SHWSTDOUTC is by default a *USER state program.
>
> Therefore SHWSTDOUTC displays the user domain output which is why it does
> not display the output from QtmhWrStdout.
>
> The solution is to patch SHWSTDOUTC and make it *SYSTEM state then it will
> display the output you need.  Check the MI400-L archives, buy Leif's book,
> or STFW for information on how to do this.
>
> This situation means you need two versions of the SHWSTDOUTC program in
> order to display normal STDOUT and QtmhWrStdout STDOUT.  I am looking for
> the locations of these two separate spaces.  If I find anything I'll
> probably post the information to the MI list.
>
> The reason the first character of each line disappears is because you are
> appending an ASCII CRLF (x'0d0a') after each line.  Notice that the first
> line (containing the Content-Type tag) prints correctly?  EBCIDIC x'0a' is
> an odd character that could be many things depending on the device and the
> version of the EBCDIC table.
>
> You should be appending an EBCDIC CRLF (x'0d25') to each line and if
> sending the output to a browser then convert the whole line.




As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.