×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
On 28-Jul-2016 21:00 -0500, midrange wrote:
Even in S36 days many of us stayed away from the RPG Cycle for
output.
It's just easier to have control in the C specs, using EXCPT opcode.
Not sure what you intend by "update"?
I want to effect both an invocation a DB /put/ method [i.e. any of
what might be called a WRITE or INSERT, but only by use of an RPG36
OpCode, such as EXCPT], and an invocation of a DB /update/ method. And
the row that I eventually manage to insert [as data that I want, rather
than as an accidentally blank row, for example], I want to be able to,
probably in a separate program, is to change the data of that row; i.e.
effect what became available as an UPDAT (Modify Existing Record) OpCode
in a slightly more modern RPG.
<<SNIPped example with the actual source used in a test>>
FS36INP IP F 55 DISK
FS36OUT O F 55 DISK A
I* .1....+....2....+....3....+....4....+....5....+....6....+.
IS36INP XX
I 1 55 RCDINP
C* .1....+....2....+....3....+....4....+....5....+....6
C* MOVEL'LITERAL' RCDOUT 55
C MOVE RCDINP RCDOUT 55
C EXCPT$RCD
C SETON LR
O* .1....+....2....+....3....+....4....+....5....+....6
OS36OUT EADD $RCD
O RCDOUT 55
That worked great to insert into the output file S36OUT, the first
record from the S36INP file.
p.s. Looking at the code, I now realize [or possibly just recalled]
why, probably, the use of the @, $, and # were so ubiquitous; the lack
of a space between the OpCode and an identifier as an operand\factor
just begs for use of a non-alpha character for /readability/, if there
is such a thing with that generation of the language ;-)
As an Amazon Associate we earn from qualifying purchases.