Nikita
Зарегистрирован: 28.04.2009 Сообщения: 2 Откуда: Екатеринбург
|
Добавлено: Чт 22 Окт 2009 16:57 Заголовок сообщения: работа с MapObject(s?), VBScript |
|
|
здравствуйте. написал такой вот скрипт:
Код: | sub
...
set mapobjs = Application.ActiveDb.MapObjects
set objsqry = mapobjs.QueryByLayers("some_layer_id")
objsqry.Reset
do
idcur = objsqry.ObjectID
set objcur = mapobjs.GetObject(idcur)
if (objcur.SemData.GetValue("t1","f1",0) <> "" and objcur.SemData.GetValue("t1","f1",0)) then
x = Int((objcur.X1 + objcur.X2)/2)
y = Int((objcur.Y1 + objcur.Y2)/2)
objcur.SemData.SetValue "t1", "f3", x, 0
objcur.SemData.SetValue "t1", "f4", y, 0
end if
objsqry.MoveNext
loop until objsqry.EOF
mapobjs.UpdateChanges
end sub |
вроде все работает как надо. но одна проблема возникла. в ходе работы (данных много) процесс Ингео сжирает оперативную память пропорционально количеству обработанных данных. облазил весь ingeointf.chm, и не нашел там функций для очистки памяти или завершения транзакций MapObject(s?). для самого вбскрипта тоже не нашел команд для какой-то очистки ссылок. подскажите пожалуйста, что нужно сделать. |
|