Publicado el :
Général CREATION_INTERNE

Sans titre

Este código también está disponible en: Deutsch English Français
En espera de validación
Attention : Este código requiere privilegios de administrador.
Análisis de datos

Type : CREATION_INTERNE


Todos los datos utilizados son creados por el propio script. Esto incluye la tabla a bloquear (`tmp.sometable`), la tabla de control de bloqueos (`work.controller`) y varias tablas pequeñas de verificación (`work.checkds*`) utilizadas para las aserciones.

1 Bloque de código
Macro Data
¡Copiado!
1%mp_coretable(LOCKTABLE,libds=work.controller)
2 
3%mp_assertcols(work.controller,
4 cols=lock_status_cd lock_lib lock_ds lock_user_nm lock_ref lock_pid
5 lock_start_dttm lock_end_dttm,
6 test=ALL,
7 desc=check all control columns exist
8)
2 Bloque de código
DATA STEP Data
¡Copiado!
1options dlcreatedir;
2LIBNAME tmp "%sysfunc(pathname(work))/tmp";
3DATA tmp.sometable;
4 x=1;
5RUN;
3 Bloque de código
Macro Data
¡Copiado!
1%mp_lockanytable(LOCK,lib=tmp,ds=sometable,ref=This Ref, ctl_ds=work.controller)
2 
3DATA work.checkds1;
4 checkval='SOMETABLE';
5RUN;
6%mp_assertcolvals(work.controller.lock_ds,
7 checkvals=work.checkds1.checkval,
8 desc=TABLE is captured in lock,
9 test=ANYVAL
10)
11 
12DATA work.checkds2;
13 checkval='LOCKED';
14RUN;
15%mp_assertcolvals(work.controller.lock_status_cd,
16 checkvals=work.checkds2.checkval,
17 desc=code is captured in lock,
18 test=ANYVAL
19)
4 Bloque de código
Macro Data
¡Copiado!
1%mp_lockanytable(UNLOCK,lib=tmp,ds=sometable,ref=bye, ctl_ds=work.controller)
2 
3DATA work.checkds3;
4 checkval='UNLOCKED';
5RUN;
6%mp_assertcolvals(work.controller.lock_status_cd,
7 checkvals=work.checkds3.checkval,
8 desc=Ref is captured in unlock,
9 test=ANYVAL
10)
5 Bloque de código
Macro
¡Copiado!
1%mp_lockanytable(UNLOCK,lib=no,ds=doesnotexist,ref=bye, ctl_ds=work.controller)
2 
3%mp_assert(
4 iftrue=(&syscc=0),
5 desc=Ability to unlock a TABLE that was never locked,
6 outds=work.test_results
7)
6 Bloque de código
Macro
¡Copiado!
1%mp_assertscope(SNAPSHOT)
2%mp_lockanytable(LOCK,lib=tmp,ds=testscope,ref=This Ref, ctl_ds=work.controller)
3%mp_assertscope(COMPARE)
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 : Copyright 2010-2023 HMS Analytical Software GmbH, http://www.analytical-software.de; Copyright © 2021, SAS Institute Inc., Cary, NC, USA. All Rights Reserved. SPDX-License-Identifier: Apache-2.0