El script interactúa con el servidor de metadatos de SAS para la creación y verificación de la carpeta. Utiliza las opciones del sistema `metaserver` y `metaport` para la conexión. Además, ejecuta un comando de sistema externo (`sas-make-folder`) a través de la instrucción `pipe`, lo que implica una interacción con el entorno operativo subyacente. No procesa archivos de datos externos tradicionales (CSV, Excel, etc.) que no serían gestionados por el propio script o las bibliotecas SASHELP.
1 Bloque de código
MACRO CALL / DATA STEP
Explicación : Este bloque inicializa macro-variables locales (`host`, `port`, `path`, `connx_string`, `msg`). Recupera el host y el puerto del servidor de metadatos de SAS a través de la función `getoption`. Luego construye la cadena de conexión (`connx_string`) incluyendo las credenciales proporcionadas, y una ruta (`path`) a una herramienta externa `sas-make-folder` (la macro `%mf_loc` es una dependencia externa). Se utiliza un paso `DATA _NULL_` con la instrucción `infile ... pipe` para ejecutar el comando externo `sas-make-folder` con los parámetros definidos, con el fin de crear la carpeta de metadatos. La salida del comando se dirige al log de SAS a través de `putlog _infile_`.
data _null_; /* check tree exists */
length type uri $256;
rc=metadata_pathobj("","&loc","Folder",type,uri);
call symputx('foldertype',type,'l');
run;
%let msg=Location (&loc) was not created!!;
%mp_abort(iftrue= (&foldertype ne Tree)
,mac=&_program..sas
,msg=%superq(msg)
)
1
DATA _null_; /* check tree exists */
2
LENGTH type uri $256;
3
rc=metadata_pathobj("","&loc","Folder",type,uri);
4
call symputx('foldertype',type,'l');
5
RUN;
6
%let msg=Location (&loc) was not created!!;
7
%mp_abort(iftrue= (&foldertype ne Tree)
8
,mac=&_program..sas
9
,msg=%superq(msg)
10
)
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.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.