La macro consulta exclusivamente la vista del sistema `sashelp.vmacro`, que contiene metadatos sobre todas las variables macros existentes en la sesión SAS. No se utiliza ni se crea ninguna otra fuente de datos externa.
1 Bloque de código
Lógica macro (construcción de cláusula WHERE)
Explicación : Este primer bloque inicializa tres variables macro locales: `dsid` (para el identificador del conjunto de datos), `rc` (para el código de retorno) y `where` (para la cláusula de filtro). Luego construye la cláusula `WHERE` que se utilizará para consultar la vista `sashelp.vmacro`. Si se proporciona el parámetro `scope`, la búsqueda se limita al ámbito especificado, convertido a mayúsculas. De lo contrario, la búsqueda excluye el ámbito de la macro actual (`&sysmacroname`). Finalmente, la cláusula `WHERE` se completa para incluir el nombre de la variable macro a buscar (`&mvar`), también convertido a mayúsculas.
Explicación : Este segundo bloque ejecuta la lógica de verificación. Utiliza la función `%sysfunc(open())` para abrir la vista del sistema `sashelp.vmacro` aplicando la cláusula `WHERE` definida previamente. Si la apertura del conjunto de datos es exitosa (es decir, `&dsid` no es nulo), la macro intenta recuperar un registro usando `%sysfunc(fetch(&dsid))`. Si se encuentra un registro (indicado por un código de retorno diferente de -1), esto significa que la variable macro existe en el ámbito buscado. El conjunto de datos se cierra luego con `%sysfunc(close(&dsid))`. La macro devuelve `1` si se encuentra la variable macro y `0` en caso contrario.
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.