User below SQL script to process SSAS cube. Note that the SSAS is seat on another database thus a Link Server is required in the SSMS for processing SSAS.
1. Create a new Link Server connect to the SSAS Server
EXEC master.dbo.sp_addlinkedserver
@server = 'SSAS'
, @srvproduct = ''
, @provider = 'MSOLAP'
, @datasrc = @@SERVERNAME
2. Enable Remote Procedure Calls (RPC) through the linked serve
EXEC master.dbo.sp_serveroption @server='SSAS', @optname='rpc out', @optvalue='true';
3. Extract the SSAS script from the SSAS cube and pass it to below SQL script.
DECLARE @XMLA XML =
'
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Parallel>
<Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500">
<Object>
<DatabaseID>[ cube ID ]</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>
'
DECLARE @Command VARCHAR(MAX) = CONVERT(VARCHAR(MAX), @XMLA);
EXEC (@Command) AT SSAS;
Reference Processing SSAS Objects with T-SQL