Оптимизация работы в Digitals

Месяца два назад начали вести земельный кадастр в Digitals.
Количество обьектов по слоям:

  • кварталов - 350;
  • участков - 4224;
  • угодий - 9032;
  • смежников - 13847.
    В процессе работы возникли вопросы:
  1. Каким образом ускорить процесс анализа карты (сейчас порядка 9 минут);
  2. Как ускорить сбор обьектов (после сбора каждого обьекта Digitals зависает на 1-1,5 секунды).
    ПК на базе Sempron 3000+.

Ваша карта хранится на SQL-сервере или в DMF-файле?

Скорее всего проблема вызвана наличием у вас в параметрах функции Parent. Эта функция крайне не рекомендуется к применению для загруженных карт, поскольку любое изменение в такой карте требует обновления топологии карты (анализ вложенности объектов).

Попробуйте отказаться от использования данной функции и все проблемы с быстродействием должны исчезнуть.

Карта хранится в DMF файле. Да, действительно, в одном из параметров есть наличие функции Parent - =Parent[23]:Parent[24]:Parent[25]:CUT(4,4,P[34])). В даном случае используем ее для формирования полного кадастрового номера участка. Как реализовать это без даной функции?

Заменить вычисляемый параметр обычным и заполнять его вручную. Для этого нужно убрать из имени формулу, начинающуюся с “=” и оставить там просто название, например Кадастровый номер.

Чтобы сохранить все существующие значения их можно скопировать в другой параметр перетягиванием на закладке Инфо (пометив все объекты, нажать левую кнопку мыши на ячейке с номером исходного параметра и перетянув на номер нового параметра).

Я не совсем представляю себе вашу технологию. Если вы ведете ИКК по приходящим к вам готовым файлам In4, то все они уже долнжны иметь кадастровый номер.
Если присваиваете сами, то для заполнения новых номеров можно использовать функцию Кадастровый номер, вызываемую кнопкой Калькулятор.

ИКК мы ведем по готовым файлам In4 (win и dos), а потом присваиваем кадастровые номера функцией Кадастровый номер. Я сделал, как вы подсказали. Большое спасибо. Скорость работы очень порадовала. Я немного оговорился, функция Parent была очень удобна для просмотра полного кадастрового номера. А также при формировании Регистрационных карточек и прочей документации.

В ручную ошибок будет больше.

Можно попробовать использовать более продвинутый вариант функции Parent:

Parent[i]<Параметр>[/i]

В круглых скобках указывается слой, в котором будет производиться поиск внешнего объекта.

Спасибо. Будем пробывать.

возникла проблема с импортом большого количества in4 в один файл (используется для проверки новых обменников, чтоб на зарегистрированные не налезли)
каким бы методом не импортировать файлы вставка/карта, файл/принять IN4, или просто перетащить папочку с обменниками в дигиталс, дигиталс начинает серьёзно думать совершает какие-то невероятные операции…
насколько мне объяснили это нововведения всяческие проверки in4, при этом импорт даже десятка обммеников занимает кучу времени!
решаю эту проблему, открыв обменники в старой версии 15.07.2004 года рождения, она прекрасно импортирует файлы с высокой скоростью :smiley: !
но проблема что эта версия ломанная, со всеми вытекающими последствиями :neutral_face: !
как можно экспортировать файлы, не проигрывая во времени? можно ли вернуть новому дигиталсу эту утраченую возможность, чтоб уж забыть про морально устаревший, ломаный диг?

Упоминать тут про наличие ломанного Дигиталса - уж совсем верх наглости :laughing:

Проблем с объединением не наблюдается у меня. Сливание в один 47 кварталов происходит за 10 секунд.

Проверьте свой normal.
Еще дигиталс подтормаживает если объединять всё в 1 большой файл. Лучше создать новый. в него всё слить, а потом уже вставлять в большой.

почему? проблема существует и с ней надо боротся! я двумя руками за лецинзионный дигиталс!
(работаю с ключом)
но если есть ряд лучших качеств у ломаного, то мне придется им пользоваться (я надеюсь разработчики меня поймут правельно).

при открытии 30 обменных файлов даже в “Чистом” дмф приводит к длительным последствиям
но уже намного быстрее чем в моем нормале, может всетаки нормал?

вопрос был поднят, после того как поинтересовался у разработчиков Антона и Александра об этом явлении, ответ: увеличение количество проверок именно ин4 файлов, но в моём случае мне надо получить только геометрию объектов для сверки с новоиспеченными файлами, перед регистрацией в дзк

я не призываю пользоваться ломаным софтом, я хотел лишь решения проблемы.

Анализ проводится только при открытии через Файл-Принять In4 ну и при записи, если включена проверка In4 при сохранении.

Проверил открытие 35 файлов In4 в одну карту, программа довольно быстро отработала (сек 20), при том, что там были обменники с десятком участков внутри.

мной проведен опыт:
открываю “чистый” дмф
Втавка\карта\IN4
30 обменников - 434 объектов
для дигиталс 2004года - 2.13сек
для дигиталс 15.09.2008 -10,16 сек

Буквально тиждень назад поставили ще дві нові програми. Так вони відкриваються 3 - 4 секунди. Це при чистому файлі. Просто запустив програму. Старий діджіталс відкривався миттєво.

А чиво же вы хотели?
С тем количеством добавлений и всяких новшеств. Не странно что оно открывается дольше. Хорошо еще что так. При открытии ведь подключаются всевозможные шаблоны. Читаются INI файлы. Так что всё закономерно по-моему!

Задержка при старте Digitals связана в первую очередь с поиском ключа защиты. В новых версиях выполняется больше различных проверок с целью защиты от взлома. Таже если вы используете сетевой ключ, задержка может быть связана с медленной работой сети.

Хочу внести маленькое предложение:
Нельзя ли для написания скриптов (Создание панели инструментов) и программного кода в Reports (не говоря о TCPScript) использовать аналогичный язык программирования и аналогичное обращение к одним и тем же командам. Потому что переключаться с одного программного кода на другой бывает очень даже проблематично :confused:

Нет. Скриптовый язык, используемый в панели инструментов - разработка команды дигитала, язык FastReport - часть соответствующего програмного компонента, используемого в модуле Reports. Последний, к слову, заведомо мощнее.

А вот в случае с TCP/IP команды, в принципе, те же, что и при скриптовании для панелей. Просто “заворачивать” их следует в другую оболочку, в программу на языке высокого уровня.

Смотрите также здесь:

А не проще ли воспользоватся обычной командой ДОС: Copy? in4 это же обычный текстовый файл. Кидаем файлы в одну папку пишем (для тех кто пользуется файловыми менеджерами) Copy *.in4 all.in4. Вуаля! В той же папочке получаем файл all.in4, открываем файл в Digitals … и … ВСЕ! При обьеме в 600 файлов (различной сложности) собрать их вместе у меня получилось меньше чем за 5 секунд, а открыть в Digitals … за 10 секунд.

Виникла проблема при використанні команди “Принять in4”. Раніше програма відхиляла всі файли, які “налазили” на вже існуючі. Приблизно з травня 2008 р. після чергового обновлення програми Digitals почав приймати всі файли не залежно чи вони перекриваються чи ні. Доводиться користуватись версією від 7 грудня 2007 р. Чи можна налаштувати програму так, щоб вона не приймала файли, які “налазять” на вже існуючі ділянки?

Срауже как-то не додул :blush:
Спасибо)