Ниже мой код:
Я могу подключиться к системе SAP, и когда я пытаюсь прочитать данные из таблицы, я получаю исключение ниже. Пожалуйста, любой может помочь мне разобраться в проблеме.
Сообщение об ошибке: {success: false, msg: ‘Возникло исключение: TABLE_NOT_AVAILABLE’}
$fce = saprfc_function_discover($rfc, "SAPMOdule");
if (! $fce ){
echo "{success: false, msg: 'Discovering interface of function module failed'}";
exit;
}
saprfc_table_init ($fce,"TableName");
saprfc_import ($fce,"Column1",'0602');
saprfc_import ($fce,"Column2",'ZA00');
set_time_limit ( 0 );
$rfc_rc = saprfc_call_and_receive ($fce);
if ($rfc_rc != SAPRFC_OK){
if ($rfc_rc == SAPRFC_EXCEPTION ){
ExitRFC($rfc, $fce, "false", "Exception raised: " . saprfc_exception($fce));
}else{
ExitRFC($rfc, $fce, "false", "Call error: " . saprfc_error($fce));
}
exit;
}
Часто базы данных требуют domainname.tablename вместо только имя_таблицы. Я не знаю о SAP.
Проблема в том, что таблица, которую вы пытаетесь прочитать, еще не активирована в ABAP DDIC. Для более подробной информации смотрите мой ответ на этот вопрос:
Table_not_available при использовании JAVA SAP RFC_READ_TABLE
(Просто замените имя «LTAP» на имя вашей таблицы.)