Dear Statalisters

I have shapefile containing information about the geographic coordinates of all the districts in Pakistan. I am required to have a variable of the distance between a border district and the rest of all the districts. I am using STATA 15's 'spdistance' command to calculate it. As the syntax for 'spdistance' returns the distance between two district IDs whereas I want to calculate the distance between 93 districts. Is there any way I can do it in a loop? I am writing the codes here as I am not sure how to use 'dataex' with shapefile.

capture drop distance
gen distance=.
local id 20 54 94 95 99 101
spdistance `id' 96 (* where 96 is the id for border district which will remain fixed)
replace distance=r(distance) if distt_id==`id'

however, this code returns an error i.e
94 95 99 101 96 found where nothing expected
r(198);