Hi..I am trying to genarate separate pdf files based on the Client_ID. The code does generate the results for the first Client_ID in the list but does not loop to continue with the remaining Client_ID's on the list. Am I missing something.....Any help or suggestions would greatly appreciated....Thanks. %MACRO DO_CLIENTS; %DO i=1 %TO %SYSFUNC(COUNTW(&WHENS)); %LET NEXT_CLIENT = %SCAN(&WHENS, &i); %LET NEXT_NOBS = %SCAN(&NEXT_NOBS, &i); %LET NEXT_FILENAME = %SCAN(&FILENAMELIST, &i); %LET NEXT_NAME = %SCAN(&NAMELIST, &i); %LET NEXT_FROMDATE3 = %SCAN(&FROMDATE2LIST, &i); %LET NEXT_TODATE3 = %SCAN(&TODATE2LIST, &i); %LET RUNDATE = &RUNDATE; DATA SALES; SET SUMMARYFINAL; IF CLIENT_ID = &NEXT_CLIENT; RUN; ODS _ALL_ CLOSE; ODS LISTING CLOSE; ODS NORESULTS; OPTIONS ORIENTATION=PORTRAIT CENTER NODATE NONUMBER NOBYLINE TOPMARGIN=".5IN" BOTTOMMARGIN=".5IN" LEFTMARGIN=".5IN" RIGHTMARGIN=".5IN"; %LET RSTR = %STR( ); %LET TSTR = %SYSFUNC(REPEAT(&RSTR,50)); ODS ESCAPECHAR='^'; ODS PDF FILE="%sysfunc(pathname(project))\&NEXT_FILENAME Report (&rundate).PDF" STYLE=JOURNAL NOTOC BOOKMARKGEN=NO BOOKMARKLIST=NONE; TITLE1 JUSTIFY=CENTER BOLD HEIGHT=12PT FONT="Arial" "Client Purchases History"; TITLE2 " "; TITLE3 JUSTIFY=LEFT HEIGHT=9PT FONT=Arial "Client Name: &NEXT_NAME" JUSTIFY=RIGHT "Report Date From: &NEXT_FROMDATE3"; TITLE4 JUSTIFY=LEFT HEIGHT=9PT FONT=Arial "CLIENT_ID #: &NEXT_CLIENT" JUSTIFY=RIGHT "Report Date End: &NEXT_TODATE3"; TITLE5 " "; TITLE6 "^{style[bordertopwidth=2px bordertopcolor=black] &tstr}"; DATA _NULL_; %IF CLIENT_ID = &NEXT_CLIENT AND &NEXT_NOBS = 0 %THEN %DO; FILE PRINT FLOWOVER N=PAGESIZE; %PUT "A query for the Purchases History for &NEXT_NAME with CLIENT_ID: &NEXT_CLIENT for the period &next_fromdate3 to &next_todate3 has revealed that no purchases has been made for this client during this time period."; %END; STOP; %IF CLIENT_ID = &NEXT_PATIENT AND &NEXT_NOBS > 0 %THEN; PROC REPORT DATA=SALES NOWD HEADLINE HEADSKIP MISSING ps=43 ls=108 STYLE(REPORT)={frame=box} STYLE(HEADER)={font_weight=bold background=lightgrey font_face=Arial font_size=8pt borderwidth=1px bordercolor=black just=CENTER} STYLE(COLUMN)={background=white font_face=Arial font_size=7pt borderwidth=1px bordercolor=black just=CENTER} STYLE(LINES)={JUST=C FONT_WEIGHT=BOLD FONT_SIZE=11PT}; COLUMN (SALE_DATE CLIENT_SURNAME CLIENT_GIVEN PRODUCT_N PROD_G QTY AMOUNT); DEFINE SALE_DATE / DISPLAY 'Sale Date'; DEFINE PRESCRIBER_SURNAME / DISPLAY 'Prescriber Surname'; DEFINE PRESCRIBER_GIVEN / DISPLAY 'Prescriber First Name'; DEFINE PRODUCT_N / DISPLAY 'Product Number' STYLE(COLUMN)={TAGATTR='00000000'}; DEFINE PROD_G / DISPLAY 'Product Name'; DEFINE QTY / DISPLAY 'Quantity'; DEFINE AMOUNT / DISPLAY 'Total Amount'; RUN; QUIT; %LET i = %EVAL(&i + 1); %END; %MEND; %DO_CLIENTS; ODS PDF CLOSE; ODS LISTING; ODS RESULTS;
... View more