The example I supplied was inaccurate and I corrected it to say

update(E) CUST;

It still would generate journal entries that your pgmA could then read. Yes disk space would be used and yes you have to write a very small RPG program but you wouldn't have to change your pgmA.

Using SQL to generate the journal entries will still require the same disk space for data AND additional programs be written. Calling them SQL scripts doesn't change this. The only difference is your statements are "compiled" at run time. Their essence remains as quick and dirty programs.

Do yourself a favor. Modularize pgmA so other programs can utilize the ETL code and write a separate program, or programs, to do entire table transfers. This/these program(s) can read a row and ETL without using disk space.


-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Stone, Joel
Sent: Monday, October 01, 2012 11:26 AM
To: 'Midrange Systems Technical Discussion'
Subject: RE: make cust file look like a journal record - format

Yes but -

Many of these files have millions of records in them - that is a lot of wasted disk space I would think - even if only for the several days we keep journals around.

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Monnier, Gary
Sent: Monday, October 01, 2012 1:12 PM
To: Midrange Systems Technical Discussion
Subject: RE: make cust file look like a journal record - format


All you have to do is write a program that reads then updates the file in question. An RPG program that just reads and updates the file might be faster than an SQL script.

dow (not %EOF(CUST));
read(E) CUST;
write(E) CUST;

You don't have to change anything but by updating the record you force an entry to the journal where, you state, your program reads the journal changes. No change to your ETL are required.


> On 10/1/2012 11:19 AM, Stone, Joel wrote:
I have pgmA which reads cust journal changes and sends them off for > an ETL app.

I would also like to be able to send the entire cust file using the > same pgmA with no changes.

How can I make the cust record format look just like a journal > record (the format that DSPJRN creates).

For example:

Cust file format:

CustName 30
CustAddr 30
CustCity 20
Total 80

I want this to look like a DSPJRN record so I can use the same pgmA > to load up all CUST records for an initial load.

Desired format:

Field Field
Text Name Type Length
Length of entry JOENTL S 5
Sequence number JOSEQN S 10
Journal Code JOCODE A 1
Entry Type JOENTT A 2
Date of entry: Job date f JODATE A 6
Time of entry: hour/minut JOTIME S 6
|---------- journal header fields
Name of Job JOJOB A 10
Name of User JOUSER A 10
Number of Job JONBR S 6
Name of Program JOPGM A 10
Name of Object JOOBJ A 10
Entry Specific Data - Var JOESD A 80
<--------------------------------- I want my CUST data here!!

Most of the journal fields can empty - but I want my CUST data to be > in JOESD. Can SQL or OPNQRYF do this?

I think I need to take fields JOENTL thru JOOBJ and initialize those.
Then take all CUST fields CUST.* and string them together (alpha,
packed, > zoned) into the one JOESD field.

Is this possible without using an HLL?


This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at

This inbound email has been scanned for all viruses by the MessageLabs SkyScan

This outbound email has been scanned for all viruses by the MessageLabs Skyscan service.
For more information please visit

This thread ...


Return to Archive home page | Return to MIDRANGE.COM home page