Не удалось получить доступ к DBCONN после перехода на EHP7

66
9

Я хочу получить доступ к базе данных Unix из моей системы SAP. Я использовал класс cl_sql_connection, чтобы открыть соединение. Этот класс работал отлично до перехода на EHP7. Но теперь я не могу получить доступ к таблице DBCONN в любой транзакции Stabdard SAP (SE16, SE11...)

Ниже приведен мой код, возвращающий исключение после обновления EPH7.

   * Fetch data from the ACMM application, using db-links.

TRY.
CALL METHOD cl_sql_connection=>get_connection
EXPORTING
con_name = lw_dbcon_name
RECEIVING
con_ref = lo_sql_connection.

CATCH cx_sql_exception .
=>An exception occurred while opening SQL Connection
ENDTRY.

Является ли их другим способом, через который я могу подключиться к другому серверу?

спросил(а) 2021-01-19T11:20:43+03:00 9 месяцев, 1 неделя назад
1
Решение
80

Да, есть. Вы можете использовать (более старый) вариант EXEC SQL.

Но прежде чем вы это сделаете, проверьте соединение с помощью ADBC_TEST_CONNECTION в SE38.

Вы также можете получить более подробную информацию, исследуя объект исключения, который у вас есть. Вот как я обычно это делаю:

TRY.
EXEC SQL.
CONNECT TO 'ZUNIXDB_DBCON'
ENDEXEC.
EXEC SQL.
OPEN dbcur FOR
SELECT id FROM table
ENDEXEC.
CATCH cx_sy_native_sql_error INTO lr_cx_native_sql_error.

Теперь у вас есть информация:

lr_cx_native_sql_error->get_text( )
lr_cx_native_sql_error->get_longtext( )
lr_cx_native_sql_error->sqlmsg

ответил(а) 2021-01-19T11:20:43+03:00 9 месяцев, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема