Together with a colleague, I've been able to narrow down the cause of this problem. It seems to occur when a unicode symbol is on the border of a table cell. In the following example, the dagger symbol is not printed for cell widths 1.0 and 1.1 cm.
/*
Output created using ODS PDF produced errors when opened in Acrobat Reader
This problem appears to be due to a unicode symbol being on the border
of a table cell. The program below creates tables with different
cell widths. Errors occur at 1.0 and 1.1 cm
*/
%let _progdir=; /* Fill in the pathname to this program */
%let _progname=Test_dagger;
options nodate nonumber nocenter;
ods escapechar='^';
%put &=sysvlong4;
%put &=sysencoding;
data test;
length dagger $100;
dagger='Test (*ESC*){unicode 2020}';
run;
*-- create a PDF with a double dagger a sevaral cell widths;
%macro test (width /* width in cm */ );
ods _all_ close;
ods pdf file="&_progdir.\&_progname.&width..pdf" style=Journal;
title2 h=8pt 'Table 1 Descriptive statistics comparing history, body composition, ' 'clinical outcomes and dietary outcomes, by treatment group (ITT)';
title3 "Cellwidth = &width. cm";
footnote1 h=8pt '^{unicode 2020} P-value based on a two-sample t-test';
footnote2 h=8pt '^{unicode 2021} P-value based on a Mann-Whitney test';
footnote3 h=8pt '* P-value based on a Fisher''s exact test';
proc report data = test;
column dagger;
define dagger / style = [cellwidth = &width. cm];
run;
ods _all_ close;
%mend;
%test (0.900);
%test (0.950);
%test (0.990);
%test (1.000);
%test (1.100);
%test (1.200);
Under certain circumstances, the PDF shows an error message when opened in Acrobat Reader. If the program was run in an UTF-8 session in batch mode using the company autoexec.sas, then the PDF produced an error message. But if I copied the system options, etc. to the program and ran it without the autoexec.sas, the PDF could be opened normally, although the dagger symbols are not present at widths 1.0 and 1.1cm. No errors either in the PDF file if a Wlatin1 session was used, although the original problem did occur in a Wlatin1 session.
I'm using SAS 9.4M3 with Enterprise Guide 7.13. Batch mode is run using a VBScript. I've submitted this problem to SAS Netherlands as a problem of disappearing symbols, where it can also happen that a PDF file produces an error message
... View more