Type : CREATION_INTERNE
Die Benutzernamen werden direkt im Code über die DATALINES-Anweisung definiert.
| 1 | options metaserver='meta.example.com' |
| 2 | metaport=8561 |
| 3 | metaprotocol='bridge' |
| 4 | metauser='sasadm @saspw' |
| 5 | metapass='password' |
| 6 | ; |
| 7 | |
| 8 | DATA work.delusers; |
| 9 | INFILE DATALINES truncover; |
| 10 | LENGTH username $ 255; |
| 11 | call missing (of _character_); |
| 12 | INPUT username $1-255; |
| 13 | DATALINES; |
| 14 | deltest |
| 15 | deltest1 |
| 16 | deltest2 |
| 17 | del test3 |
| 18 | ;; |
| 19 | RUN; |
| 1 | DATA _null_; |
| 2 | |
| 3 | /* Read in the data set. */ |
| 4 | SET work.delusers; |
| 5 | |
| 6 | /* Build a URI from the supplied user name. */ |
| 7 | obj="omsobj:Person? @Name='"||trim(username)||"'"; |
| 8 | |
| 9 | /* Delete the Logins associated with the user. */ |
| 10 | rc=metadata_delassn(obj,"Logins"); |
| 11 | |
| 12 | /* Check if the delete of Logins was successful. */ |
| 13 | |
| 14 | IF rc ne 0 THEN DO; |
| 15 | /* Throw an error if the login delete action failed. */ |
| 16 | put "ERROR: Failed to delete associated logins for user " username ". " rc=; |
| 17 | END; |
| 18 | /* If deleting logins was successful, move on to deleting the user. */ |
| 19 | ELSE DO; |
| 20 | /* Write a note to the log indicating the delete of logins was successful. */ |
| 21 | put "NOTE: Successfully deleted logins associated with user " username". Attempting to delete user."; |
| 22 | |
| 23 | /* Delete the user object. */ |
| 24 | rc=metadata_delobj(obj); |
| 25 | |
| 26 | /* Check if delete was successful. */ |
| 27 | IF rc ne 0 THEN DO; |
| 28 | |
| 29 | /* If not, throw an error. */ |
| 30 | put "ERROR: Failed to delete user " username ". " rc=; |
| 31 | END; |
| 32 | |
| 33 | /* If so, note that delete was successful. */ |
| 34 | ELSE put "NOTE: Successfully deleted user " username "."; |
| 35 | END; |
| 36 | RUN; |