" WHILE "
" (SELECT COUNT([Composite role]) FROM #composite_roles WHERE [Iteration] = @count) > 0 "
" BEGIN "
" INSERT INTO #composite_roles "
" SELECT "
" [Base].[Client] "
" ,AGR_AGRS.AGR_NAME AS [Composite role] "
" ,ISNULL(AGR_AGRS.AGR_NAME + ';', '') + [Base].[Role tree] AS [Role tree] "
" ,[Base].[Role] "
" ,@count + 1 AS [Iteration] "
" FROM "
" #composite_roles AS [Base] "
" INNER JOIN [app_sap].AGR_AGRS "
" ON AGR_AGRS.MANDT = [Base].[Client] "
" AND AGR_AGRS.CHILD_AGR = [Base].[Composite role] "
" WHERE "
" [Base].[Iteration] = @count; "
" "
" SET @count = @count + 1; "
" END; "