Hi:
There is no ODS function equivalent to LINESLEFT (which is a DATA step and FILE PRINT option -- that only works in the LISTING destination). And, anyway, when you are using SAS procedures, you cannot really control the writing of output on a "line-by-line" basis -- think of the procedure as building an output report and then, while that output report is being "transmitted" to the destination, you cannot "interrupt" the transmission to check for something like LINESLEFT -- it's just not a concept that applies in this scenario.
Also, ODS is not responsible for RENDERING the output report -- if the destination is PDF, then a PDF viewer (like Acrobat Reader) is responsible for rendering the output report; if the destination is RTF, then a word processor (like Word) is responsible for rendering the output report; if the destination is HTML-based, then a browser (like IE, Safari or Firefox) is responsible for rendering the output report. Only the LISTING destination (or Output Window) is responsible for rendering tabular output reports in SAS. All other destinations use 3rd party applications for viewing or rendering. And, if you are using SAS Enterprise Guide and the SASReport XML destination, EG has a way to make the XML view-able inside EG.
In the DATA step, you control what's written with every PUT statement; but with the PROCEDURE step, the transmission of the output report is inside a "black box" -- which is why options like STARTPAGE and TEXT= are specified on ODS statements -- because they impact what happens between procedures. STARTPAGE removes the normal page break instructions at the beginning of a procedure and TEXT= inserts a text string either before or after a procedure's output. For example, if your PROC FREQ were to break -across- pages, the TEXT= string would only be placed BEFORE the procedure output -- one time; it would NOT repeat at the top of any subsequent pages of the PROC FREQ output.
A few other notes. I notice you are using a custom style template, STYLES.NEWPDF in your output creation. If you want to make the TEXT= strings look more like a title, you can add or use similar syntax inside your PROC TEMPLATE code:
[pre]
style usertext from usertext /
just=c
background=white
font_size=12pt
font_weight=bold
foreground=black;
end;
[/pre]
The USERTEXT style element is responsible for formatting the TEXT= strings.
Also, do remember that TITLE= is NOT a valid ODS PDF option.
cynthia