Publicado el :

Compilación y Uso de Macro SAS con MCOMPILENOTE

Este código también está disponible en: Deutsch English Français
El script comienza con una explicación detallada de la compilación de macros SAS©, destacando que el procesador de macros verifica la sintaxis de las instrucciones macro y almacena la definición compilada en un catálogo SAS© temporal (generalmente `work.sasmacr`). Destaca la importancia de la opción `MCOMPILENOTE=ALL` para confirmar el éxito de la compilación y obtener información sobre la macro (número de instrucciones, tamaño) en el log de SAS©. La macro `prtlast` se proporciona como un ejemplo práctico, utilizando `PROC PRINT` para mostrar las 10 primeras líneas de la última tabla SAS© (`&syslast`) de la sesión.
Análisis de datos

Type : INTERNE


El código utiliza la macro-variable automática `&syslast` que referencia la última tabla SAS creada o modificada en la sesión actual. Por lo tanto, los datos provienen de la propia sesión SAS, no de una fuente externa o creada directamente por este script.

1 Bloque de código
OPTION
Explicación :
Esta instrucción SAS activa la opción del sistema `MCOMPILENOTE=ALL`. Esto configura SAS para que emita una nota en el log cada vez que se compila una macro, indicando el éxito de la compilación, el número de instrucciones y el tamaño de la macro.
¡Copiado!
1options mcompilenote = all;
2 Bloque de código
MACRO DEFINITION (%prtlast)
Explicación :
Este bloque define una macro SAS llamada `prtlast`. Durante su ejecución, esta macro utiliza `PROC PRINT` para mostrar las diez primeras observaciones (`obs=10`) de la última tabla SAS creada o modificada en la sesión (`&syslast`). También se aplica un título dinámico al listado, incluyendo el nombre de la tabla procesada.
¡Copiado!
1 %macro prtlast;
2 PROC PRINT DATA=&syslast (obs=10);
3 title "Listing of &syslast data set";
4 RUN;
5 %mend;
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.