Looks like part of a PROC FORMAT step for defining a character format named $EXFMT. You are missing the PROC FORMAT statement before the VALUE statement. You are using "stupid" quotes instead of normal quotes around the strings, that needs to be fixed. And you are missing the semi-colon to end the VALUE statement. Also you should end the PROC FORMAT step with a RUN statement.
proc format;
value $exfmt
'ZHKGILD' = '8#1'
'ZHKGILPM1' = '6G8'
;
run;
When you use this format to print a character variable strings that match the values on the left of the equal signs will be displayed using the values on the right. Just when you print a number that has value ten in it using the 2. format is print the digit string 10. Or when you have date value of the first day of january 2022 and print it using the DATE9. format you get the string 01JAN2022 instead of the actual number of days since 1960 that are stored in the variable.
Read up about what formats are.
https://www.sas.com/content/dam/SAS/support/en/sas-global-forum-proceedings/2018/2032-2018.pdf
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Select SAS Training centers are offering in-person courses. View upcoming courses for: