Запрос в автограф о наличии адреса из 1с 8.1
Добрый день ВСЕМ!
Задача такая... В 1с 8.1 используем стандартную процедуру подбора адреса. В итоге получаем строку адреса типа: 623702, Свердловская обл, Березовский г, Шарикова ул, дом № 5 Теперь нам необходимо определить точные координаты широты и долготы. Можно ли сделать запрос из 1с через оле в автограф о корректности адреса? Если такого адреса нет, автограф возвращает ошибку. если есть, то получаем точные координаты с широтой и долготой. Допустим если адреса нет, то автограф бы указал ближайший адрес существующий самый близкий к запросу , с указанием расстояния до него. Т.е. будем делать запрос пока не найдется точный адрес или с расстоянием до ближайшего сущ. адреса. Какими командами это можно сделать? |
Леонид Борисович, тут же весь вопрос в том, что составители карт и адресных баз не руководствовались правилами, используемыми в 1С, поэтому как оно будет в каждой конкретной карте и адресной базе - кто его знает...
Поэтому логика совпадений тут - вызывает некоторые сомнения. Тот же 2ГИС не очень работает со строкой из 1С... |
т.е. это не возможно в принципе ?
|
Цитата:
|
Функция отображение же адреса на карте есть. Стало быть координаты по адресу находятся. Думаю, несложно сделать почти такую же функцию, только возвращающую координаты...
ShowAddress Показать адрес на карте BSTR City, BSTR Street, BSTR House HRESULT |
Через оле используют только готовую функцию...
"несложно сделать почти такую же функцию, только возвращающую координаты..." кто такую функцию делать будет? Добавлено через 2 минуты ладно, попробуем через ShowAddress |
Цитата:
|
Добрый день!
а кстати как использовать команду ShowAddress ? Также? AG=Новый COMОбъект("AutoGRAPH.AutoGRAPHAutomation"); // Создаем COM-объект ddd=AG.WaitForInitializing(); // Ждем окончания инициализации объекта а дальше так? КООРДИНАТЫ = AG.ShowAddress("Екатеринбург","Лен на","5") ; так? |
Типа того. А что ?
|
кстати, в вашей системе ведь куча адресных систем. и гугл и яндекс. тут и "обкатывать фукнционал".
Добавлено через 1 минуту нет просто спрашиваем... т.к. этот раздел первый раз пробуем отработать. Добавлено через 2 минуты хотя если ShowAddress работает, то все замечательно в этот направлении. Добавлено через 15 секунд проверим. |
Цитата:
Такую функцию несложно написать самому, т.к. она не имеет по сути никакого отношения к нашему ПО. Однако, обращу Ваше внимание, что такие запросы требуют намного больше времени, чем поиск в локальной базе, а при оффлайн работе - таймауты могут и вовсе растянуть получение отчета с такими запросами на неделю... |
добрый день!
что то не получается в этом запросе правильный ответ ... AG = "" ; AG=Новый COMОбъект("AutoGRAPH.AutoGRAPHAutomation"); ddd=AG.WaitForInitializing(); Попытка AG.SHOWADDRESS(Город,Улица,Дом); Широта = AG.CurrentLatitude ; Долгота = AG.CurrentLongitude ; Исключение Широта = "" ; Долгота = "" ; КонецПопытки ; AG = "" ; При обращении в систему идет привязка к какой то машине и соответственно выдает ответ не по запросу, а по этой машине. Получается надо отключить и группы и машины перед запросом AG.SHOWADDRESS(Город,Улица,Дом); Как правильно это сделать? |
это попытка сделать запрос в систему автограф из 1с.
Добавлено через 8 минут и получить широту и долготу по адресу Добавлено через 8 минут потаемся сделать через ШД = AG.SHOWADDRESS(Город,Улица,Дом); ШД после отработки неопределено. Добавлено через 11 минут что то мы не так делаем, а как делать ... не знаем...:sos: |
Леонид Борисович,
функция SHOWADDRESS делает только одну вещь - отображает переданный адрес на карте в АвтоГРАФе, если такой адрес найден в адресной базе для возврата координат этого адреса пока функции нет |
вообщем в системе автограф это не решаемо?!
|
Можно добавить соотв. функции, но в 4-ой версии (с авторизацией)
|
Текущее время: 08:27. Часовой пояс GMT. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot