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

не создаётся копия объекта

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
не создаётся копия объекта
 
Почему-то не создаётся копия объекта:

HMAP mapId = mapGetObjectDocIdent(info) ;
HOBJ newObject = mapCreateCopyObjectAsNew(mapId, info);
mapClearDraw(newObject) ;
retCode = mapAppendSemanticUnicode (newObject, 9, L"1234567", 1024) ;
retCode = mapRegisterObjectByKey(newObject, "L00711310001");
retCode = mapCommitObject (newObject) ;


При вызове Commit возвращает 0, т.е. ошибку. :(
 
Просьба очередной свой вопрос задавать в отдельной теме, а не пытаться продолжать чужие темы с уже решенными вопросами по другой тематике.
Перенес Ваш вопрос в отдельную тему.


Цитата
Алексей Антонов написал:
При вызове Commit возвращает 0, т.е. ошибку.

Функция mapCommitObject выполняет физическое сохранение объекта на карту, то есть запись. До этого он находится в памяти.
Нулевой результат говорит о невозможности выполнения записи.
Как вариант, причиной может быть отсутствие прав на запись - либо карта не доступна пользователю для редактирования,  либо приложение ее открывает только для чтения.

Запросить, может ли редактироваться пользовательская карта, можно функцией

Код
  // Запросить - может ли карта редактироваться
  // hMap  - идентификатор открытой карты
  // hSite - идентификатор открытой пользовательской карты
  // Если нет - возвращает ноль

_MAPIMP long int _MAPAPI mapGetSiteEditFlag(HMAP hMap, HSITE hSite);


Определить, на какой пользовательской карте (HSITE) находиться Ваш объект в составе района работ (HMAP) можно с помощью функции mapGetObjectSiteIdent:
Код
  // Определить идентификатор открытого документа
  // для заданного объекта
  // При ошибке возвращает ноль

_MAPIMP HMAP _MAPAPI mapGetObjectDocIdent(HOBJ hObj);

  // Определить идентификатор открытой пользовательской карты
  // для заданного объекта
  // hMap  - идентификатор открытой основной карты
  // hObj  - идентификатор объекта пользовательской карты
  // При ошибке возвращает ноль

_MAPIMP HSITE _MAPAPI mapGetObjectSiteIdent(HMAP hMap, HOBJ hObj);
Страницы: 1
Читают тему (гостей: 1)



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

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