alle.SSIS Ole DB Quelle als gespeicherte Prozedur vom Verbindungsserver mit Parametern
Ich verwende gespeicherte Prozeduren vom Verbindungsserver. Ich möchte das Verfahren in Ole DB Quelle verwenden.
Ich schrieb die Abfrage, die in SSIS funktioniert.
select ID,
LAST_NAME_ENG,
LAST_NAME_G,
FST_NAME_ENG,
FST_NAME_G,
BIRTHDATE
from openquery (linkedserver,
'exec [linkedserver].get_records @SESSION_ID = 12 , @SYSTEM = ''oCRM'', @ENTITY_NAME = ''CLIENT''
WITH RESULT SETS (([ID] [int] NOT NULL,
[LAST_NAME_ENG] [varchar](50) NOT NULL,
[LAST_NAME_G] [varchar](50) NOT NULL,
[FST_NAME_ENG] [varchar](50) NOT NULL,
[FST_NAME_G] [varchar](50) NOT NULL,
[BIRTHDATE] [date] NOT NULL))');
Ich kann es in SSIS OLE Db-Quelle verwenden und erforderliche Daten erfolgreich erhalten. Aber im nächsten Schritt gibt es das Problem:
Ich muss den Parameter an die @ SESSION_ID von SSIS anstelle von '12' übergeben. Und ich kann den richtigen Weg nicht finden.
Es gibt viele Ratschläge, Dynamics sql zu verwenden und vollständige Abfragezeichenfolge mit erforderlichen Parameterwerten zu erstellen und dann auszuführen, aber wenn ich es tun werde - das SSIS konnte keine Spaltendaten von der Dynamikabfrage abrufen.
Gibt es Möglichkeiten, es zu lösen? Alle Ideen werden hilfreich sein.
Vielen Dank.
Mit freundlichen Grüßen, Yuriy.
Warum verbinden Sie sich nicht direkt mit dem anderen Server? –
Das ist mir leider nicht erlaubt. –