Actually the GetAllLocations component is simply calling a report from the SMP. The report is called 'All Locations'. You can modify the report to return the filtered results you desire.
All the reports that ServiceDesk uses from the SMP can be found in Reports\Service and Asset Management\ServiceDesk. The draw back is that most, if not all, of these reports are hidden and read only. You can use the below SQL query to make the reports editable. This query needs to be ran against your SMP database(Symantec_CMDB by default)
UPDATE Item
SET Attributes = 0
WHERE Guid IN (
SELECT ItemGuid FROM ItemFolder
WHERE ParentFolderGuid = '99338db4-ad72-4691-af34-719c104521da')