I am not allowed to use temp tables in any of the stored procedures i write (not my decision). So i am trying to use table variables.
is there any other way that i can store the results of a stored procedure call without using a # or a ##? Oh and I also cant create a standard table either...
Sounds like someone is deliberately making you jump through hoops, in order that you should discover the power of table-valued functions. From the evidence, they would seem to a good candidate for the job. You can turn your called stored procedure into a table-valued user-defined function - see BOL under:
functions/user-defined/user-defined functions that return a table data type
then you can:
select * from dbo.my_new_table_valued_function( @parameter,...)
or you can then use the output of the function as a table in the from clause of another statement
select A.x, A.y, B.a, B.b, B.c
from permanent_table as A,
dbo.my_new_table_valued_function( @parameter,...) as B
where A.n = B.n