Сообщение от Rulikkk
|
Спасибо за быстрый ответ!
В физическом смысле, нам необходимо уметь отвечать на следующие вопросы:- Какие точки сегодня уже были посещены машиной X?
- Посетила ли уже машина X сегодня точку Y?
Эти данные нужны для отображения пользователю, чем своевременнее, тем лучше.
Так же, в конце дня, эти данные будут использованы для сверки плана и реального маршрута, и принятия дальнейших решений в случае наличия отклонений.
|
Именно на эти вопросы Вы и получили ответ выше.
Цитата:
|
Расскажите, пожалуйста, про не-OLE способы, потому что использовать это древнее средство взаимодействия мне тоже не кажется лучшим вариантом.
|
Во-первых, не ДРЕВНЕЕ. Ничего другого универсального для обмена данными между Windows-программами, написанными под разными платформами и на разных языках - не придумано.
Во-вторых, данный способ Вам не подходит и служит обычно для оперативного тревожного реагирования. Когда надо определить, на момент последних данных, полученных от терминала машина в КТ или нет. Для этого делается специальный запрос к серверу (описан в документации к серверному ПО), потом Вы сами пишете проверку: входит или не входит машина в полигон (алгоритм с подсчетом пересечения количества сторон несамопересекающегося полигона лучом брошенным в произвольном направлении из точки с координатами х,у). Но это для конкретных моментов времени.
При запросе через OLE - ПО рассчитывает всю историю посещений с гораздо более высокой точностью, разбивает на рейсы по нужным признакам, определяет ближайшие адреса для точек входа и выхода (если подключена адресная база), пробеги внутри КТ, моточасы и многие другие параметры...
Плюс, с точки зрения кода, это займет на три порядка меньше кода.
Плюс, Вы не задумываетесь о таких вещах, как о фильтрации координат трека, соприкасающихся КТ и о многом другом (адресах, пробегах внутри КТ и т.д. и т.п.)