SAS Documentation
SASĀ® Solution for Stress Testing
Reference manual - version 08.2021
Loading...
Searching...
No Matches
irm_build_hash_lookup.sas
1/*----------------------------------------------------------------------
2 * NAME: irm_build_hash_lookup.sas
3 *
4 * PURPOSE: Builds Data Step hash object lookups
5 *----------------------------------------------------------------------*/
6
7%macro irm_build_hash_lookup(
8 data_vars = ALL,
9 hash_name = ,
10 hash_table = ,
11 key_vars = ,
12 multidata = no
13 )
14 / minoperator;
15
16 %if %eval(%qupcase(&multidata) in YES NO) eq 0 %then
17 %let multidata = no;
18
19 %let num_key_vars = %sysfunc(countw(&key_vars));
20 %let num_data_vars = %sysfunc(countw(&data_vars));
21 declare hash &hash_name(dataset:"&hash_table", multidata:"&multidata");
22 &hash_name..definekey(
23 %do h = 1 %to &num_key_vars;
24 %let key = %scan(&key_vars,&h,%str( ));
25 %if &h ne 1 %then %do; , %end;
26 "&key"
27 %end;);
28 &hash_name..definedata(
29 %if %upcase(&data_vars) eq ALL %then %do;
30 ALL:'YES'
31 %end;
32 %else %do h = 1 %to &num_data_vars;
33 %let data = %scan(&data_vars,&h,%str( ));
34 %if &h ne 1 %then %do; , %end;
35 "&data"
36 %end;);
37 &hash_name..definedone();
38
39%mend irm_build_hash_lookup;