SAS Component Language Dictionary |
Category: | Selection List |
Syntax | |
Details | |
Examples | |
Example 1: Opening a SAS File | |
Example 2: Returning a Two-Level Name | |
Example 3: Using the Advanced Button with an SCL List | |
See Also |
Syntax |
selection=OPENSASFILEDIALOG(<type<,level-count<,entry-name<,list-id>>>>); |
contains the two- or three-level name of the selected SAS file, or a blank if nothing is selected.
specifies one or more member types to list in the dialog window, such as DATA, VIEW, MDDB, and CATALOG. This can reduce the length of the list in the dialog window. If type is not used, the names of all SAS files in the data library are listed. Multiple types should be separated by blanks.
specifies whether the function returns a two- or three-level name. The only valid choices are 2 and 3. The default is 2.
is a two- or four-level name of a catalog entry to call when a user selects the button in the dialog window. The entry can be any of the following types: FRAME, SCL, PROGRAM, HELP, CBT, or MENU.
If entry-name is not specified, then the window does not contain .
contains the identifier of an SCL list that is passed to entry-name.
Details |
OPENSASFILEDIALOG displays a list of SAS files from which a user can make a selection. You can pass that selection to code that opens the SAS file.
If entry-name is supplied and is selected, the item selected in the dialog window is passed to entry-name through the following variables, which are created automatically:
List-id enables information to be passed between the calling entry and entry-name. It is passed to entry-name through the USERDATA variable.
Examples |
Select a SAS file of type DATA to open and display the table.
selection=opensasfiledialog('data'); call fsview(selection);
Open a SAS file of type DATA that returns a two-level name.
selection=opensasfiledialog('data view',2'work.a.a.scl',listid);
Specify an entry to be called when a user selects as well as an SCL list that contains values to pass to the entry. The entry can be any of the following types: FRAME, SCL, PROGRAM, HELP, CBT, or MENU. If entry-name is not specified, then the window does not contain .
dcl list mydata; mydata=makelist(); rc=insertc(mydata,'test'); selection = opensasfiledialog('data', 'mylib.mycat.myentry.frame',mydata); if sysrc(1)=-1 then do; ...SCL statements to execute when the user cancels from the window... end; else do; ...SCL statements to handle selections... end;
The SCL entry for MYLIB.MYCAT.MYENTRY.FRAME contains the following program:
dcl char(8) libref type; dcl char(32) member; dcl list userdata; init: put libref=; put member=; put type=; call putlist(userdata); return;
Note: The SCL entry must declare these exact variables, in the order specified, to properly reference the selected entry.
If the user selects MYLIB2.MYMEMBER2.DATA in the dialog window and then selects , the output for this program islibref=Mylib2 member=Mymember2 type=Data ('test')[1]
See Also |
Copyright © 2009 by SAS Institute Inc., Cary, NC, USA. All rights reserved.