Для получение данных из MSSQL или FIREBIRD необходимо сформировать XML следующей структуры <RFC_FUNCTION THID="3140" DESTINATION="MSSQL" TYPE="SELECT" USER="ORAUSER"> <SELECT>Здесь пишется Select который необходимо выполнить</SELECT> </RFC_FUNCTION> Далее, с помощью пакета UTL_TCP необходимо его отправить на порт 9980, на адрес где стоит StS. Обязательно при отправке в конец пакета добавить символ с кодом 26(Chr(26)).
Мы получим в результате XML следующего вида
<RFC_FUNCTION THID="3140" DESTINATION="MSSQL" TYPE="SELECT" USER="ORAUSER"> <DATA> <ROW> <FIELD1>VALUE</FIELD1> <FIELD2>VALUE</FIELD2> <FIELD3>VALUE</FIELD3> </ROW> <ROW> <FIELD1>VALUE</FIELD1> <FIELD2>VALUE</FIELD2> <FIELD3>VALUE</FIELD3> </ROW> </DATA> </RFC_FUNCTION>
В конце полученного пакета также будет стоять Chr(26). Этот результат можно проанализировать либо вручную, либо с помощью пакета XMLDOM.
|