Подключиться к другой базе данных SAP HANA с помощью CDS - PullRequest
0 голосов
/ 01 февраля 2019

Я ввел новое соединение с базой данных в транзакции DBCO с другой системой SAP.и успешно протестируйте его с отчетом ADBC_TEST_CONNECTION.

Как использовать это соединение в представлении CDS?Это вообще возможно?Я думал, что это будет работать с табличными функциями, но не заставил его работать.

В качестве альтернативы я попытался использовать его в программе abap безуспешно:

  data: lt_vbak(20).

  exec sql.
    CONNECT TO 'SECOND_DB'
  endexec.
  exec sql.
    SELECT vbeln into :lt_vbak FROM vbak where mandt = 500
  endexec.
  exec sql.
    DISCONNECT :'SECOND_DB'
  endexec.

Это говорит о том, чтотаблица vbak не существует.

В настоящее время мы находимся на SAP ECC с ABAP 7.50.

Есть предложения?Спасибо

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Не уверен насчет представлений CDS, но в программе ABAP вы можете сделать это через Open SQL, используя опцию CONNECTION и указав имя вашего вторичного соединения с базой данных:

SELECT vbeln INTO TABLE lt_vbak FROM vbak WHERE mandt = 500 CONNECTION ('SECOND_DB').

Однако для этого требуется, чтобы выиметь таблицу VBAK с той же структурой, что и у запрашиваемого VBAK, также определенного в DDIC вашей системы ECC.

См. также документацию по параметру CONNECTION здесь: ВЫБРАТЬ дополнительные опции

0 голосов
/ 02 февраля 2019

Это широкий вопрос, и предоставленная информация не позволяет сказать, что не сработало правильно в вашем примере.
Возможно, просто пользователь входа в систему для вторичного подключения не подключен к правильной схеме илине имеет прав доступа к таблице VBAK.

Поскольку вы в основном запрашиваете инструкции , я рекомендую проверить обширную документацию ABAP по теме и / или хорошо написанное и информативное сообщение в блоге от одного из разработчиков ядра ABAP.

...