Publicado el :

Configuración del entorno y carga de dependencias

Este código también está disponible en: Deutsch English Français
Attention : Este código requiere privilegios de administrador.
El script define una macro `%setPathToCurrent` que intenta recuperar la ruta del archivo en ejecución a través de una variable de entorno y ajustar el directorio de trabajo del sistema (cd). Luego define una librería 'survey' que apunta a una carpeta relativa, configura las opciones de búsqueda de formatos e incluye una serie de archivos SAS© (macros) ubicados en directorios padre o compartidos. Nota: El uso de barras invertidas en el análisis de rutas sugiere un origen Windows, lo que puede requerir una adaptación para un entorno Linux/Viya.
Análisis de datos

Type : MIXTE


Utiliza comandos del sistema para la ruta, define una librería local externa 'survey' ('../data') y carga código a través de %include.

1 Bloque de código
MACRO
Explicación :
Definición de la macro `setPathToCurrent`. Recupera la ruta completa del archivo ejecutado, extrae la carpeta padre (lógica de Windows con '\') y usa `call system` en un `data _null_` para cambiar el directorio de trabajo del sistema operativo.
¡Copiado!
1%let currentDir=;
2 
3%macro setPathToCurrent;
4 %local cdir cFileName cFileBaseName n_cFileName n_pathName cPathName;
5
6 %let cFileName = %sysget(sas_execfilepath);
7 %let cFileBaseName = %qscan(&cFileName, -1, '\');
8 %let n_cFileBaseName = %length(%quote(&cFileBaseName));
9 %let n_cFileName = %length(%quote(&cFileName));
10 %let n_pathName = %eval(&n_cFileName - &n_cFileBaseName - 1);
11 %let cPathName = %qsubstr(&cFileName, 1, &n_pathName);
12
13 data _null_;
14 call system("cd &cPathName");
15 RUN;
16 
17 %let currentDir = &cPathName;
18 
19%mend setPathToCurrent;
2 Bloque de código
GLOBAL STATEMENTS
Explicación :
Ejecución de la macro de configuración, definición de la librería 'survey', configuración de las opciones de formatos e inclusión de los archivos de código externos (macros compartidas).
¡Copiado!
1%setPathToCurrent;
2 
3LIBNAME survey "../data";
4 
5options fmtsearch = (work fdz) mstored sasmstore = sasuser;
6 
7%include "./macrro_gregg.sas"; /*MACRO GREGAR*/
8%include "../CLAN/clan97_313.sas";
9%include "../shared/utility_macros1.sas";
10%include "../shared/buildAuxData.sas";
11%include "../shared/parseModel.sas";
12%include "../shared/vec_emu.sas";
13%include "../shared/interaction.sas";
14 
15/*%include "./shared/stack.sas";*/
16%include "../shared/buildTotalsTable.sas";
17%include "../shared/combineTables.sas";
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.