La macro `mp_perflog` permite registrar mensajes con una marca de tiempo precisa y el identificador del trabajo del sistema. Está diseñada para ser robusta: verifica la existencia de la tabla de almacenamiento (por defecto `work.mp_perflog`) utilizando la macro `%mf_existds` y la inicializa automáticamente si no existe. La inserción de datos se realiza a través de `PROC SQL`.
Análisis de datos
Type : CREATION_INTERNE
La tabla de almacenamiento se gestiona internamente: es creada por el script en la primera llamada si no existe.
1 Bloque de código
DATA STEP Data
Explicación : Verificación condicional de la existencia de la tabla de destino. Si no existe, un Data Step crea la estructura vacía con las columnas `sysjobid`, `label` y `dttm`.
¡Copiado!
%if not (%mf_existds(&libds)) %then %do;
data &libds;
length sysjobid $10 label $256 dttm 8.;
format dttm datetime19.3;
call missing(of _all_);
stop;
run;
%end;
1
%IF not (%mf_existds(&libds)) %THEN %DO;
2
DATA &libds;
3
LENGTH sysjobid $10 label $256 dttm 8.;
4
FORMAT dttm datetime19.3;
5
call missing(of _all_);
6
stop;
7
RUN;
8
%END;
2 Bloque de código
PROC SQL Data
Explicación : Adición de una nueva fila en la tabla de logs que contiene el ID del trabajo del sistema, la etiqueta del punto de control y la marca de tiempo actual.
¡Copiado!
proc sql;
insert into &libds
set sysjobid="&sysjobid"
,label=symget('label')
,dttm=%sysfunc(datetime());
quit;
1
PROC SQL;
2
insert into &libds
3
SET sysjobid="&sysjobid"
4
,label=symget('label')
5
,dttm=%sysfunc(datetime());
6
QUIT;
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.
Información de copyright : Allan Bowe, SASjs Core (https://github.com/sasjs/core)
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.