I tried to create a pdf file from mainframe SAS 8.2, and then ftp the binary file to PC. However, it does not print blank lines. Can anyone tell me how to fix this?
Below is my mainframe program for testing:
OPTIONS NODATE NONUMBER;
DEFINE STYLE STYLES.TEST;
STYLE BATCH FROM OUTPUT /
ODS LISTING CLOSE;
ODS PDF FILE=OUTF STYLE=STYLES.TEST NOTOC;
TITLE ' ';
INPUT @01 CC $CHAR1.
@02 TXT $CHAR79.
IF CC = '1' THEN PUT _PAGE_;
PUT @10 TXT $CHAR79.;
1THIS IS LINE 1
THIS IS LINE 3
THIS IS LINE 4
1THIS IS PAGE 2 LINE 1
THIS IS PAGE 2 LINE 3
THIS IS PAGE 2 LINE 4
ODS _ALL_ CLOSE;
here is my log under windows 9.1.3 and the result is correct
blank second line are present on both pages
so i have no idea why you have problem
3952 OPTIONS ORIENTATION=LANDSCAPE;
3953 OPTIONS PAPERSIZE=A4;
3954 OPTIONS LS=110;
3955 OPTIONS NOCENTER;
3956 OPTIONS NODATE NONUMBER;
3958 PROC TEMPLATE;
3959 DEFINE STYLE warren;
3961 STYLE BATCH FROM OUTPUT /
NOTE: STYLE 'Warren' has been saved to: SASUSER.TEMPLAT
NOTE: PROCEDURE TEMPLATE used (Total process time):
real time 0.65 seconds
cpu time 0.03 seconds
3967 ODS LISTING CLOSE;
3968 ODS PDF FILE="d:\temp\warren.pdf" STYLE=warren NOTOC;
NOTE: Writing ODS PDF output to DISK destination "d:\temp\warren.pdf", printer "PDF".
3969 TITLE ' ';
3970 DATA _NULL_;
3971 INPUT @01 CC $CHAR1.
3972 @02 TXT $CHAR79.
3974 FILE PRINT;
3975 IF CC = '1' THEN PUT _PAGE_;
3976 PUT @10 TXT $CHAR79.;
NOTE: Non-portable document will be produced. The current settings of FORMCHAR use non-standard line-drawing
characters and the resultant output file will not render correctly unless all readers of the document
have the SAS Monospace font installed. To make your document portable, issue the following command:
NOTE: 8 lines were written to file PRINT.
NOTE: DATA statement used (Total process time):
real time 0.78 seconds
cpu time 0.00 seconds
3988 ODS pdf CLOSE;
NOTE: ODS PDF printed 2 pages to d:\temp\warren.pdf.
3989 ODS LISTING;
I don't have problem creating pdf blank lines using PC SAS, but I have problem creating pdf blank lines using mainframe and then ftp download the binary pdf file to PC. The downloaded pdf file does not have blank lines.
I'm really not sure. I -think- I see what you're trying to do, but it doesn't make sense to me to try to "read and duplicate" carriage control characters, which is what it looks like you're doing. I believe that with "batch" output, such as what you're doing, that the OUTPUT element may still be affected by BODY or CONTAINER.
But, even so, if ASIS=ON did not have a visible effect when you used it in the BATCH element, then I think your best bet for help is to contact Tech Support. I think, but don't know for sure that the output and kind of blank lines that you are writing with your code may be suppressed in 1 of 3 places (or more):
1) suppressed as SAS writes the file to PDF on your mainframe system
2) suppressed as the file is FTP'd in binary mode
3) suppressed as the newly FTP'd file is opened by Acrobat on the other platform
It probably doesn't do any good for anyone to test this kind of program on the PC because with FTP being involved, it's very hard to know how or where the blank lines are being written out. For example, in a totally unrelated instance, there were ways of generating output using SAS/IntrNet that would generate blank lines when the output was written to the LISTING window, but would suppress the blank lines when ODS HTML was used.
I think that Tech Support should get consulted on this one.
How up to date is your maintenance on V8.2? The original method of generating PDF didn't use compression, etc, but that seems to have been fixed with hotfix 82BB97. We are running with hotfix bundle 82BX09.