• Contents
  • About
  • SCL Fundamentals
    • Introduction
      • Introduction to SCL
      • SCL Elements
      • Entering SCL Code
      • Compiling SCL Programs
      • Testing SCL Applications
      • Debugging SCL Programs
      • Saving SCL Programs
      • Optimizing the Performance of SCL Code
      • Using Other SAS Software Features in SCL Programs
      • SCL Compatibility Issues
    • The Structure of SCL Programs
      • Introduction to SCL Program Structure
      • Using Labeled Sections in SCL Programs
      • Defining Classes in SCL Programs
      • Defining and Using Methods in SCL Programs
      • USECLASS Blocks in SCL Programs
      • Defining Interfaces in SCL Programs
      • Using Macros in SCL Programs
    • SCL Fundamentals
      • Introduction to SCL Fundamentals
      • SCL Data Types
      • Names in SCL
      • SCL Keywords
      • SCL Variables
      • SCL Constants
      • SCL Operators
      • SCL Expressions
      • SCL Statements
      • SCL Comments
      • SCL Functions
      • SCL CALL Routines
      • Passing Arguments to SCL Functions and CALL Routines
      • Rules for SCL Statements
    • SCL Arrays
      • Introduction to SCL Arrays
      • Declaring Arrays in SCL Programs
      • Referencing Array Elements in SCL Programs
      • Initializing the Elements of a Static Array in SCL Programs
      • Creating and Initializing Dynamic Arrays in SCL Programs
      • Resizing Dynamic Arrays in SCL Programs
      • Using Array Functions with Dynamic Arrays in SCL Programs
      • Copying Elements from One Array to Another in SCL Programs
      • Repeating an Action for Variables in an Array in SCL Programs
      • Passing Dynamic Arrays to Methods in SCL Programs
      • Returning Arrays from Methods in SCL Programs
      • Deleting Dynamic Arrays in SCL Programs
      • Using Temporary Arrays to Conserve Memory in SCL Programs
    • SCL Lists
      • Introduction to SCL Lists
      • Creating Data Dynamically in SCL
      • Identifying SCL Lists
      • Creating New SCL Lists
      • Initializing the Values in an SCL List
      • Manipulating SCL Lists
      • Determining the Type of an SCL List Item
      • Passing SCL Lists as Arguments for Methods
      • Inserting and Replacing Items in SCL Lists
      • Retrieving Values from SCL Lists
      • Deleting Lists and List Items from SCL Lists
      • Referencing SCL List Items by Index Number
      • Accessing Items Relative to the End of an SCL List
      • Index Errors in SCL Lists
      • Implementing SCL Sublists and Nested Structures
      • Assigning Names to SCL List Items
      • Using SCL Lists in Shared Data Environments
      • Using SCL Lists as Stacks and Queues
      • Assigning Attributes to SCL Lists and List Items
      • Using SCL List File Functions
      • Debugging SCL Lists
    • Controlling Program Flow
      • Introduction to SCL Program Flow
      • Using SCL DO Loops
      • Using SCL SELECT-WHEN/OTHERWISE Conditions
      • Using SCL IF-THEN/ELSE Conditions
      • Using the SCL RETURN Statement
      • Branching to a Labeled Section (LINK) in SCL Programs
      • Branching to Another Entry (GOTO) in SCL Programs
      • Calling SCL Entries
      • Stopping Execution of the Current Section in SCL Programs
      • Executing Methods in SCL Programs
      • Using the SCL CONTROL Statement
    • Using SCL with Other SAS Software Products
      • Introduction to Using SCL with SAS
      • Using SAS DATA Step Features in SCL Programs
      • Submitting SAS Statements and SQL Statements in SCL Programs
      • Submitting Statements Compared to Using SCL Features
      • Designating Submit Blocks in SCL Programs
      • How Submit Blocks Are Processed in SCL Programs
      • How Submitted Statements Are Formatted in SCL Programs
      • Modifying the Behavior of Submit Blocks in SCL Programs
      • Substituting Text in Submit Blocks in SCL Programs
      • Issuing Commands to Host Operating Systems from SCL Programs
      • Using Macro Variables in SCL Programs
      • SCL and DATA Step Graphics Interface Elements
      • SAS Functions Used in SCL
      • SAS Statements Used in SCL
      • SAS CALL Routines Used in SCL
  • Developing Object-Oriented Applications
    • SAS Object-Oriented Programming Concepts
      • Introduction to Object-Oriented Programming
      • Object-Oriented Programming and the SAS Component Object Model
      • Classes
      • Methods
      • Attributes
      • Accessing Object Attributes and Methods with Dot Notation
      • Events and Event Handlers
      • Interfaces
      • Converting Version 6 Non-Visual Classes to SCOM Classes
    • Example: Creating An Object-Oriented Application in SCL
      • Introduction to the SCL Tutorial
      • Simple Class Syntax in SCL
      • Creating a Data Set Class in SCL
      • Extending Classes in SCL
      • Interfaces and Higher Levels of Abstraction
      • Other Classes and Further Abstraction
      • The SCL USECLASS Statement
      • Using SCL Class Syntax with SAS/AF Software
  • Application Considerations
    • Handling Exceptions
      • Introduction to SCL Exception Handling
      • Using the SCL programHalt Handler
      • Handling SCL Exceptions with CATCH and THROW
        • NewException Class
        • ThrowIt Class
    • Using SAS Tables
      • Introduction to Using SAS Tables in SCL Programs
      • Accessing SAS Tables in SCL Programs
      • Assigning Librefs in SCL Programs
      • Opening SAS Tables in SCL Programs
      • SAS Tables and the SCL Data Vector
      • Reading SAS Tables in SCL Programs
      • Controlling Access to SAS Table Rows in SCL Programs
      • Changing the Sequence of Reading Rows in SCL Programs
      • Updating SAS Tables in SCL Programs
      • Closing SAS Tables in SCL Programs
      • Determining Attributes of SAS Tables and Columns in SCL Programs
      • Performing Other SAS Table Operations in SCL Programs
      • Preserving the Integrity of Table Data in SCL Programs
      • Manipulating SAS Table Indexes in SCL Programs
    • Using External Files
      • Introduction to Using External Files in SCL Programs
      • Accessing External Files in SCL Programs
      • Assigning Filerefs in SCL Programs
      • Opening Files in SCL Programs
      • File Data Buffers and SCL Data Vectors
      • Reading Values from External Files in SCL Programs
      • Modifying External Files in SCL Programs
      • Closing Files in SCL Programs
      • Changing the Sequence of Reading Records in SCL Programs
      • Other Ways SCL Interacts with External Files
      • Reading and Modifying Files in the Same Directory with SCL
  • Reference
    • SAS Component Language Dictionary
      • SCL Elements by Category
      • ACTIVATE
      • ALARM
      • APPEND
      • APPLY
      • ARRAY
      • ASORT
      • ATTRC and ATTRN
      • _BLANK_
      • BLOCK
      • BUILD
      • CATCH
      • CATLIST
      • CATNAME
      • CBT
      • CENTER
      • CEXIST
      • _CFRAME_
      • CLASS
      • CLEARLIST
      • CLOSE
      • CLRFLD
      • COLORLIST
      • COMAMID
      • COMPAREARRAY
      • COMPARELIST
      • CONTENTS
      • CONTINUE
      • CONTROL
      • COPY
      • COPYARRAY
      • COPYLIST
      • CREATESCL
      • _CURCOL_
      • CURFLD
      • CURLIST
      • CUROBS
      • _CURROW_
      • CURSOR
      • CURTOP
      • CURWORD
      • DATALISTC and DATALISTN
      • DCLOSE
      • DCREATE
      • DECLARE
      • DELARRAY
      • DELETE
      • DELITEM
      • DELLIST
      • DELNITEM
      • DELOBS
      • DESCRIBE
      • DEVLIST
      • DIALOG
      • DINFO
      • DIRLIST
      • DISPLAY
      • DISPLAYED
      • DMWINDOW
      • DNUM
      • DO
      • DOPEN
      • DOPTNAME
      • DOPTNUM
      • DREAD
      • DROPNOTE
      • DSID
      • DSNAME
      • ENDBLOCK
      • ENDCATCH
      • ENDCLASS
      • ENDLEGEND
      • ENDMETHOD
      • ENDPACKAGE
      • ENDSUBMIT
      • ENDTABLE
      • ENDUSECLASS
      • ENTRY
      • ENVLIST
      • ERROR
      • ERROROFF
      • ERRORON
      • EVENT
      • _EVENT_
      • EXECCMD
      • EXECCMDI
      • EXIST
      • FAPPEND
      • FCLOSE
      • FCOL
      • FDELETE
      • FETCH
      • FETCHOBS
      • FEXIST
      • FGET
      • FIELD
      • FILEDIALOG
      • FILEEXIST
      • FILELIST
      • FILENAME
      • FILEREF
      • FILLIST
      • FINFO
      • FKEYNAME
      • FLDATTR
      • FLDCOLOR
      • FNOTE
      • FONTSEL
      • FOPEN
      • FOPTNAME
      • FOPTNUM
      • FORMAT
      • FPOINT
      • FPOS
      • FPUT
      • _FRAME_
      • FREAD
      • FREWIND
      • FRLEN
      • FSEDIT
      • FSEP
      • FSLIST
      • FSVIEW
      • FWRITE
      • GETFKEY
      • GETFOOT
      • GETITEMC, GETITEML, GETITEMN, and GETITEMO
      • GETLATTR
      • GETNITEMC, GETNITEML, GETNITEMN, and GETNITEMO
      • GETPARMID
      • GETTITLE
      • GETVARC and GETVARN
      • GETVARF
      • GGLOBAL
      • GGLOBALE
      • GGLOBALN
      • GOTO
      • GRAY
      • HASATTR
      • HOME
      • ICCREATE
      • ICDELETE
      • ICDESCRIBE
      • ICON
      • ICREATE
      • ICTYPE
      • ICVALUE
      • IDELETE
      • IMGCTRL
      • IMGINIT
      • IMGOP
      • IMGTERM
      • IMPORT
      • IMPORT
      • INFORMAT
      • INITROW
      • INPUTC and INPUTN
      • INSERTC, INSERTL, INSERTN, and INSERTO
      • INSTANCE
      • INTERFACE
      • IOPTION
      • ISACTIVE
      • ISGRAY
      • ISINDEX
      • ISSEL
      • ITEM
      • ITEMTYPE
      • IVARLIST
      • KEYCOUNT
      • LASTCMD
      • LASTKEY
      • LEAVE
      • LEFT
      • LEGEND
      • LENGTH
      • LENGTH
      • LETTER
      • LIBLIST
      • LIBNAME
      • LIBREF
      • LISTC and LISTN
      • LISTLEN
      • LNAMECHK
      • LNAMEGET
      • LNAMEMK
      • LOADCLASS
      • LOADRES
      • LOCATEC and LOCATEN
      • LOCK
      • LOOKUPC
      • LVARLEVEL
      • MAKEARRAY
      • MAKELIST
      • MAKENLIST
      • MESSAGEBOX
      • METHOD
      • METHOD
      • _METHOD_
      • MLENGTH
      • MODIFIED
      • MODVAR
      • MOPEN
      • _MSG_
      • NAMEDITEM
      • NAMEDIVIDE
      • NAMEITEM
      • NAMEMERGE
      • _NEO_
      • NEW
      • _NEW_
      • NEWVAR
      • NEXTCMD
      • NEXTWORD
      • NOCHANGE
      • NOTE
      • NOTIFY
      • NSELECT
      • NUMFKEYS
      • OBSINFO
      • OPEN
      • OPENENTRYDIALOG
      • OPENSASFILEDIALOG
      • OPTGETC and OPTGETN
      • OPTSETC and OPTSETN
      • PACKAGE
      • PATHNAME
      • PICCLOSE
      • PICDELETE
      • PICFILL
      • PICOPEN
      • PMENU
      • POINT
      • POPC, POPL, POPN, and POPO
      • POPLEGEND
      • POPMENU
      • PREVIEW
      • PROTECT
      • PUSHLEGEND
      • PUT
      • PUTC and PUTN
      • PUTLEGEND
      • PUTLIST
      • PUTVARC and PUTVARN
      • REDIM
      • REDIMOPT
      • REFRESH
      • RENAME
      • REPLACE
      • RETURN
      • REVLIST
      • REWIND
      • RGBDM
      • RIGHT
      • RLINK
      • ROTLIST
      • RSESSION
      • RSTITLE
      • RUN
      • SASNAME
      • SASTASK
      • SAVEENTRYDIALOG
      • SAVELIST
      • SAVESASFILEDIALOG
      • SAVESCREEN
      • SCREENNAME
      • SEARCH
      • SEARCHC, SEARCHL, SEARCHN, and SEARCHO
      • SEARCHPATH
      • SELECT
      • SELECT
      • SELECTED
      • SELECTICON
      • _SELF_
      • SEND
      • SET
      • SETCR
      • SETFKEY
      • SETFLD
      • SETFOOT
      • SETITEMC, SETITEML, SETITEMN, and SETITEMO
      • SETKEY
      • SETLATTR
      • SETNITEMC, SETNITEML, SETNITEMN, and SETNITEMO
      • SETPARMID
      • SETROW
      • SETTITLE
      • SHOWLIST
      • SORT
      • SORTLIST
      • _STATUS_
      • STDMSG
      • STOP
      • STRATTR
      • SUBMIT
      • SUBMITCLEAR
      • SUPAPPLY
      • SUPER
      • SYMGET and SYMGETN
      • SYMPUT and SYMPUTN
      • SYSMSG
      • SYSRC
      • SYSTEM
      • THROW
      • TOPROW
      • TRACEBACK
      • UNGRAY
      • UNIQUENUM
      • UNLOCK
      • UNPROTECT
      • UNSELECT
      • UPDATE
      • USECLASS
      • _VALUE_
      • VARFMT
      • VARINFMT
      • VARLABEL
      • VARLEN
      • VARLEVEL
      • VARLIST
      • VARNAME
      • VARNUM
      • VARSTAT
      • VARTYPE
      • WAIT
      • WDEF
      • WHERE
      • WINFO
      • WNAME
      • WORD
      • WORDTYPE
      • WOUTPUT
      • WREGION
    • The SCL Debugger
      • Overview of SCL Debugger Features and Capabilities
      • Establishing the SCL Debugging Environment
      • Invoking the SCL Debugger
      • Using the SCL Debugger Windows
      • Using SAS Macros with the SCL Debugger
      • SCL Debugger Commands by Functional Category
      • SCL Debugger Commands
      • ARGS
      • BREAK
      • CALCULATE
      • DELETE
      • DESCRIBE
      • ENTER
      • ENVIRONMENT
      • EXAMINE
      • GO
      • HELP
      • IF
      • JUMP
      • LIST
      • MACEXPAND
      • PARM
      • PUTLIST
      • QUIT
      • SET
      • STEP
      • SWAP
      • TRACE
      • TRACEBACK
      • WATCH
    • SAS System Return Codes
      • Introduction to SAS System Return Codes
      • Using SAS System Return Codes
      • Testing for a Particular Error or Warning Condition
      • Mnemonics for SAS System Return Codes
  • Appendices
    • Commands Used with the IMGCTRL, IMGOP and PICFILL Functions
      • CONVERT
      • COPY
      • CREATE_IMAGE
      • CROP
      • DESTROY
      • DESTROY_ALL
      • DITHER
      • DITHER_BW
      • EXECLIST
      • FILTER
      • GAMMA
      • GENERATE_CMAP
      • GET_BARCODE
      • GET_COLORS
      • GET_PIXEL
      • GRAB_CMAP
      • MAP_COLORS
      • MIRROR
      • NEGATE
      • PASTE
      • PASTE_AUTO
      • PRINT
      • QUANTIZE
      • QUERYC, QUERYL, and QUERYN
      • READ
      • READ_CLIPBOARD
      • READ_PASTE
      • READ_PASTE_AUTO
      • ROTATE
      • SCALE
      • SELECT
      • SET_COLORS
      • SET_PIXEL
      • STANDARD_CMAP
      • THRESHOLD
      • TILE
      • UNPASTE
      • WRAISE
      • WRITE
      • WRITE_CLIPBOARD
      • WSIZE
      • WTITLE
    • Image File Types and Associated Attributes
      • File Types
      • Attributes for Reading Image Files
      • Attributes for Writing Image Files
      • Attributes for Reading Images from TWAIN Scanners
    • Recommended Reading
  • Glossary


ProductRelease
SAS/AF9.2
SAS/FSP9.2
Type
Usage and Reference
Copyright Date
March 2008
Last Updated
17Apr2009