Los datos utilizados son principalmente parámetros de entrada (`SYSPARM`) tratados como variables macro, y variables de fecha/hora generadas dinámicamente por SAS (`DATE()`, `DATETIME()`). No hay una lectura explícita de datos de tablas SASHELP o fuentes externas en este fragmento de código, a excepción de lo que podría ser gestionado por la macro `create_report` no proporcionada.
1 Bloque de código
MACRO
Explicación : Define el inicio de la macro `call_create_report` e inicializa la variable macro `SYSPARM` con el valor pasado a SAS a través de la línea de comandos, luego lo muestra en el log.
Explicación : Este bloque `DATA _NULL_` se utiliza para extraer valores de la variable macro `SYSPARM`. La función `SCAN` permite separar los elementos por comas, y `CALL SYMPUT` los asigna a nuevas variables macro (`id_report_control` y `rundate`).
¡Copiado!
data _null_ ;
call symput('id_report_control',trim(left(scan("&SYSPARM",1,',')))) ;
call symput('rundate',trim(left(scan("&SYSPARM",2,',')))) ;
run ;
Explicación : Este bloque utiliza las funciones macro `%SYSFUNC` para manipular y formatear fechas y horas. `rundate` se convierte al formato de fecha SAS, `datestamp` obtiene la fecha del sistema en formato AAMMJJ, y `timestamp` extrae la hora de la marca de tiempo del sistema en formato HH0000. Una variable `zip_counter` se inicializa a 0.
¡Copiado!
/* rundate is the date variable of the extraction*/
%let rundate = %SYSFUNC(INPUTN(&rundate,yymmdd8.));
%put rundate=%sysfunc(putn(&rundate,yymmdd10.));
/*datestamp is the wariable for the ZIP file*/
%let datestamp = %sysfunc(DATE(),yymmdd6.);
%put datestamp=&datestamp.;
%let zip_counter = 0;
/*timestamp is the wariable for the ZIP file*/
%let timestamp = %sysfunc(substr(%sysfunc(DATETIME(),datetime19.),11,2))0000;
%put timestamp=×tamp.;
1
/* rundate is the date variable of the extraction*/
Explicación : Muestra los valores finales de las variables macro `id_report_control` y `datestamp` en el log. Luego, llama a la macro `create_report` (no definida en este código) pasándole todas las variables macro preparadas como parámetros. `ABSOLUTE` es un error tipográfico y no es válido. Finalmente, `ABSOLUTE` termina la definición de la macro `call_create_report`.
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 : ykxjlau 27.02.2013: Created.
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.