For Programmers: Free Programming Magazines  


Home > Archive > Cobol > April 2007 > Passing data between batch programs









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Passing data between batch programs
tomanepb

2007-04-03, 7:55 am

Hi
I'm setting up a batch routine and, I need to pass data between two
consecutive programs.
How can I do it?
In CICS with the "commareas" it's easy but, in batch I just coudn't
find how to do it.
Can anyone help me please?

Thanks

Ant=F3nio

William M. Klein

2007-04-03, 7:55 am

the usual way to do this (in an IBM mainframe environment) is via a temporary
file; write it in the first program and read it in the next one.

--
Bill Klein
wmklein <at> ix.netcom.com
"tomanepb" <tomanepb@gmail.com> wrote in message
news:1175599226.892453.165080@p15g2000hsd.googlegroups.com...
Hi
I'm setting up a batch routine and, I need to pass data between two
consecutive programs.
How can I do it?
In CICS with the "commareas" it's easy but, in batch I just coudn't
find how to do it.
Can anyone help me please?

Thanks

António


tomanepb

2007-04-03, 7:55 am

Yes, that is the usual way to do it.
But you have to set up JCL in order to handle it.
I was thinking of something like the CICS commareas or systems areas
(CWA or TWA)

Ant=F3nio

William M. Klein escreveu:
> the usual way to do this (in an IBM mainframe environment) is via a tempo=

rary
> file; write it in the first program and read it in the next one.
>
> --
> Bill Klein
> wmklein <at> ix.netcom.com
> "tomanepb" <tomanepb@gmail.com> wrote in message
> news:1175599226.892453.165080@p15g2000hsd.googlegroups.com...
> Hi
> I'm setting up a batch routine and, I need to pass data between two
> consecutive programs.
> How can I do it?
> In CICS with the "commareas" it's easy but, in batch I just coudn't
> find how to do it.
> Can anyone help me please?
>
> Thanks
>
> Ant=F3nio


tomanepb

2007-04-03, 7:55 am

Yes, that is the usual way to do it.
But you have to set up JCL in order to handle it.
I was thinking of something like the CICS commareas or systems areas
(CWA or TWA)

Ant=F3nio

William M. Klein escreveu:
> the usual way to do this (in an IBM mainframe environment) is via a tempo=

rary
> file; write it in the first program and read it in the next one.
>
> --
> Bill Klein
> wmklein <at> ix.netcom.com
> "tomanepb" <tomanepb@gmail.com> wrote in message
> news:1175599226.892453.165080@p15g2000hsd.googlegroups.com...
> Hi
> I'm setting up a batch routine and, I need to pass data between two
> consecutive programs.
> How can I do it?
> In CICS with the "commareas" it's easy but, in batch I just coudn't
> find how to do it.
> Can anyone help me please?
>
> Thanks
>
> Ant=F3nio


Alistair

2007-04-03, 6:55 pm

On 3 Apr, 13:05, "tomanepb" <toman...@gmail.com> wrote:
> Yes, that is the usual way to do it.
> But you have to set up JCL in order to handle it.
> I was thinking of something like the CICS commareas or systems areas
> (CWA or TWA)
>
> Ant=F3nio
>
> William M. Klein escreveu:
>
>
>
porary[color=darkred]
>
>
>
>
> - Show quoted text -



Set up a 01 level data item in WORKING-STORAGE SECTION of the calling
program. Set up the same 01 level data item in the LINKAGE SECTION of
the called program. In the calling program insert a statement like

CALL called-program-name USING working-storage-item-data-name.

In the called program add USING linkage-section-data-item-name on the
PROCEDURE DIVISION statement.

Compile the called program and then compile link-editing the called
program into the calling program.

William M. Klein

2007-04-03, 9:55 pm

In a (IBM mainframe) batch system with multiple steps, there is NO "data areas"
that remain from step to step (or at lest none that are documented as available
for application programmers).

--
Bill Klein
wmklein <at> ix.netcom.com
"tomanepb" <tomanepb@gmail.com> wrote in message
news:1175601962.912047.144750@n59g2000hsh.googlegroups.com...
Yes, that is the usual way to do it.
But you have to set up JCL in order to handle it.
I was thinking of something like the CICS commareas or systems areas
(CWA or TWA)

António

William M. Klein escreveu:
> the usual way to do this (in an IBM mainframe environment) is via a temporary
> file; write it in the first program and read it in the next one.
>
> --
> Bill Klein
> wmklein <at> ix.netcom.com
> "tomanepb" <tomanepb@gmail.com> wrote in message
> news:1175599226.892453.165080@p15g2000hsd.googlegroups.com...
> Hi
> I'm setting up a batch routine and, I need to pass data between two
> consecutive programs.
> How can I do it?
> In CICS with the "commareas" it's easy but, in batch I just coudn't
> find how to do it.
> Can anyone help me please?
>
> Thanks
>
> António



tlmfru

2007-04-03, 9:55 pm

On the old Univac O/S's there was a "preamble'" or "prologue" area for just
this purpose: a data area assigned to the batch job that could be plugged or
queried. This was one of the "sensible" concepts from IBM O/S's that was
pirated; I'm surprised that it isn't available

PL


William M. Klein <wmklein@nospam.netcom.com> wrote in message
news:MBBQh.196630$Wg6.34569@fe07.news.easynews.com...
> In a (IBM mainframe) batch system with multiple steps, there is NO "data

areas"
> that remain from step to step (or at lest none that are documented as

available
> for application programmers).
>
> --
> Bill Klein




William M. Klein

2007-04-03, 9:55 pm

I think that VSE had (probably still has) such an area for cross-program
"communication" - but it hasn't ever been available under MVS or follow-on
products - at least that I know of.

--
Bill Klein
wmklein <at> ix.netcom.com
"tlmfru" <lacey@mts.net> wrote in message
news:bSDQh.16838$Ng1.9026@newsfe19.lga...
> On the old Univac O/S's there was a "preamble'" or "prologue" area for just
> this purpose: a data area assigned to the batch job that could be plugged or
> queried. This was one of the "sensible" concepts from IBM O/S's that was
> pirated; I'm surprised that it isn't available
>
> PL
>
>
> William M. Klein <wmklein@nospam.netcom.com> wrote in message
> news:MBBQh.196630$Wg6.34569@fe07.news.easynews.com...
> areas"
> available
>
>
>



Michael Mattias

2007-04-04, 7:55 am

Depending the the 'size' of the info to be passed and whether or not it has
to change between programs, JCL procedure parameters are available to all
programs in the job.









Alistair

2007-04-04, 7:55 am

On 3 Apr, 18:05, "Alistair" <alist...@ld50macca.demon.co.uk> wrote:
> On 3 Apr, 13:05, "tomanepb" <toman...@gmail.com> wrote:
>
>
>
>
>
>
>
>
emporary[color=darkred]
>
>
>
>
>
> Set up a 01 level data item in WORKING-STORAGE SECTION of the calling
> program. Set up the same 01 level data item in the LINKAGE SECTION of
> the called program. In the calling program insert a statement like
>
> CALL called-program-name USING working-storage-item-data-name.
>
> In the called program add USING linkage-section-data-item-name on the
> PROCEDURE DIVISION statement.
>
> Compile the called program and then compile link-editing the called
> program into the calling program.- Hide quoted text -
>
> - Show quoted text -


Damn, you are right. I made the mistake of reading the 'consecutive'
as one program calling another. However, as you point out, under IBM
DOS/VSE there was a program communication area. At one site I knew it
as CROSSCOM but that may have been a site specific name.

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com