In SAS programming, name literals enable you to use special characters (including blanks) that are not otherwise allowed in SAS names when you specify a SAS data set or a variable. Name literals are expressed as a quoted string that is followed by the letter n. In some cases, SAS code fails when it uses name literals.
For example, suppose that you are executing the following code in SAS® Enterprise Guide or in SAS® Studio. In this case, 'Drive Train'n is the name literal.
data cars_literal;
set sashelp.cars;
rename DriveTrain = "Drive Train"n;
run;
%characteristics_cat(adsln=cars_literal, outdsn=carstable, characteristics=Drivetrain, value='Drive Train'n, condition=Origin EQ "Asia", split=Make)
The code fails with the following error:
"An error occurred executing the workspace job. The server is disconnected"
SAS.Shared.Exceptions.ServerDisconnectedException: The server is disconnected. ---> System.Runtime.InteropServices.COMException: Object is not connected to server (Exception from HRESULT: 0x800401FD (CO_E_OBJNOTCONNECTED))
To work around this issue, do not use name literals for your SAS data sets.