BookmarkSubscribeRSS Feed
Dica da Semana: Utilização da LIBNAME USER para substituir a SASWORK.
Berenice25
SAS Employee

As libnames padrão SAS9 conhecidas para trabalharmos são a SASUSER e a WORK ou SASWORK. Todos que trabalham com SAS sabem que a WORK é uma área temporária e de trabalho e tudo que colocamos na WORK será apagada uma vez que nos desconectados da sessão do SAS.

Outra coisa que sabemos que a WORK, em geral, é configurada pelos administradores para ir uma área restrita e muitas vezes compartilhada com vários outros usuários. Sempre que falamos com usuários eles estão pedindo para TI aumentar a área de WORK do SAS.

Se você tem uma área em disco grande não precisa re-escrever seu código trocando para uma LIBNAME específica e tirando trabalho da WORK. Basta criar a LIBNAME USER e apontar para esta área em disco, seu código a partir do momento que ver a LIBNAME USER onde não estiver explicíto uma LIBNAME gravará seus arquivos na USER.

 

Exemplo:

 

Vejam no código abaixo que não tem uma libname USER definida que como não foi definida a Libnem destino o arquivo foi gravado na WORK.

9    data teste;
10     set sashelp.cars;
11   run;

NOTE: There were 428 observations read from the data set SASHELP.CARS.
NOTE: The data set WORK.TESTE has 428 observations and 15 variables.
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.01 seconds

Agora modificando e colocando a LIBNAME USER o arquivo foi copiado na outra LIBNAME e não precisei modificar meu Data Step.

 

12   libname user 'c:\tmp';
NOTE: Libref USER was successfully assigned as follows:
      Engine:        V9
      Physical Name: c:\tmp
13
14   data teste;
15     set sashelp.cars;
16   run;

NOTE: There were 428 observations read from the data set SASHELP.CARS.
NOTE: The data set USER.TESTE has 428 observations and 15 variables.
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.01 seconds

Agora cuidado se você especifica a WORK explicitamente no seu código, quando criar a libname USER não surtirá efeito

 

17   libname user 'c:\tmp';
NOTE: Libref USER was successfully assigned as follows:
      Engine:        V9
      Physical Name: c:\tmp
18
19   data work.teste;
20     set sashelp.cars;
21   run;

NOTE: There were 428 observations read from the data set SASHELP.CARS.
NOTE: The data set WORK.TESTE has 428 observations and 15 variables.
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.00 seconds

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Article Labels
Article Tags
Contributors