accessControl checkOutObject

Despliegue Automatizado con Tabla Inexistente (Fallback al Padre)

Scénario de test & Cas d'usage

Contexto empresarial

Un pipeline de CI/CD (Integración Continua) intenta desplegar una nueva tabla de predicciones 'PRED_Q4_2025'. El script de despliegue es genérico e intenta bloquear la tabla primero. Si es la primera vez que se ejecuta y la tabla no existe, el sistema debe ser lo suficientemente inteligente para bloquear la librería (Caslib) completa para permitir la creación segura de la tabla (CREATE TABLE) sin condiciones de carrera.
Sobre el conjunto : accessControl

Gestión de derechos de acceso y seguridad de datos.

Descubrir todas las acciones de accessControl
Preparación de datos

Asegurar que la tabla objetivo NO existe (limpieza previa).

¡Copiado!
1 
2PROC CAS;
3TABLE.dropTable / caslib='CASUSER' name='PRED_Q4_2025' quiet=TRUE;
4 
5RUN;
6 

Étapes de réalisation

1
Intento de reservar la tabla inexistente activando 'checkoutParent'.
¡Copiado!
1 
2PROC CAS;
3ACCESSCONTROL.checkOutObject / objectSelector={objType='TABLE', caslib='CASUSER', TABLE='PRED_Q4_2025'}, checkoutParent=TRUE, checkOutType='EXCLUSIVE';
4 
5RUN;
6 
2
Confirmación del comportamiento de fallback.
¡Copiado!
1PRINT 'La tabla no existía, por lo tanto, se ha bloqueado la Caslib CASUSER completa.';
2 
3RUN;
4 

Resultado esperado


La acción detecta que 'PRED_Q4_2025' no existe. Gracias a `checkoutParent=TRUE`, la acción NO falla, sino que reserva exitosamente el objeto padre (la Caslib 'CASUSER'), permitiendo la creación segura de la tabla subsiguiente.