What's New in Base SAS 9.3 Procedures

Overview

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

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. For more information, see GROOVY Procedure.

The HADOOP Procedure

The HADOOP procedure is new for the second maintenance release for SAS 9.3. PROC HADOOP enables SAS to run Apache Hadoop code against Hadoop data. Using PROC HADOOP, you can submit Hadoop Distributed File System (HDFS) commands, MapReduce programs, and Pig language code against Hadoop data. For more information, see HADOOP Procedure.

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. For more information, see QDEVICE Procedure.

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). For more information, see UPCASE.
  • 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. For more information, see SAS Name Literals in SAS Language Reference: Concepts.
  • 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. For more information, see VALIDMEMNAME= and VALIDVARNAME= .
For more information, see CIMPORT Procedure.

The COPY Procedure

The OVERRIDE option was added to the COPY procedure. The OVERRIDE option overrides specified output data set options copied from the input data set. For more information, see OVERRIDE=(ds_option-1=value-1 <...ds_option-n=value-n>).

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. For more information, see SAS Name Literals in SAS Language Reference: Concepts for details.
  • 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. For more information, see VALIDMEMNAME= and VALIDVARNAME= for details.
For more information, see CPORT Procedure .

The DATASETS Procedure

The OVERRIDE option for the COPY statement was added to the DATASETS procedure. The OVERRIDE option overrides specified output data set options copied from the input data set. For more information, see OVERRIDE=(ds_option-1=value-1 <...ds_option-n=value-n>).

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).
For more information, see the INVCDF Function and the LIMMOMENT Function.

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.
For more information, see FORMAT Procedure.

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.
For more information, see OPTIONS Procedure.

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.
  • When you specify the BLANKLINE option, each BY group is a separate table. The count of the number of observations to output between each blank line 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 at the observation for the unsorted value and writes a message to the log. In previous releases of SAS, SAS would stop printing at the observation preceding the unsorted value.
  • If the PRINT procedure errors or terminates, output might be produced where previously there was none.
For more information, see PRINT Procedure.

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.
For more information, see PRINTTO Procedure.

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.
For more information, see PWENCODE Procedure.

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.
For more information, see In-Database Processing for PROC RANK.

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.
For more information, see REGISTRY Procedure.

The REPORT Procedure

The MLF option has been added to the DEFINE statement in PROC REPORT. For more information, see the MLF option in REPORT Procedure.

The SCAPROC Procedure

The RECORD statement has added support for the EXPANDMACROS, INHERITLIB, and NOOPTIMZE arguments. For more information, see SCAPROC Procedure.

The SOAP Procedure

You can now call a SAS secured service without providing credentials. However, a connection to the metadata server is required. For more information, see SOAP Procedure.

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. For more information, see NOUNIQUEKEY and UNIQUEOUT= .
For more information, see SORT Procedure.

The TABULATE Procedure

The NOCELLMERGE option has been added to the TABLE statement in PROC TABULATE. For more information, see the NOCELLMERGE option in the TABLE statement of PROC TABULATE.

The XSL Procedure

For the second maintenance release for SAS 9.3, the XSL procedure uses the Saxon-EE version 9.3 software package from Saxonica to transform the XML document. PROC XSL functionality is now production. For more information, see XSL Procedure.

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. For more information, see Base SAS Procedures Documented in Other Publications.
  • The SQL procedure documentation has been moved to the SAS SQL Procedure User's Guide.