Hi look, I'm copying a procedure that I had to do where I work with temporary, I hope it serves you, I remain attentive to your doubts. (I put only the part of the query to write the creation code of the sp)
CREATE TABLE #TMPRECOMPRA (ID BIGINT IDENTITY(1,1),facId BIGINT)
INSERT INTO #TMPRECOMPRA
SELECT V.FacId
FROM FIP_Venta V
INNER JOIN FACTURAS F ON F.facID= V.facID
WHERE estado = @Estado
SELECT T.facID
,F.estado 'Estado'
,CONVERT(VARCHAR,F.fecha_vencimiento,103) 'fecha_vencimiento'
,CONVERT(NUMERIC(18,0),F.valor_documento) 'valor_rescate'
,DATEDIFF(DAY,GETDATE(),F.fecha_vencimiento) 'Dias_por_vencer'
,ROUND(CONVERT(NUMERIC(18,0),F.valor_documento)-(CONVERT(NUMERIC(18,0),F.valor_documento)/(((v.ven_tasa_captacion/100/30)*(DATEDIFF(DAY,GETDATE(),F.fecha_vencimiento)))+1)),0) 'Interes_por_recuperar'
,CONVERT(NUMERIC(18,0),F.valor_documento) - ROUND(CONVERT(NUMERIC(18,0),F.valor_documento)-(CONVERT(NUMERIC(18,0),F.valor_documento)/(((v.ven_tasa_captacion/100/30)*(DATEDIFF(DAY,GETDATE(),F.fecha_vencimiento)))+1)),0) 'Valor_recompra'
,DATEDIFF(DAY,[dbo].[fnFechaAnteriorHabil](F.fecha_vencimiento), F.fecha_vencimiento) as 'dias reliq'
,ISNULL(R.Folio_Recompra, '') AS Folio_Recompra
FROM #TMPRECOMPRA as T
INNER JOIN fip_venta v on v.facID=t.facId
INNER JOIN Facturas as F ON t.facId=f.facID
LEFT JOIN FIP_Recompra R ON T.facID= R.facID
WHERE T.ID BETWEEN CAST(ISNULL(@RegIni, 0) AS VARCHAR) AND CAST(ISNULL(@RegFin, 0) AS VARCHAR)
DROP TABLE #TMPRECOMPRA
END