View previous topic :: View next topic
|
Author |
Message |
zanyzap4u
New User
Joined: 13 Dec 2008 Posts: 38 Location: Mexico City
|
|
|
|
i want to copy input from one ps to another ps.
i wrote a small code in c for copying records in output ps.
but i want to specify the output dataset name in compile JCL DD statment.
the program compilation is successful but the output is not getting copied in the output ps.
i am sending the code and compile jcl.
i wanted to knw if i am specifying the DD corectly
compile JCL :
Code: |
//BMXSRP05 JOB (DVLP,BMX),'BMX',USER=BMXSRP,CLASS=A,
// MSGCLASS=X,NOTIFY=BMXSRP
//*
//* COMPILE, BIND AND RUN
//*
//DOCLG EXEC CBCXCBG,
// INFILE='BMXSRP.CDDFIL.PGM(CPGM005)',
// CPARM='OPTFILE(DD:CCOPT)'
//DDNAM DD DSN=BMXSRP.PS.DYNAMIC,DISP=MOD
//COMPILE.CCOPT DD *
LSEARCH('BMXSRP.SCS.HEADER')
SEARCH('CEE.SCEEH.+','CBC.SCLBH.+')
/*
|
C CODE :
Code: |
#include <stdio.h>
#include <stdlib.h>
#define READMODE "rb,recfm=fb,lrecl=80,type=record"
#define WRITEMODE "wb,recfm=fb,lrecl=80,type=record"
#define INFILE1 "DD:DDNAM"
int main()
{
FILE *fp;
fp = fopen(INFILE1,WRITEMODE);
fputs("ritesh",fp);
fclose(fp);
return 0;
}
|
i am waiting for the reply. |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
My only question is why did you bother to write this when there are many utilities already in place to copy file to file ?
IEBGENER and SORT immediately spring to mind. |
|
Back to top |
|
|
zanyzap4u
New User
Joined: 13 Dec 2008 Posts: 38 Location: Mexico City
|
|
|
|
i knw about these programs.
but i want to copy the contents of ps using C prog. (using DD name in JCL).
if anyone has tried it out..kindly tell me the mistake i am doing in my program. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
C programs and MVS files coexist, sort of. You need to review the requirements carefully -- there are ways to do what you want but the manual needs to be referenced to ensure you do it correctly. For example, I thought fputs worked with null-terminated strings; just how do you get a null-terminated string from an input file record?
You need to open both files, read a record from the input file, and write to the output file, repeating until EOF -- which implies a loop is needed. Remember that files under Unix (and C) are not anything like MVS files. |
|
Back to top |
|
|
|