Предполагая, что вы можете изменить свой SP, вы можете использовать пользовательский тип таблицы, например,
CREATE TYPE [dbo].[PropertyCode_UDT] AS TABLE
( [PropertyCode] [bigint] NOT NULL
)
GO
DECLARE @PCTab [dbo].[PropertyCode_UDT]
;
INSERT INTO @PCTab
( [PropertyCode]
)
SELECT PC.[PropertyCode]
FROM [dbo].[PropertyCode] PC
;
DECLARE @return_value int
EXEC @return_value = [dbo].[spCougarExport]
@PropertyCode = @PCTab,
@Date = NULL,
@InferDate = NULL,
@TransactionCodeString = NULL
;
Необходимо изменить ваш Sp, чтобы он принимал правильный тип для @PropertyCode, и вы можете просто присоединить свой запрос к SP в этой таблице, чтобы получить все коды свойств
Например
CREATE PROCEDURE [dbo].[spCougarExport]
@Date [date]
, @InferDate [date]
, @TransactionCodeString [nvarchar] (MAX)
, @PropertyCode PropertyCode_UDT READONLY
AS BEGIN;
.......
SELECT ...
FROM @PropertyCode atPC