fix(getgroupmembers): widen membername to $256 for long names
Build / Build-and-ng-test (pull_request) Successful in 5m3s
Lighthouse Checks / lighthouse (pull_request) Successful in 17m40s
Build / Build-and-test-development (pull_request) Successful in 28m43s

mv_getgroupmembers declared the member name at $43, and a longer name was
truncated - or, on Viya, stopped the step with "Multiple lengths were
specified".

membername is declared at $256 in the same shape the macro now returns it: one
width for every group, so the tables the caller combines are never of differing
lengths, and a long active directory name is kept whole.
This commit is contained in:
dc committed 2026-11-03 01:00:39 +00:00
1 parent f82f21dc3b
commit 196d6c931d
1 file changed
+5 -2
@@ -7,7 +7,7 @@
<h4> SAS Macros </h4>
@li mv_getgroupmembers.sas
@version 3.4
@version 3.5
@author 4GL Apps Ltd
@copyright 4GL Apps Ltd. This code may only be used within Data Controller
and may not be re-distributed or re-sold without the express permission of
@@ -16,8 +16,11 @@
%macro dc_getgroupmembers(group,outds=dc_getgroupmembers);
%mv_getgroupmembers(%str(&group),outds=&outds)
/* membername is declared at the same $256 mv_getgroupmembers uses: the caller
combines the group tables, and a data step will not combine a variable of
differing lengths */
data &outds ;
length membername $64;
length membername $256;
set &outds(rename=(name=MemberName));
run;
%mend dc_getgroupmembers;