Как добавить переменную в открытый запрос в хранимой процедуре - PullRequest
0 голосов
/ 30 июня 2019

У меня есть хранимая процедура, которая получает параметр идентификатора магазина.Мне нужно, чтобы эта переменная была добавлена ​​в сценарий openquery tsql. Я не могу этого сделать. Посмотрите в моем коде, где написано @var, где переменная должна работать

Я пытался сослаться на этоhttps://support.microsoft.com/en-us/help/314520/how-to-pass-a-variable-to-a-linked-server-query но я не могу заставить его работать

SELECT x.*
FROM (
    SELECT tl.title_log_sts_cd
        ,tl.ro_vin
        ,tl.ro_store_id
        ,ll.CurrentLoanStatus
        ,bc.vin
        ,bc.BorrowerId
        ,ll.DisplayLoanNumber
        ,CONVERT(DATE, CONVERT(VARCHAR(10), ll.CreateDateKey, 7)) LoanDate
        ,CONCAT (
            bb.LastName
            ,','
            ,bb.FirstName
            ) CustomerName
        ,ll.CurrentPrincipalBalanceAmt + ll.CurrentFeeBalanceAmt TotalDue
    FROM OPENQUERY(TLXPRD, 'SELECT * FROM TITLE_LOG 
 WHERE title_log_sts_cd in (''Ready to Send to DMV'', ''Sent to DMV'') 
 and ro_store_id =@VAR ') AS tl
    JOIN EIS.Borrower.Collateral bc WITH (NOLOCK) ON tl.ro_vin = bc.Vin
    LEFT JOIN eis.loan.loan ll WITH (NOLOCK) ON ll.BorrowerId = bc.BorrowerId
        AND convert(DATE, tl.created_ts) = CONVERT(DATE, CONVERT(VARCHAR(10), ll.CreateDateKey, 7))
    LEFT JOIN EIS.Borrower.Borrower BB ON bb.borrowerid = ll.BorrowerId
    ) AS x
ORDER BY vin

Ожидается, что некоторые данные от оракула присоединяются к нему с помощью tsql

1 Ответ

0 голосов
/ 30 июня 2019

Я не совсем понял, что вы пытаетесь сделать, но я надеюсь, что это то, что вы ищете.

 FROM OPENQUERY(TLXPRD, concat( 'SELECT * FROM TITLE_LOG 
 WHERE title_log_sts_cd in (''Ready to Send to DMV'', ''Sent to DMV'') 
 and ro_store_id =', cast(@VAR as nvarchar(50) ) ))

в принципе, у вас есть переменная в вашей строке, но вы хотите, чтобы она былакак ценность.поэтому мы получаем значение и помещаем его в вашу строку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...