Base SAS/r Software PART I SAS Language *** General *** 1 provide the ability to use -L, -C, and -R with formats in a FORMAT statement to left-align, center, and right-align 2 provide a system option to control the number of decimal places that are printed for any output 3 provide a functionality similar to AUTOEXEC that allows a set of code to be executed at termination of a SAS session 4 provide the ability to set different LINESIZE and PAGESIZE values for the SAS log and SAS listing files 5 add an option to clear all titles after the first page of output 6 add the ability to independently center, right-justify, or left-justify a TITLE and a FOOTNOTE statement 7 add #BYVAL functionality to the FOOTNOTE statement 8 provide a way to recover logical deletions 9 provide a method to create temporary TITLE statements and an option to use temporary TITLEs for the duration of a single PROC or DATA step without replacing global TITLEs 10 provide the ability to specify referential integrity constraints and primary and foreign keys on the same variable in two tables when there is a one-to-one relationship between the tables 11 provide a special missing value that sorts "high" to complement existing special missing values that sort "low" 12 provide a "duration" variable type that contains beginning and ending dates, times, or datetimes *** DATA Step *** 13 provide the number of records read or written to external file(s) as user- accessible information 14 provide the ability to use the special list variables _NUMERIC_ and _CHARACTER_ in the PUT statement 15 provide a data set option to keep or move labels from the input data set to the output data set 16 provide use of ranges within the IN operator so that each value does not have to be specified individually; for example: if x in(10-25) would include values of 10 through 25 17 allow more than one character to be assigned to the MISSING= option 18 generate a warning or error message when a numeric value reaches the upper limit of the exponentiation range of the operating system 19 allow integrity constraints for creation of SAS data sets such as an OUT= on a PROC or when reading raw data *** Functions *** 20 add an option to the ROUND function to round down, round up, or truncate values of the first argument 21 create a new function similar to INTNX that would return an exact increment 22 add the last modified date to the output from the FINFO function 23 provide bond yield and price functions with several day/count basis choices, including 30/360, actual/actual, actual/360, and actual/365 *** Informats and Formats *** 24 provide an informat and format to read or write zoned decimal values that are produced on ASCII systems by other software vendors such as Micro Focus COBOL 25 provide a format to write time in military form with leading zeros for times before 10:00 a.m. 26 provide a ZIPCODE format to display the 10-character zip code, including the dash 27 provide formats such as WORDFw. and WORDSw. to convert numeric values to words for languages other than English 28 add a format and an informat for latitude and longitude data in the form of dddmmsN where ddd stands for degrees (positive or negative), mm is minutes, and sN is seconds in BESTw. format 29 provide a WORDDATEw. informat to read date values in the form of July 19, 2000 30 provide a format to display dates in the form of year/quarter, such as 2000/Q1 31 provide an informat and a format to read and write date values in the form of yymmmdd or yyyymmmdd, with the option of including separators 32 enhance the DATEw. format to allow the specification of a separator character 33 provide a format for euro values to be represented in European decimal notation such as the COMMAXw.d format, except for the EUROTO format 34 provide a format for datetime values where the date portion is written in the form of mmddyy or mmddyyyy *** WHERE Statement *** 35 add an option to control whether a NOTE appears in the SAS log when there is a WHERE statement *** Display Manager System(Including Text Editor) *** 36 add a warning dialog box to prompt whether to replace, append, or cancel every time the FILE==>SAVE menu item is chosen to save a file in the Program Editor 37 provide a utility for searching catalog entries using keywords 38 allow a file that is saved by using the FILE command on the command line of the Program Editor window to appear in the list of recently used files 39 extend the 256 single-line character limit in the Program Editor to allow raw text file editing using the Text Editor commands 40 provide a menu item to clear out all memory and the SAS log 41 provide an "ALTSAVE" option to automatically save the contents of the Editor, Log, and Output windows to a specified location 42 provide an option to disable the Save command, allowing only Save As to be used, to eliminate the possibility of inadvertently overwriting an existing file 43 provide the ability to hide lines of code so that commands and line commands will not apply to them 44 add a SUBMITBLOCK command to submit all code from the current cursor position up to the start of the next PROC or DATA step 45 add special color coding for DO and END statements in the Enhanced Editor window 46 add special color coding for macro variable references in the Enhanced Editor window 47 add a column ruler to the Enhanced Editor window, similar to the COLS line command in the Program Editor 48 provide a method to override the default action of bringing the Output window to the top of all SAS windows, to allow output such as HTML to bring the HTML window to the top 49 provide the ability to print text with color attributes in color when the text is sent to a color printing device 50 increase the number of characters saved in the DMS command PREVCMD from 128 characters to 32,767 characters 51 add the ability to find a variable name from among many while in the VAR window of a data set 52 allow editing of a program while SAS does its processing 53 provide the ability to run a job against a data set being viewed in an Explorer window 54 allow the ability to search for any option in the SAS System Options window instead of having to drill down through multiple folders to find what you are looking for 55 provide the ability to the Keys File so that users can mimic their favorite Text Editor such as Notepad or a UNIX Editor (Linux System VI) 56 increase the number of redefinable keys 57 allow the UNIX commands in the Keys window to be longer than on the PC 58 provide the ability in the Enhanced Editor window to use a different programming scheme 59 allow the ability in the Enhanced Editor window to highlight lines of code, click a "disable" button, and comment out the code 60 provide the ability to COPY and PASTE the column names from VAR to a clipboard under View Columns 61 provide the ability to resize the File Open window 62 add a way to print the Enhanced Editor Key's list 63 change ERROR: Limit set by ERRORS= option reached to NOTE: Limit set by ERRORS= option reached PART II Base SAS Procedures *** All Procedures *** 64 provide an option to produce a header line when the input data set contains no observations 65 provide an option to allow the page number to be reset when a BY value changes 66 provide the ability to label each page of output from an individual procedure as "Page x of n" 67 provide an option such as USEFMT for all procedures to permanently associate variable formats to the output data set when using a FORMAT statement in a procedure *** PROC COMPARE *** 68 provide an option to include a variable in the output data set that lists variables that are found to be unequal *** PROC CORR *** 69 provide an option to output correlations and p-values in a list structure rather than in a matrix structure *** PROC FORMAT *** 70 enhance the FMTLIB option so that information on all format libraries listed in the FMTSEARCH= option will be printed 71 provide JUSTIFY and UPCASE functionality for the VALUE statement to avoid having to alter the stored values using the DATA step 72 provide a front end to simplify the creation and editing of user-written formats 73 provide the ability to determine if a format is located in the libraries that are referenced by the FMTSEARCH= option, the LIBRARY libref, or both *** PROC FREQ *** 74 add an option to the TABLES statement to output the number of unique values for a variable 75 implement the PRELOADFMT option to preload all formats for the variables in the TABLES statement, as in PROC MEANS *** PROC MEANS/PROC SUMMARY *** 76 provide an option to specify a width for the column that contains the variable labels so that the labels can wrap within that width 77 provide the ability to include a warning message in the log that indicates how many observations were dropped due to missing values when the MISSING option is not used *** PROC PMENU *** 78 add the ability to use icons *** PROC PRINT *** 79 provide an option to force a page eject if all observations in the current BY group will not fit on the remainder of the page 80 provide an option to insert a blank line after every nth line 81 provide an option to exclude variables from the BY line if they are listed both in the BY statement and in the ID statement 82 provide the ability to display the label of the BY variable on the summary line 83 allow for a default split character for labels *** PROC REPORT *** 84 provide the ability to suppress summary lines when there is only one observation for a group 85 add the ability to dynamically align text from LINE statements with report columns 86 provide the ability to group by computed columns 87 provide the ability to print the word CONTINUED when a report spans pages, and to print END on the last page 88 provide the ability to define labels or column names instead of column numbers in an output data set that was created using an ACROSS variable 89 provide the ability to use the break options SKIP, OL, UL, DUL, and DOL when requesting ODS output 90 provide the ability to execute conditional LINE statements in a compute block instead of the LINE statement always being printed 91 provide a method to have an ORDER/GROUP variable value populate every row when a DISPLAY is to the left in the COLUMN statement, as in previous releases 92 provide the ability to print output from the REPORT window in a left-to-right and top-to-bottom method in the same way that output from the OUTPUT window is printed 93 allow a spanned header over more than one ID variable 94 allow the assignment of values to specific columns when using LINE statements 95 change the ODS table grid so that the ORDER/GROUP variables are in one box instead of blank rows with horizontal lines per row, something similar to PROC TABULATE output in ODS 96 provide the ability to autopopulate computed variables under ACROSS, based on the number of ACROSS values so that the exact number of columns does not need to be determined prior to PROC REPORT 97 allow placement control of values in the LINE statement when using PROC REPORT and ODS output destinations 98 provide an option to keep groupings from splitting across pages *** PROC SORT *** 99 add an option to output observations that are deleted by the NODUP or NODUPKEY option to an alternate data set 100 provide the ability to sort by formatted values 101 create an option that would cause NOTSORTED "BY" variables not to be sorted when only the second variable needs to be sorted *** PROC SQL *** 102 allow the automatic conversion of variables from character to numeric when performing arithmetic expressions in a query 103 allow calculated columns to inherit the default format of the column that is used in the calculation (for one-column calculations) 104 add a variable to the DICTIONARY.TABLES dictionary table that gives the size of the data set in bytes or megabtyes 105 add SORTEDBY information to DICTIONARY.TABLES 106 provide a MEDIAN summary function 107 trim the trailing blanks in the macro variable that were created by the INTO :macvar syntax 108 allow PROC SQL to create multiple output tables from a single query 109 add an option to cause SAS to enter 'syntax check mode' when an error occurs in SQL Pass-Thru 110 add a method for specifying a range of variables in the select clause *** PROC TABULATE *** 111 add a SPLIT= option 112 provide the ability for column widths to be independent of the format widths with a WIDTH= option 113 provide the ability to automatically scale the column width to the length of the data values *** PROC TRANSPOSE *** 114 add an option such as EACHROW to transpose each row of data into one COL1 variable, without requiring a UNIQUE BY variable PART III SAS Macro Facility 115 add line numbers to MPRINT output so that line numbers are continuous in the SAS log 116 add a SOURCE option to use with the STORE option to cause the source code to be saved to the same catalog as the compiled macro 117 allow the IN operator to be used in a macro 118 issue a note confirming the successful compilation of a macro 119 enhance the MPRINT output to show the nesting of macros, such as MPRINT(C.B.A) sourceline; 120 allow %DO loops to iterate using a list of constants such as %DO i=a,b,c; 121 provide a %abort statement that will abort SAS within a macro 122 provide the ability to globalize all macro variables without having to specify each one individually PART IV Output Delivery System (ODS) 123 add a RENAME= or REORDER option to the ODS OUTPUT statement so that the ODS output data set can be reordered 124 add the ability to use style sheets with the RTF destination 125 add the ability to generate a table of contents with the RTF destination 126 provide the ability to control the Results Viewer programmatically 127 enhance ODS with Remote Library Services so that PROC DOWNLOAD is not needed to create a true HTML file on the local session 128 add a Base.Freq.Crosstabs table so that an output data set can be created with all variables invloved in the crosstab from PROC FREQ 129 provide the ability to remove the "=" within the BY values in the table of contents Graphics Display PART V SAS/GRAPH Software *** New Procedures *** 130 provide a procedure to generate a Venn diagram *** Global Statements(AXIS, LEGEND, SYMBOL, etc.) *** 131 provide the ability to specify only the start point, the end point, or the BY increment when specifying the order in an AXIS statement 132 provide the ability to order axis values that are based on the order in which the data is read 133 provide an option to allow the dynamic specification of uneven intervals between tick marks on a sequential axis range 134 provide the ability to control the height of the symbols for each entry in the LEGEND and have the default symbol height reflect the symbol size from the plotted data points defined in the SYMBOL statement *** PROC GCHART *** 135 implement a UNIFORM option to uniformly scale axes across BY groups 136 provide an option to allow the user to specify the order of subgroup bars 137 provide an option to position axes on both sides of the chart *** PROC GPLOT *** 138 provide the ability to create horizontal box plots *** PROC G3D *** 139 provide the ability in the AXIS statement to specify an axis range for the X/Y/Z axis of a G3D surface or scatter plot Applications Development PART VI SAS/FSP Software *** PROC FSVIEW *** 140 provide the ability to cut and paste from the FSVIEW window PART VII SAS Component Language 141 provide the ability to maintain the sort order unless requested to be changed PART VIII AppDev Studio 142 provide the ability to create a chart in the same section of a webEIS document that is independent of the MultidimensionalTableView Row or Column Axis specifications 143 provide the ability to customize the text of the Overlay label in the webAF Chart component 144 provide the ability to specify formats for a column via the DataSetInterface 145 provide a better means for controlling component sizing within webEIS when displayed within a browser 146 create a webAF component that will allow the user to locate the defined ACL groups and respective users PART IX SAS/MDDB Server 147 enhance the Open OLAP Server to allow a given category variable to exist in more than one display dimension Statistics, Data Analysis, and Modeling PART X SAS/STAT Software *** All Procedures *** 148 calculate confidence intervals for all appropriate parameters 149 provide more extensive nonparametric statistics and tests, including multiple comparisons 150 provide power analysis and sample-size determination in applicable hypothesis tests 151 provide one-tailed tests where appropriate *** New Procedures *** 152 provide a procedure for multivariate outlier detection that is based on robust methods *** PROC BOXPLOT *** 153 add options to clip extreme outliers so that box plots are more readable when outliers are present *** PROC GLM/PROC ANOVA *** 154 provide multiple comparisons using the SLICE= option *** PROC LIFEREG *** 155 add the ability to fit frailty models (random effects models) *** PROC LIFETEST *** 156 add the ability to produce cumulative incidence plots 157 include additional tests of homogeneity of the survival curves across strata 158 add the ability to perform pairwise and multiple comparisons of homogeneity among strata *** PROC PHREG *** 159 add a WEIGHT statement for incorporating case weights 160 add the ability to compute survival estimates for models that include time-dependent covariates 161 add the ability to model "transient effects," time-dependent covariates that cease to exist as time progresses 162 add an option to the TEST statement to perform a likelihood ratio test 163 add the ability to produce cumulative incidence plots *** PROC REG *** 164 provide a test for lack of fit PART XI SAS/ETS Software *** New Procedures *** 165 provide a Maximum Entropy procedure 166 provide a general modeling procedure for fitting stochastic processes with Markov chain models *** Time Series Forecasting System *** 167 provide the ability to fit general ARIMA models, including general, factored, and subset models 168 provide a means to interrupt the automatic model-fitting process 169 provide an option for restricting the range of possible forecast values for variables with a known maximum or minimum value using series transformation heuristics 170 attempt estimation by using methods such as CLS whenever maximum likelihood estimation fails for ARIMA models 171 create cross-correlation plots to improve identification of transfer function models *** PROC ARIMA *** 172 allow restrictions to be imposed on the model parameters 173 support an option to compute and output additional statistics of fit, such as MAPE R-square, and Theil statistics 174 support a TREND= option in the ESTIMATE statement to automatically build and include a time-trend variable in the model *** PROC AUTOREG *** 175 provide an INEST= option to name an input data set that provides starting values for any or all parameters in a model 176 support the specification of the GARCH or autoregressive parameters in the RESTRICT and TEST statements 177 provide a BOUNDS statement to impose inequality constraints on parameter estimates *** PROC EXPAND *** 178 provide an option to allow processing when a BY group has only a single observation *** PROC MODEL *** 179 support BY-group processing with the PARMSDATA= and ESTDATA= data sets so that different starting values can be specified for each BY group *** PROC SPECTRA *** 180 provide the ability to compute p-values or critical values for the test statistics that are computed by the WHITETEST option *** PROC SYSLIN *** 181 compute the value of the log-likelihood function and associated statistics of fit, including AIC and SBC *** PROC TSCSREG *** 182 provide the ability to identify fixed- effects model parameters by the actual levels of the time series and cross-section ID variables 183 provide tests for autocorrelation 184 provide a RESTRICT statement 185 provide an autocorrelation model for unbalanced panel data 186 provide estimation of dynamic panel data models PART XII SAS/OR Software *** New Procedures *** 187 provide an Internet-based client/server application for scheduling and project management PART XIII SAS/QC Software *** New Procedures *** 188 provide a procedure for analysis of means *** PROC CAPABILITY *** 189 provide overlaid and comparative versions of all graphical displays 190 allow multiple distributions from the same family to be plotted on one histogram PART XIV SAS/IML Software 191 support sparse matrices 192 implement a method to name and access matrices x1, x2, x3, and so forth, without having to use CALL EXECUTE 193 add a function to create an upper or lower triangular matrix directly from another matrix or vector 194 implement BY-group processing 195 support multidimensional matrices (beyond two dimensions) 196 allow modules or functions to call themselves recursively 197 provide more flexibility in formatting matrices in PRINT and PUT statements 198 provide a function to simulate multivariate GARCH time series data PART XV SAS/INSIGHT Software 199 provide the ability to record and replay all user actions 200 provide the ability to add legends to charts and plots 201 provide statistics and plots for multivariate outlier detection 202 provide the ability to freeze the work PART XVI SAS/LAB Software 203 add nonparametric statistics Data Management and Connectivity PART XVII Data File Management *** General *** 204 provide the ability to establish a secondary SASWORK area to allow the program to continue processing when the current WORK location runs out of space 205 provide the ability to append in PROC EXPORT 206 support overlapping keys functionality for primary and foreign key referential integrity constraints *** Import/Export Wizard *** 207 add an option for specifying that all fields are numeric or character PART XVIII Remote Library Services 208 provide the ability to handle short numerics across cross-architecture host types PART XIX SAS/SHARE Software *** General *** 209 provide a Perl DBI interface to SQL queries against SAS data via a multiuser server *** PROC SERVER *** 210 add the ability to disconnect a user from a SAS server after a specified period of inactivity PART XX SAS/ACCESS Software *** All Interfaces *** 211 support "commit and roll back" transaction- level processing verbs within DATA step MODIFY processing when used against relational databases such as ORACLE or SYBASE 212 provide the ability to display all tables for all the schemas in the Explorer window when using a SAS/ACCESS LIBNAME engine, as the SQL Query Window does 213 create indexes and constraints on the DBMS table that is created from a SAS data set that contains indexes and constraints 214 provide an option to show only tables in the Explorer window (currently both tables and queries are shown) 215 create an option that would return missing values in the DBMS in the same order as missing values in SAS *** Interface to ADABAS *** 216 enhance the ADABAS engine to be able to read a record directly by the ISN *** Interface to PC File Formats *** 217 provide the ability to specify a worksheet name when creating Excel files from SAS data sets 218 display a warning message when there is data in an Excel field, but SAS reads it as missing data 219 add a SHEET= statement to the EXPORT procedure 220 allow labels (instead of names) of the variables in the file created by a DIF procedure on UNIX 221 allow DDE and XLS files to be read with the SAS/ACCESS Interface to PC File Formats on UNIX PART XXI SPD Server 222 implement SAS Version 8 integrity constraints for the SPD Server 223 add a method of interrupting a long-running query PART XXII SAS/Warehouse Administrator 224 allow the ability to change the order of columns displayed on the columns tab of mapping properties 225 provide the ability to use the same table as both input and output for a single process 226 provide the ability to use the DB2 add-in tools to register and load DB2 tables on UNIX platforms PART XXIII SAS/IntrNet Software *** Application Dispatcher *** 227 provide an option for the Application Load Manager to display a list of requests that are awaiting execution 228 provide the ability for administrators to specify site-specific BROKER error messages 229 provide a secure and effective way to pass authentication credentials so that they are available for each request, especially for connecting or reconnecting to a DBMS or SAS/SHARE server 230 provide the ability when using the AUTH=HOST option to permit client users to execute SAS programs only through the Application Server, and deny read access to external applications 231 provide the ability to save LIBNAME definitions with user-specific parameters for use across requests within a session System Specifics PART XXIV SAS System for Mainframes *** SAS System under OS/390 *** 232 provide a check to see if a file is already allocated to a libref before allowing a FILENAME statement, FILE command, or anything else to reference it as an external flat file 233 add a REPLYTO= option to the EMAIL access method to allow a reply to be sent to someone other than the person running the job 234 add the ability within the URL access method to access and read Secure Sockets Layer (SSL) Web pages into SAS data sets *** PROC PDSCOPY *** 235 allow the INDD parameter to process a fileref for a list of concatenated files in a FILENAME statement *** PROC SOURCE *** 236 provide the ability to read and write records that are longer than 80 bytes *** PROC TAPELABEL *** 237 handle an A13 abend in a way that is similar to handling an 813-04 abend, to enable SAS to recover PART XXV IT Service Vision Software 238 provide the ability to create values at the summary level similar to the MINID and MAXID statistics in PROC MEANS PART XXVI SAS System under OpenVMS *** General *** 239 provide transparent access of catalogs and catalog entries between OpenVMS for VAX and Alpha host systems PART XXVII SAS System for UNIX *** General *** 240 add a system option to limit the amount of workspace that is used by a SAS process 241 add an option to allow a local SAS help system (that does not require a Web browser) to be used 242 add the ability to save the size attribute of the Open window 243 add a -WORKPERM option to specify the permissions to assign to the SASWORK library 244 provide a silent install 245 port SAS to Linux on the Itanium Platform Family 246 port SAS to Linux on the mainframe PART XXVIII SAS System for PCs *** General *** 247 implement an option to specify the directory to which all saved files should reside, regardless of where a file was last opened 248 add cut-and-paste capabilities on the command lines and in the FSEDIT window 249 allow the SAS System Viewer to display values using user-defined formats 250 provide an option to specify the line feed as the end of record marker for output files being ported to UNIX 251 add a push button control to the Find window to switch to the Replace window 252 add the ability to copy the list of column names of a SAS data set from the View Columns drop-down list in the SAS Explorer window 253 add a DM command to close the SAS Explorer window and a DM command to open the Explorer window in the left window pane 254 to allow the colors in the SAS log to print in color for printed output, and to retain color for the SAS log that is saved to a file