What's New in Base SAS 9.3 Procedures

Overview

The following procedures are new:
  • PROC GROOVY
  • PROC QDEVICE
The following Base SAS procedures have been enhanced:
PROC CIMPORT PROC PWENCODE
PROC CPORT PROC RANK
PROC FCMP PROC REGISTRY
PROC FORMAT PROC SCAPROC
PROC OPTIONS PROC SORT
PROC PRINT PROC REPORT
PROC PRINTTO PROC TABULATE

New Base SAS Procedures

The GROOVY Procedure

The GROOVY procedure can run Groovy statements that are written as part of your SAS code, and it can run statements that are in files that you specify with PROC GROOVY commands.

The QDEVICE Procedure

The QDEVICE procedure creates reports about graphics devices and universal printers that summarizes information, including color support, default output sizes, margin sizes, resolution, supported fonts, hardware symbols, hardware fill types, hardware line styles, and device options. Output from this procedure can be sent to the SAS log or to an output SAS data set.

Enhanced Base SAS Procedures

The CIMPORT Procedure

The following enhancements have been made to the CIMPORT procedure:
  • New option UPCASE is added to the CIMPORT procedure. This option is supported only for Double-Byte Character Sets (DBCS).
  • The CIMPORT SELECT and EXCLUDE statements will now support case sensitive names for files and catalogs in SAS/ACCESS engine libraries.
  • The CIMPORT procedure now supports SAS name literals that include embedded blanks.
  • When VALIDVARNAME=ANY or VALIDMEMNAME=EXTEND are specified, the data set names or member names used with the CIMPORT procedure can now be up to 32 bytes in length. Names and member names can also be mixed case.

The CPORT Procedure

The following enhancements have been made to the CPORT procedure:
  • The CPORT SELECT and EXCLUDE statements will now support case sensitive names for files and catalogs in SAS/ACCESS engine libraries.
  • The CPORT procedure now supports SAS name literals that include embedded blanks.
  • When VALIDVARNAME=ANY or VALIDMEMNAME=EXTEND are specified, the data set names or member names used with the CPORT procedure can now be up to 32 bytes in length. Names and member names can also be mixed case.

The FCMP Procedure

The following functions have been added to the FCMP procedure:
INVCDF
This function computes the quantile from any distribution for which you have defined a cumulative distribution function (CDF).
LIMMOMENT
This function computes the limited moment of any distribution for which you have defined a cumulative distribution function (CDF).

The FORMAT Procedure

The following enhancements have been made to the FORMAT procedure:
  • You can create a format catalog that corresponds to the current SAS locale by specifying the LOCALE= option in the PROC FORMAT statement.
  • A user-defined format or informat that defines a missing value supersedes a value specified by the MISSING system option.
  • The maximum number of labels that can be used for the MULTILABEL option is 255.
  • The PICTURE statement directive %n formats the number of days in a duration.
  • The PICTURE statement directive %s formats fractional seconds.
  • The PICTURE statement directive %z formats a UTC time-zone offset.
  • The PICTURE statement directive %Z formats a time-zone name.
  • Use the VALUE= statement to create a format that performs a function on a value.
  • Use can use SAS Explorer to view format and informat definitions.

The OPTIONS Procedure

The following enhancements have been made to the OPTIONS procedure
  • These PROC OPTIONS statement options are new:
    LISTINSERTAPPEND
    This option lists the system options whose value can be modified by the INSERT and APPEND system options.
    LISTRESTRICT
    This option lists the system options that can be restricted by your site administrator.
  • These PROC OPTIONS statement options have been enhanced:
    DEFINE
    Valid values for an option now display in the SAS log when you specify the DEFINE option.
    OPTION=
    The OPTION= option now accepts one or more options.
    VALUE
    If the option was set by a configuration file, the name of the configuration file that set the option now displays in the SAS log when you specify the VALUE option.

The PRINT Procedure

The following enhancements have been made to the PRINT procedure:
  • The PRINT procedure is now completely integrated with the Output Delivery System.
  • Each BY group is a separate table and the observation counts is reset to zero at the beginning of each BY group.
  • Bylines can be up to 512 characters.
  • For all destinations other than the LISTING destination, if HEADING=V, the size of the column label is no longer restricted by the page size specified for the LISTING destination.
  • For the LISTING destination, if HEADING=V, the variable name is used in place of a label if the column heading is too long for the page.
  • ROWS= is valid only for the LISTING destination.
  • If you specify a BY variable whose values are not sorted, SAS stops printing and writes a message to the log.
  • If the PRINT procedure errors or terminates, output might be produced where previously there was none.

The PRINTTO Procedure

The following enhancements have been made to the PRINTTO procedure:
  • If you use the PRINTTO procedure to write to a file or a catalog entry, you must open the LISTING destination.
  • If SAS is started in objectserver mode, the PRINTTO procedure does not route log messages to the log specified by the ALTLOG= system option.

The PWENCODE Procedure

The following enhancements have been made to the PWENCODE procedure:
  • The global macro variable
    _PWENCODE
    is set to the value that is written to the OUT= fileref or to the value that is displayed in the SAS log.
  • If the METHOD= option is omitted, the default encoding method is used. When the FIPS 140-2 compliance option, -encryptfips, is specified, the encoding default method is sas003. For all other cases, encoding method sas002 is the default method used.

The RANK Procedure

The following enhancements have been made to the RANK procedure:
  • There is now in-database support for the Netezza database management system.
  • The SQL_IP_TRACE option shows the generated SQL that PROC RANK generates.
  • The PRESERVERAWBYVALUES option preserves the raw values of the BY variable.

The REGISTRY Procedure

The following two options are new:
FOLLOWLINKS
The FOLLOWLINKS option follows links that are found when processing the LIST command.
KEYSONLY
The KEYSONLY option limits the LIST, LISTUSER, LISTHELP, and LISTREG options output to display keys only.

The REPORT Procedure

The MLF option has been added to the DEFINE statement in PROC REPORT.

The SCAPROC Procedure

The RECORD statement has added support for the EXPANDMACROS, INHERITLIB, and NOOPTIMZE arguments.

The SORT Procedure

The following enhancements have been made to the SORT procedure:
  • There is now in-database support for the NETEZZA database management system.
  • The new NOUNIQUEKEY and UNIQUEOUT= options have been added.
  • In the second maintenance release of SAS 9.3, these options were deprecated:
    • NODUPRECS
    • NODUP
    • NOUNIREC
    • NOUNIRECS
    • NOUNIQUERECS

The TABULATE Procedure

The NOCELLMERGE option has been added to the TABLE statement in PROC TABULATE.

Documentation Enhancements

The following changes have been made to the Base SAS Procedures Guide:
  • The section titled “Base SAS Procedures Documented in Other Publications” contains links to Base SAS procedures that are documented in publications other than the Base SAS Procedures Guide. These procedures previously appeared as separate entries in the Table of Contents of the Base SAS(R) 9.2 Procedures Guide.
  • The SQL procedure documentation has been moved to the SAS SQL Procedure User's Guide.