Разное

1С этот хост неизвестен line 1048: Этот хост неизвестен 1С: как исправить

Содержание

Этот хост неизвестен 1с line 1068 – 4apple – взгляд на Apple глазами Гика

Эта публикация описывает порядок соединения Тонкого клиента 1С с Кластером и Сервером 1С:Предприятие 8.x и содержит некоторые замечания о настройках соединения на стороне сервера.

Подключение тонких клиентов к кластеру 1С и серверам кластера выполняется протоколом TCP/IP.

  • Кластер прослушивает порт :1541
  • Сервер прослушивает порт :1560

Разумеется эти порты должны быть открыты на соответствующих хостах.

Для доступа к кластеру и серверу из интернет эти порты следует правильно перенаправить.

Подключение Тонкого клиента к серверу 1С выполняется в два этапа, на первом используются реквизиты подключения указанные в настройке информационной базы клиента, на втором к ним добавляются реквизиты сервера полученные от кластера 1С.

1. Подключение к кластеру 1С

Тонкий клиент подключается к кластеру по имени или адресу указанному в настройке. Подключение выполняется через порт :1541. Результатом успешного обращения клиента к кластеру является имя сервера для дальнейшего подключения, но внешне это никак не проявляется. Если подключение не выполнено возникает ошибка ‘Этот хост неизвестен’:

Ошибка server_addr=MyServer descr=11001(0x00002AF9): Этот хост неизвестен. line=1050 file=srcDataExchangeCommon.cpp.

2. Подключение к серверу 1С

Доступ клиента к серверу выполняется по имени в точности такому, как оно было задано в диспетчере кластера. Подключение выполняется через порт :1560. Результатом обращения клиента к серверу является открытие окна авторизации. Если подключение не выполнено то возникает такая же ошибка ‘Этот хост неизвестен’.

Особенность подключения через Интернет

Если в диспетчере кластера 1С указаны локальные имена серверов, то описанный выше порядок подключения Тонкого клиента будет работать в локальной сети без замечаний, но при подключении через Интернет возникает особая ситуация.

Классический подход подключения из Интернет состоит в указании вместо локального имени Кластера серверов ip-адреса шлюза (или его полного доменного имени mygate.com), на котором порт 1541 перенаправлен на локальный хост Кластера серверов 1С, а порт 1560 перенаправлен на локальный хост Сервера 1С.

Однако подобное подключение тоже приведет к уже описанной выше ошибке ‘Ошибка server_addr=MyServer descr=11001 (0x00002AF9): Этот хост неизвестен. line=1050 file=srcDataExchangeCommon.cpp’.

На первых взгляд эта ошибка содержит парадокс, поскольку она сообщает о неизвестном сервере MyServer, в то время как был указан IP. Но парадокса тут нет. Введенный IP указывает именно на кластер серверов, который на первом этапе в ответ на запрос клиента сообщил зарегистрированное в кластере локальное имя сервера 1С (MyServer) для следующей фазы подключения, но подключиться по локальному имени (MyServer) в удаленной сети через интернет не удастся, поскольку это имя не имеет в сети клиента корректного разрешения (имеется ввиду dns-разрешение имени MyServer -> 123.45.67.89).

Простое решение

Простым решением этой проблемы будет дописать строку разрешения для этого доменного имени в файл ..WindowsSystem32Driversetchosts

Технический блог специалистов ООО»Интерфейс»

  • Главная
  • Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.

Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.

  • Автор: Уваров А.С.
  • 22.05.2014

Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.

Общая информация

Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:

В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:

В нашем распоряжении имеются два сервера под управлением Ubuntu 12.04 x64, на одном из них установлен сервер 1С:Предприятие версии 8.3, на другом PostgreSQL 9.04 от Ethersoft, а также клиент под управлением Windows. Напоминаем, что клиент работает только с сервером 1С, который, в свою очередь, формирует необходимые запросы к серверу СУБД. Никаких запросов от клиента к серверу управления базами данных не происходит.

Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)

Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:

и приведите ее к виду:

где 192.168.31.0/24 – диапазон вашей локальной сети. Если такой строки нет, ее следует создать в секции IPv4 local connections.

Сервер баз данных не обнаружен
could not translate host name «NAME» to address: Temporary failure in name resolution

На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата.

А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows.

Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.

Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.

Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:

где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.

Ошибка СУБД: DATABASE не пригоден для использования

Гораздо более серьезная ошибка, которая говорит о том, что вы установили несовместимую с 1С:Предприятие версию PostgreSQL или допустили грубые ошибки при установке, например не установили все необходимые зависимости, в частности библиотеку libICU.

Если вы имеете достаточный опыт администрирования Linux систем, то можете попробовать доустановить необходимые библиотеки и заново инициализировать кластер СУБД. В противном случае PostgreSQL лучше переустановить, не забыв удалить содержимое папки /var/lib/pgsql.

Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x Postgre@Etersoft, подробности смотрите ниже.

Ошибка СУБД:
ERROR: could not load library «/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so»

Довольно специфичная ошибка, характерная для сборок 9.1.x и 9.2.x Postgre@Etersoft, также может приводить предыдущей ошибке. Причина кроется в неисправленной ошибке в библиотеке fasttrun.so. Решение – откатиться на сборку 9.0.x Postgre@Etersoft.

Ошибка СУБД
ERROR: type «mvarchar» does not exist at character 31

Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль Администрирование серверов 1С Предприятия

или через средство запуска 1С.

Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (по паролю)

Очень простая ошибка. Неправильно указан пароль суперпользователя СУБД postgres. Вариантов решения два: вспомнить пароль или изменить его. Во втором случае вам нужно будет изменить пароль в свойствах всех существующих информационных баз через оснастку Администрирование серверов 1С Предприятия.

Сервер баз данных не обнаружен
FATAL: database «NAME» does not exist

Еще одна очень простая ошибка. Смысл ее сводится к тому, что указанная БД не существует. Чаще всего возникает из-за ошибки в указании имени базы. Следует помнить, что информационная база 1С в кластере и база данных СУБД – две разные сущности и могут иметь различные имена. Также следует помнить, что Linux системы чувствительны к регистру и для них unf83 и UNF83 два разных имени.

При подключении к базе, расположенной на сервере 1С:Предприятия, возникает ошибка «…Windows Sockets – 11001 (0x00002AF9). Этот хост неизвестен…». Как вылечить?

Виды ошибок:

или

Ошибка подключения к базе, расположенной на сервере 1С:Предприятия, возникает не всегда!
Подключение из Windows XP обычно проходит без особых проблем, при этом аналогичное подключение из Windows 7 может завершаться аварийно:
Ошибка 11001 – Windows Sockets
Лечится эта ошибка довольно просто! Достаточно внести изменения в файл hosts

Файл hosts представляет собой
Обычный текстовый файл (не имеющий расширения). В hosts-файле по умолчанию прописан всего один IP-адрес (127.0.0.1), зарезервированный для localhost, то есть для локального ПК. Файл hosts представляет собой обычный текстовый файл (не имеющий расширения).

Где находится файл hosts
• Windows 95/98/ME – WINDOWS;
• Windows NT/2000/XP/Vista/7 – Windows/System32/drivers/etc.

И так у нас Win7 открываем C:WINDOWSsystem32driversetchosts, и добавляем в него ip-адрес вашего сервера.
Например так:
192.168.1.100 sermac

Сохраните, и попробуйте через пару минут запустить программу.

Оцените статью: Поделитесь с друзьями!

1с ошибка этот хост неизвестен

На чтение 6 мин. Просмотров 4 Опубликовано

При подключении к удаленной базе 1С через ComОбъект по ip адресу выходит ошибка.

Полный текст ошибки

Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Ошибка при выполнении операции с информационной базой
server_addr= descr=11001(0x00002AF9): Этот хост неизвестен. line=1048 file=srcDataExchangeCommon.cpp

Исправление

Проверить открыты ли порты 1540,1541,1560-1591 (обычно такие) в firewall.

Windows-путь: C:WindowsSystem32driversetchosts

Linux-путь: /etc/hosts.

Вести бизнес без рекламы все равно, что подмигивать девушкам в полной темноте

Технический блог специалистов ООО”Интерфейс”

  • Главная
  • Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.

Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.

  • Автор: Уваров А.С.
  • 22.05.2014

Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.

Общая информация

Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:

В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:

В нашем распоряжении имеются два сервера под управлением Ubuntu 12.04 x64, на одном из них установлен сервер 1С:Предприятие версии 8.3, на другом PostgreSQL 9.04 от Ethersoft, а также клиент под управлением Windows. Напоминаем, что клиент работает только с сервером 1С, который, в свою очередь, формирует необходимые запросы к серверу СУБД. Никаких запросов от клиента к серверу управления базами данных не происходит.

Сервер баз данных не обнаружен
ВАЖНО: пользователь “postgres” не прошёл проверку подлинности (Ident)

Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:

и приведите ее к виду:

где 192.168.31.0/24 – диапазон вашей локальной сети. Если такой строки нет, ее следует создать в секции IPv4 local connections.

Сервер баз данных не обнаружен
could not translate host name “NAME” to address: Temporary failure in name resolution

На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата.

А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows.

Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.

Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.

Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:

где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.

Ошибка СУБД: DATABASE не пригоден для использования

Гораздо более серьезная ошибка, которая говорит о том, что вы установили несовместимую с 1С:Предприятие версию PostgreSQL или допустили грубые ошибки при установке, например не установили все необходимые зависимости, в частности библиотеку libICU.

Если вы имеете достаточный опыт администрирования Linux систем, то можете попробовать доустановить необходимые библиотеки и заново инициализировать кластер СУБД. В противном случае PostgreSQL лучше переустановить, не забыв удалить содержимое папки /var/lib/pgsql.

Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x Postgre@Etersoft, подробности смотрите ниже.

Ошибка СУБД:
ERROR: could not load library “/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so”

Довольно специфичная ошибка, характерная для сборок 9.1.x и 9.2.x Postgre@Etersoft, также может приводить предыдущей ошибке. Причина кроется в неисправленной ошибке в библиотеке fasttrun.so. Решение – откатиться на сборку 9.0.x Postgre@Etersoft.

Ошибка СУБД
ERROR: type “mvarchar” does not exist at character 31

Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль Администрирование серверов 1С Предприятия

или через средство запуска 1С.

Сервер баз данных не обнаружен
ВАЖНО: пользователь “postgres” не прошёл проверку подлинности (по паролю)

Очень простая ошибка. Неправильно указан пароль суперпользователя СУБД postgres. Вариантов решения два: вспомнить пароль или изменить его. Во втором случае вам нужно будет изменить пароль в свойствах всех существующих информационных баз через оснастку Администрирование серверов 1С Предприятия.

Сервер баз данных не обнаружен
FATAL: database “NAME” does not exist

Еще одна очень простая ошибка. Смысл ее сводится к тому, что указанная БД не существует. Чаще всего возникает из-за ошибки в указании имени базы. Следует помнить, что информационная база 1С в кластере и база данных СУБД – две разные сущности и могут иметь различные имена. Также следует помнить, что Linux системы чувствительны к регистру и для них unf83 и UNF83 два разных имени.

При подключении к базе, расположенной на сервере 1С:Предприятия, возникает ошибка “…Windows Sockets – 11001 (0x00002AF9). Этот хост неизвестен…”. Как вылечить?

Виды ошибок:

или

Ошибка подключения к базе, расположенной на сервере 1С:Предприятия, возникает не всегда!
Подключение из Windows XP обычно проходит без особых проблем, при этом аналогичное подключение из Windows 7 может завершаться аварийно:
Ошибка 11001 – Windows Sockets
Лечится эта ошибка довольно просто! Достаточно внести изменения в файл hosts

Файл hosts представляет собой
Обычный текстовый файл (не имеющий расширения). В hosts-файле по умолчанию прописан всего один IP-адрес (127.0.0.1), зарезервированный для localhost, то есть для локального ПК. Файл hosts представляет собой обычный текстовый файл (не имеющий расширения).

Где находится файл hosts
• Windows 95/98/ME – WINDOWS;
• Windows NT/2000/XP/Vista/7 – Windows/System32/drivers/etc.

И так у нас Win7 открываем C:WINDOWSsystem32driversetchosts, и добавляем в него ip-адрес вашего сервера.
Например так:
192.168.1.100 sermac

Сохраните, и попробуйте через пару минут запустить программу.

Ошибка сетевого доступа к серверу — База знаний Etersoft

Большинство проблем при подключении к серверу 1С:Предприятия связаны с адресами машин и доступностью серверов кластера сервера 1С.

Ошибка «Затребованное имя допустимо»

При подключении к серверу 1С:Предприятия получаем ошибку:

Server_addr=tcp://localhost.localdomain:1562 descr=Ошибка
сетевого доступа к серверу (Windows Socket-11004(0х00002AFC). Затребованное
имя допустимо и оно найдено в базе данных, но для имени
отсутствует связанные с ним данные,
которые были разрешены для него.) line=259
file=.\src\DataExchangeTcpClientlmpl.cpp 

Ошибка 11004 показывает, что указанному имени сервера в DNS нет соответствующей записи типа A, которая определяет его IP адрес. [1]

"Ошибка при выполнении операции с информационной базой"
"Ошибка сетевого доступа к серверу"
(Windows Sockets 11001(0x00002AF9). Этот хост неизвестен. )
 

Возможное решение

На ошибку «Затребованное имя допустимо и оно найдено в базе данных, но для имени отсутствует связанные с ним данные, которые были разрешены для него» в файлах

/home/usr1cv81/1c/1cv81/srvibrg.lst и /home/usr1cv81/1c/1cv81/reg_1541/s1CV8Reg.lst

нужно заменить везде localhost.localdomain (или адрес, который там указан) на IP-адрес сервера сервера (в кавычках), либо на имя машины (тоже в кавычках). При указании имени машины нужно обеспечить для имён машин прямую зону в DNS, а для IP-адресов — обратную.

Проверить этот совет не представилось возможным, т.к. не удалось воспроизвести проблему

Ошибка сетевого доступа к серверу

При запуске базы в режиме предприятия получаем ошибку:
descr = Ошибка сетевого доступа к серверу
(Windows Sockets — 10004(0x00002714).@) line=870 file=.\src\DataExchangeServerImpl.cpp

В качестве решения нужно прописать адрес и имя сервера в /etc/hosts

Дальнейшие действия для локализации проблемы.

1. Удостовериться в правильной и полной установки пакетов.

   rpm -qa | grep nterprise

должно быть примерно:

1C_Enterprise-ws-nls-8.1.12-101

1C_Enterprise-crs-8.1.12-101

1C_Enterprise-server-nls-8.1.12-101

1C_Enterprise-crs-nls-8.1.12-101

1C_Enterprise-common-nls-8.1.12-101

1C_Enterprise-ws-8.1.12-101

1C_Enterprise-server-8.1.12-101

1C_Enterprise-common-8.1.12-101

2. Удостовериться в правильном и полном запуске сервера

  1. ps aux | grep 1c

(должно быть ragent, rmngr, rphost)

3. Удостовериться в наличии и правильном содержании файлов srvribrg.lst 1CV8Reg.lst

4. Включить логи и изучить ошибки http://kb.etersoft.ru/1С:Предприятие_8.1:_Включение_логов

(возможные ошибки и их решение можно посмотреть здесь http://www.gilev.ru/1c/81/techlog/)

<meta http-equiv=»content-type» content=»text/html; charset=utf-8″></meta>

Недоступность порта

Возможно не все сервера на кластере запустились. Проверить можно командой netstat -apn | grep :15 (выведет процессы, слушающие порты 15xx). Незапущенность серверов обычно связана с неверным указанием адресов узлов в конф. файлах. /home/usr1cv81/1c/1cv81/srvibrg.lst и /home/usr1cv81/1c/1cv81/reg_1541/s1CV8Reg.lst

Несоответствие системы

Если при первом запуске кластера выдаётся ошибка, и появляется только файл /home/usr1cv81/1c/1cv81/srvibrg.lst практически без содержимого, возможно нужно обновить систему.

Решение проблемы, когда не найден сервер 1С:Предприятие

Решаемая задача: Восстановление работоспособности сервера и программы 1С.

Для выполнения описанных действий требуется учетная запись Администратора.

Проверка программ и служб на работоспособность

Шаг 1. Проверяем доступность порта соединения

С:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 –port

Этот адрес меняется в зависимости от версии 1С:

  • C:\Program Files (x86)\1cv8\\bin — для 32-разрядной версии сервера «1С:Предприятие» версии 8.3
  • C:\Program Files\1cv8\\bin — для 64-разрядной версии сервера «1С:Предприятие» версии 8.3
  • C:\Program Files (x86)\1cv82\\bin — для 32-разрядной версии сервера «1С:Предприятие» версии 8.2
  • C:\Program Files\1cv82\\bin — для 64-разрядной версии сервера «1С:Предприятие» версии 8.2

Шаг 2. Проверяем в процессах есть ли «rphost.exe» «ragent.exe» «rmngr.exe», он должен быть активен.

Шаг 3. Проверяем запущен ли агент сервера 1С в службах и сравниванием версию и порт в строке «Исполняемый файл»

Шаг 4. Проверяем работоспособность сервера MS SQL

Выполняем: Пуск – Программы — Microsoft SQL Server 2008 R2 (у Вас может быть любая версия ) — Средства настройки.

Напротив служб «SQL Server» и «Агент SQL Server» должен быть статус Работает.

Если всё запущено и не работает

Шаг 5. Останавливаем службу 1С

В командной строке:

net stop "1C:Enterprise 8.3 Server Agent (x86-64)"

Шаг 6. Переходим к удалению процессов

Далее по очередности удаляем процессы:

TASKKIll /F /FI "IMAGENAME eq rphost*"

TASKKIll /F /FI "IMAGENAME eq rmngr*"

TASKKIll /F /FI "IMAGENAME eq ragent*"

Шаг 7. Чистим временные папки и файлы

Далее нужно будет почистить папки 1С с временными файлами с папками типа:

По таким адресам чистим папки подобного типа как на картинке:

C:\Users\ «Пользователь»\AppData\Local settings\Application data\1C\1Cv82\
C:\Users\ «Пользователь»\AppData\Local settings\Application data\1C\1Cv8
C:\Users\ «Пользователь»\AppData\Roaming\1C\1Cv82
C:\Users\ «Пользователь»\AppData\Roaming\1C\1Cv8)
С:\Program Files\1cv8\srvinfo\reg_1541\

Когда выполнили все условия, переходим к шагу запуска 1С.

Шаг 8. Запускаем службу 1С

net start "1C:Enterprise 8.3 Server Agent (x86-64)"

Теперь всё должно работать.

php — SQLSTATE [23000]: нарушение ограничения целостности: 1048 Столбец ‘first_name’ не может быть пустым

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

  6. О компании

.

Ошибка соединения NIEHOST_UNKNOWN (-2) при использовании cl_http_client => create_by_url.

Привет, сообщество.

Я создаю программу для получения данных из остальной ссылки.

Я слежу за учебниками по sdn, но получаю ошибку:

Подключиться к (назовите мой хост) .com.br: 80 не удалось: NIEHOST_UNKNOWN (-2).

Я нашел людей в sdn с такой же ошибкой и следую вашим инструкциям, но проблема не исчезла.

Это мой код, и ошибка возникла после lo_http_client-> receive ..

 ДАННЫЕ: строка lv_http_url TYPE,

          lv_result TYPE строка,

          lo_ixml ТИП ССЫЛКА if_ixml,

          lo_istream ТИП ССЫЛКА НА if_ixml_istream,

          lo_streamfactory ТИП ССЫЛКА НА if_ixml_stream_factory,

          lo_document ТИП ССЫЛКА НА if_ixml_document,

          lo_parser ТИП ССЫЛКА НА if_ixml_parser,

          lo_http_client ТИП ССЫЛКА НА if_http_client.wa_dest-lat_f = 48451245 * (-1).

    wa_dest-lng_f = 22882449 * (-1).

    wa_dest-lat_t = 46225189 * (-1).

    wa_dest-lng_t = 23538130 * (-1).

    КОНДЕНСИЯ: wa_dest-lat_f,

             wa_dest-lng_f,

             wa_dest-lat_t,

             wa_dest-lng_t.

* Подготовьте URL-адрес для API DistanceMatrix от координат адреса и до координат адреса

    СЦЕПИТЬ

      'http://kkkkkxxxx.com.br/Roteirizador/RouteService.svc/rest/Solve?origem='
       wa_dest-lat_f ';' wa_dest-lng_f ','

      '& destino =' wa_dest-lat_t ';' wa_dest-lng_t

      INTO lv_http_url.* Получить клиента с url

    СПОСОБ ВЫЗОВА cl_http_client => create_by_url

      ЭКСПОРТ

        url = lv_http_url

      ИМПОРТ

        client = lo_http_client

      ИСКЛЮЧЕНИЯ

        аргумент_not_found = 1

        plugin_not_active = 2

        internal_error = 3

        ДРУГИЕ = 4.

    lo_http_client-> отправить (

      ИСКЛЮЧЕНИЯ

       http_communication_failure = 1

       http_invalid_state = 2).

    lo_http_client-> получить (

      ИСКЛЮЧЕНИЯ

       http_communication_failure = 1

       http_invalid_state = 2

       http_processing_failed = 3).ОЧИСТИТЬ lv_result.

    lv_result = lo_http_client-> response-> get_cdata ().

    lo_ixml = cl_ixml => создать ().

    lo_streamfactory = lo_ixml-> create_stream_factory ().

    lo_istream = lo_streamfactory-> create_istream_string (

                                     lv_result).

    lo_document = lo_ixml-> create_document ().

    lo_parser = lo_ixml-> create_parser (

                           stream_factory = lo_streamfactory

                           istream = lo_istream

                           документ = lo_document).

Я создал соединение sm59 с соединением типа G, и возникла та же ошибка.

В chrome jason view все работает.

Что не так?

Спасибо.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *