Explicación : Paso Data _null_ que contiene la lógica de negocio: resolución de los URIs de los grupos, verificación de su existencia, conteo de miembros y bucle para añadir miembros del grupo de origen al grupo de destino mediante las funciones `metadata_`.
¡Copiado!
data _null_;
/* Initialize variables. */
length type1 type2 id1 id2 src_uri dest_uri mem_uri mem_name $ 50;
call missing (of _character_);
/* Define query. */
src_obj="omsobj:IdentityGroup? @Name=&source_group_name";
dest_obj="omsobj:IdentityGroup? @Name=&dest_group_name";
/* Test for the existence of the source group. */
rc1=metadata_resolve(src_obj,type1,id1);
src_uri=cats(type1,'\',id1);
if rc1 < 1 then do; /* If unable to locate, notify and stop. */
put "ERROR: Source group &source_group_name not found in Metadata.";
stop;
end;
/* Test for the existence of the destination group. */
rc2=metadata_resolve(dest_obj,type2,id2);
dest_uri=cats(type2,'\',id2);
if rc2 < 1 then do; /* If unable to locate, notify and stop. */
put "ERROR: Destination group &dest_group_name not found in Metadata.";
stop;
end;
/* Count the number of members in the source group. */
mem_count=metadata_getnasn(src_uri,"MemberIdentities",1,mem_uri);
put "NOTE: Source group &source_group_name has " mem_count "members.";
/* For each member in the source group, */
/* add the member to the destination group. */
do n=1 to mem_count;
rc=metadata_getnasn(src_uri,"MemberIdentities",n,mem_uri);
rc=metadata_getattr(mem_uri,"Name",mem_name);
put "NOTE: Adding " mem_name "to destination group &dest_group_name";
rc=metadata_setassn(dest_uri,"MemberIdentities","APPEND",mem_uri);
put mem_uri;
end;
run;
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 : Author: Greg Wootton Date: 29NOV2017
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.