Los datos utilizados para la prueba ('work.somedata1' y 'work.somedata2') se crean directamente en el script mediante un paso DATA. No se requiere ninguna fuente de datos externa.
1 Bloque de código
DATA STEP
Explicación : Este bloque DATA _NULL_ escribe el código SAS que constituirá el cuerpo del servicio web. Utiliza '%webout' para preparar una salida web. Se define una macro interna '%x' para iterar sobre una lista de tablas (provenientes de 'sasjs_tables' o archivos cargados) y escribirlas como objetos en la respuesta web, convirtiendo los valores faltantes en cadenas de caracteres.
Explicación : Llamada a la macro '%ms_createwebservice' para crear y desplegar el servicio web 'sendObj' en el directorio especificado por '&mcTestAppLoc/services', utilizando el código generado en el paso anterior.
¡Copiado!
%put creating web service: &mcTestAppLoc/services;
%ms_createwebservice(
path=&mcTestAppLoc/services,
name=sendObj,
mdebug=&sasjs_mdebug
)
%put created web service: &mcTestAppLoc/services;
1
%put creating web service: &mcTestAppLoc/services;
2
%ms_createwebservice(
3
path=&mcTestAppLoc/services,
4
name=sendObj,
5
mdebug=&sasjs_mdebug
6
)
7
%put created web service: &mcTestAppLoc/services;
3 Bloque de código
Macro Call
Explicación : Llamada a la macro '%mp_assert' para verificar que la creación del servicio se realizó sin errores (condición 'syscc=0'). El resultado de la prueba se registra en 'work.test_results'.
¡Copiado!
%mp_assert(
iftrue=(&syscc=0),
desc=No errors after service creation,
outds=work.test_results
)
1
%mp_assert(
2
iftrue=(&syscc=0),
3
desc=No errors after service creation,
4
outds=work.test_results
5
)
4 Bloque de código
DATA STEP Data
Explicación : Este paso DATA crea dos tablas SAS de prueba, 'work.somedata1' y 'work.somedata2', con datos idénticos que contienen valores numéricos, una cadena con comillas y espacios, y un valor faltante especial.
Explicación : Llamada a la macro '%ms_testservice' para ejecutar el web service 'sendObj'. Las tablas 'work.somedata1' y 'work.somedata2' se pasan como entrada. Los resultados del servicio se almacenarán en la biblioteca 'testlib1'.
Explicación : Estos dos pasos DATA _NULL_ verifican el contenido de las tablas devueltas por el servicio web ('testlib1.somedata1' y 'testlib1.somedata2'). Si los datos cumplen con lo esperado (incluida la transformación del valor faltante '.z' en el carácter 'Z'), las macrovariables 'test1' y 'test2' se establecen en 'PASS'.
¡Copiado!
%let test1=FAIL;
data _null_;
set testlib1.somedata1;
if x=1 and y=' t"w"o' and z="Z" then call symputx('test1','PASS');
putlog (_all_)(=);
run;
%let test2=FAIL;
data _null_;
set testlib1.somedata2;
if x=1 and y=' t"w"o' and z="Z" then call symputx('test2','PASS');
putlog (_all_)(=);
run;
1
%let test1=FAIL;
2
DATA _null_;
3
SET testlib1.somedata1;
4
IF x=1 and y=' t"w"o' and z="Z"THEN call symputx('test1','PASS');
5
putlog (_all_)(=);
6
RUN;
7
8
%let test2=FAIL;
9
DATA _null_;
10
SET testlib1.somedata2;
11
IF x=1 and y=' t"w"o' and z="Z"THEN call symputx('test2','PASS');
12
putlog (_all_)(=);
13
RUN;
7 Bloque de código
Macro Call
Explicación : Llamadas finales a la macro '%mp_assert' para validar formalmente los resultados de las verificaciones anteriores. Si las macrovariables 'test1' y 'test2' están en 'PASS', las pruebas se consideran exitosas.
¡Copiado!
%mp_assert(
iftrue=(&test1=PASS),
desc=somedata1 created correctly,
outds=work.test_results
)
%mp_assert(
iftrue=(&test2=PASS),
desc=somedata2 created correctly,
outds=work.test_results
)
1
%mp_assert(
2
iftrue=(&test1=PASS),
3
desc=somedata1 created correctly,
4
outds=work.test_results
5
)
6
%mp_assert(
7
iftrue=(&test2=PASS),
8
desc=somedata2 created correctly,
9
outds=work.test_results
10
)
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 : Se detecta información de derechos de autor (HMS Analytical Software GmbH, SAS Institute Inc.) en los comentarios que hacen referencia a otros archivos.
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.