На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

Восстановление объекта

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
Восстановление объекта
 
Здравствуйте.
У меня есть объект, я делаю несколько изменений с mapCommitObject(), а затем хочу вернуть состояние объекта к исходному. Как мне это сделать?
 
В logapi.h есть ряд функций по работе с транзакциями., например,
// Отменить последнюю транзакцию
// hMap  - идентификатор открытой карты
// hSite - идентификатор открытой пользовательской карты
// Если после транзакции выполнялась сортировка карты
// или журнал пуст - возвращает ноль
// При ошибке возвращает ноль,
// иначе - количество восстановленных операций

_MAPIMP long int _MAPAPI mapLogAbolitionLastAction(HMAP hMap, HSITE hSite);
 
Показалось слишком нетривиально. Сделал так:
Сохранил еще один экземпляр объекта mapCreateCopyObjectAsNew().
В нужный момент
mapReadCopyObjectData(object,object_backup);
// Тут пришлось сделать некоторое формальное (mapAppendPointPlane) изменение объекта, без этого mapCommitObject не обновлял карту
mapCommitObject(object);

В данном случае изменения в объекте только в метрике.
 
В чем вопрос? Для отката последней транзакции ответ выше.
 
Нет вопроса. Написал, вдруг кому-нибудь пригодится.
Страницы: 1
Читают тему (гостей: 1)



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности