public void Execute(IActivityRequest request, IActivityResponse response) { SCCMServer = settings.SCCMSERVER; userName = settings.UserName; password = settings.Password; String colComment = String.Empty; int colRefreshMin = 0; int colRefreshHours = 0; int colRefreshDays = 0; String parentColID = String.Empty; String colName = request.Inputs["New Collection Name"].AsString(); if (request.Inputs.Contains("New Collection Comment")) { colComment = request.Inputs["New Collection Comment"].AsString(); } if (request.Inputs.Contains("New Collection Refresh Minutes")) { colRefreshMin = (int)request.Inputs["New Collection Refresh Minutes"].AsUInt32(); } if (request.Inputs.Contains("New Collection Refresh Hours")) { colRefreshHours = (int)request.Inputs["New Collection Refresh Hours"].AsUInt32(); } if (request.Inputs.Contains("New Collection Refresh Days")) { colRefreshDays = (int)request.Inputs["New Collection Refresh Days"].AsUInt32(); } if (request.Inputs.Contains("New Collection Parent CollectionID")) { parentColID = request.Inputs["New Collection Parent CollectionID"].AsString(); } //Setup WQL Connection and WMI Management Scope WqlConnectionManager connection = CM2012Interop.connectSCCMServer(SCCMServer, userName, password); using (connection) { IResultObject col = CM2012Interop.createSCCMCollection(connection, colName, colComment, colRefreshMin, colRefreshHours, colRefreshDays, parentColID); if (col != null) { response.WithFiltering().PublishRange(getObjects(col)); } response.Publish("Number of Collections", ObjCount); } }