View previous topic :: View next topic
|
Author |
Message |
Ramsee
New User
Joined: 06 Jan 2011 Posts: 53 Location: Chennai
|
|
|
|
Hi All,
I am facing an issue while calling the PKUNZIP via EZT(Easytrieve) Pgm.
Following code was developed by me:
Code: |
PARM ABEXIT SNAP +
LINK (EZTUNPGM R)
*
FILE DSNIN
FLI-REC 1 80 A
FLI-REC-TYP 1 1 A
FLI-DSN 1 17 A
FLI-DSN-PFX 1 4 A
FLI-TRANS-ID 3 8 A
*
FILE DSNDTL
DSN-REC 1 80 A
DSN-REC-LEN 1 4 A
DSN-BLK-SZE 10 5 A
DSN-FLE-FMT 20 2 A
*
FILE FILEDSNS
FDSN-DATASET-ZIP 1 20 A
FDSN-DATASET-UNZIP 22 20 A
FDSN-DATASET-UNZIP-PFX 22 5 A
FDSN-DATASET-UNZIP-SLJD 27 8 A
FDSN-TRANSMIT-ID 45 8 A
WORKING STORAGE
WA-DSN W 17 A
WA-DSN-PFX WA-DSN 10 A
WA-DSN-JDTE WA-DSN +10 3 A
WA-DSN-SLJD WA-DSN +5 8 A
WA-DSN-SFX WA-DSN +13 4 A VALUE '.ZIP'
WA-UNZIP-PARM W 224 A
WA-UZP-LENGTH WA-UNZIP-PARM 2 B VALUE 221
WA-UZP-FLD1 WA-UNZIP-PARM +2 6 A VALUE '-ECHO '
WA-UZP-FLD2 WA-UNZIP-PARM +8 9 A VALUE '-ARCHIVE('
WA-UZP-ADSN WA-UNZIP-PARM +17 17 A
WA-UZP-ADSN-END WA-UNZIP-PARM +34 2 A VALUE ') '
WA-UZP-FLD4 WA-UNZIP-PARM +36 14 A VALUE '-OUTVOL(WORK) '
WA-UZP-FLD5 WA-UNZIP-PARM +50 19 A +
VALUE '-PASSWORD(PICKLES) '
WA-UZP-FLD6 WA-UNZIP-PARM +69 11 A +
VALUE '-OUTBLKSIZ('
WA-UZP-BSZE WA-UNZIP-PARM +80 5 A
WA-UZP-BSZE-END WA-UNZIP-PARM +85 2 A VALUE ') '
WA-UZP-FLD7 WA-UNZIP-PARM +87 8 A VALUE '-OUTLRL('
WA-UZP-LREC WA-UNZIP-PARM +95 4 A
WA-UZP-LREC-END WA-UNZIP-PARM +99 2 A VALUE ') '
WA-UZP-FLD8 WA-UNZIP-PARM +101 9 A VALUE '-OUTTYPE('
WA-UZP-FFMT WA-UNZIP-PARM +110 2 A
WA-UZP-FFMT-END WA-UNZIP-PARM +112 2 A VALUE ') '
WA-UZP-FLD9 WA-UNZIP-PARM +114 25 A +
VALUE '-OUTFILE_SPACE_TYPE(CYL) '
WA-UZP-FLD10 WA-UNZIP-PARM +139 28 A +
VALUE '-OUTFILE_SPACE_PRIMARY(900) '
WA-UZP-FLD11 WA-UNZIP-PARM +167 30 A +
VALUE '-OUTFILE_SPACE_SECONDARY(100) '
WA-UZP-FLD12 WA-UNZIP-PARM +197 11 A VALUE '-OVERWRITE '
WA-UZP-FLD13 WA-UNZIP-PARM +208 16 A +
VALUE '-HLQ(/USER.) '
*
* WORKING STORAGE
WA-TRANS-ID W 8 A
*
JOB INPUT (NULL)
*
GET DSNIN
GET DSNDTL
*
IF EOF DSNIN
STOP
END-IF
IF EOF DSNDTL
STOP
END-IF
*
IF FLI-REC-TYP = 'T'
WA-TRANS-ID = FLI-TRANS-ID
GOTO JOB
END-IF
*
WA-DSN = FLI-DSN
WA-UZP-ADSN = WA-DSN
WA-UZP-LREC = DSN-REC-LEN
WA-UZP-BSZE = DSN-BLK-SZE
WA-UZP-FFMT = DSN-FLE-FMT
CALL PKUNZIP USING WA-UNZIP-PARM
FDSN-DATASET-ZIP = WA-DSN
FDSN-DATASET-UNZIP-PFX = 'USER.'
FDSN-DATASET-UNZIP-SLJD = WA-DSN-SLJD
FDSN-TRANSMIT-ID = WA-TRANS-ID
PUT FILEDSNS
|
Please find the attached SYSPRINT log for the PGM.
I have framed the PARM as required by the PKUNZIP Utility but still there are some input which is missed by me.
Kindly help me to solve the issue. |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
Try adding:
To your PARM.
If that does not work, contact CA Support. I doubt many people reading here have called PKUNZIP from Easytrieve Plus. |
|
Back to top |
|
|
Ramsee
New User
Joined: 06 Jan 2011 Posts: 53 Location: Chennai
|
|
|
|
Hi Bill,
I had no LUCK in executing the EZT PGM with ENVIRONMENT(COBOL), probably i will get in touch with CA Support about this issue.
Thanks for your kind reply too. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Have you successfully called pkunzip from a COBOL program? |
|
Back to top |
|
|
Ramsee
New User
Joined: 06 Jan 2011 Posts: 53 Location: Chennai
|
|
|
|
Thanks to everyone for your valuable time to help me out with the issue.
Now i was able to run the EZT pgm by calling the Utility PKUNZIP, i did the following things,
1.Included
PARM ABEXIT SNAP +
LINK (PGMNAME R)
2.Compiled this EZT pgm via ENDEVOR and with the latest LOADMODULE i was able to execute successfully.
3.IEWL (Link edit )was done by the ENDEVOR with the EZT pgm and PKUNZIP Utility.
My learning:
Previously i called EXTPA00 to run the program(entire code was given in the SYSIN), Here PKUNZIP and EZT pgm link was not proper.
Kindly help me whether my learning was correct though i was able to run the execute the pgm successfully.
Once again Thanks a ton for the time and help!! |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
I'm not convinced that you tried this.
Code: |
PARM ABEXIT SNAP +
ENVIRONMENT ( COBOL )
|
Easytrieve Plus only does *dynmic* CALLs*. You can linkedit as much as you like, it is not going to affect the outcome.
Easytrieve Plus does its own linkediting (I think it calls the linkeditor to do it).
If you linkeditt a loadmodule which does dynamic CALLs and has already been linkedited, it doesn't do any harm, but it doesn't affect the outcome.
I have never found a difference in operation between execution of a compiled Easytrieve Plus program and execution of EZTPA00 with the same source. Why? Because they are identical procesesss. It is just that with EZTPA00 *running* the source the assembler code is generated, linkedited (for the run) and thrown away.
In the original information you provided, it looked like some of the compiler work-area was being included as part of your parameter to PKZIP. In the catalogued version of the program, that work-area will not be there. The storage looked at by PKZIP msy be something that PKZIP ignores (space, binary zero, non-display, who knows?) But I'd not like to count on it being OK every time.
I would not run that with Production data until I'd fixed it, or Pansop..., sorry, CA told me it was OK.
Try the compile-and-go again with the ENVIRONMENT on it.
As Dick has suggested, try to call PKZIP dynamically from a COBOL program. If it works from a COBOL program it will work from Easytrieve Plus.
If you can't get compile-and-run and compile-catalog-and-run-later to give you the same results, pass it over the CA Support. |
|
Back to top |
|
|
|