ООО "ЛесИС" - ГИС TOPOL-L для лесного хозяйства, лесоустройства и арендаторов лесного фонда
ООО "ЛесИС" - ГИС TOPOL-L для лесного хозяйства, лесоустройства и арендаторов лесного фонда
lesis@ya.ru
+7(916)615-42-77

ФОРУМ ТЕХПОДДЕРЖКИ ГИС TOPOL-L

Объявление

Для участия в работе закрытой, технической части форума нужно быть пользователем ГИС TopoL-L2 (10.0) и Зарегистрироваться!

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » ФОРУМ ТЕХПОДДЕРЖКИ ГИС TOPOL-L » РАБОТА С ТАКСАЦИОННЫМИ БАЗАМИ ДАННЫХ И НСИ » Справочник Типы леса: сортировка строк.


Справочник Типы леса: сортировка строк.

Сообщений 1 страница 17 из 17

1

Сейчас строки в справочнике "типы леса" расположены непонятно как. Решил их отсортировать по смыслу, но оказалось что такой функции нет.
Открыл  в ексель dbf файл 6-ой версии. Расположил типы леса так как мне надо. Перенёс в dbf и импортировал в 10-ю версию.
Результат: строки как были в разнобой так и остались.
Логика такая:
С лиш
С бр
С чер
...
...
...
...
Е чер
Е кис
Едм
...
...
0

Допустим:
Вот этот вот "0" в последней строке перенести на первую строку.

P.S.  Вариант удалить всё и заполнить так как надо не подходит.

Задача не срочная, но вариант решения необходим.

Отредактировано Юрий (11.11.2021 10:48:54)

2

Юрий написал(а):

Сейчас строки в справочнике "типы леса" расположены непонятно как.

Дело в том, что в 10-ой версии классификационные коды везде числовые, а для справочников с текстовыми кодами числовой код вычисляется программно по кодам входящих букв.

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

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

3

Дмитрий Александрович написал(а):

через контекстное меню в клетке поля "тип леса" можно отсортировать справочник по любому полю

Оно не так сортирует.
Постараюсь ближе к вечеру привести примеры.

Отредактировано Юрий (11.11.2021 14:22:03)

4

Юрий написал(а):

Оно не так сортирует.

Я не думаю, что Д.А. сам программировал режимы сортировки. Это же штатное "свойство" столбца таблицы, заложенное в средствах разработки (а может и в библиотеках ОС - не важно):
1. Курсор над нижней частью заголовочной ячейки поля выглядит стрелкой (у меня черной) вниз и клик на этой части ячейки приводит к выделению столбца. Курсор над верхней частью заголовочной ячейки поля выглядит стандартно и клик в этом месте приводит к сортировке столбца.
2. Если нажать курсор для сортировки с Ctrl, то в сортировке будет участвовать оба столбца в заданной последовательности.
3. Сортировка столбца осуществляется по возрастанию или убыванию текстовых или числовых значений - смена направления происходит повторными кликами.
На мой взгляд это более чем исчерпывающий набор сортировок.
Если вывод сортировки нужен в последовательности, не соответствующей порядку букв в алфавите или чисел, то это возможно только через классификационные коды.
Однако для нескольких справочников такого рода классификаторов не существует и нам для обеспечения уникальности значений классификационных кодов пришлось использовать механизм "самошифрования" этого справочника, как альтернативы обезличенному автоинкременту.
Это себя оправдало полностью так как за 20 лет обещаний со стороны РЛХ и РЛИ единой системы ведения нормативной базы для разработчиков так и не было предложено. Увы.

5

Я посмотрел реализацию: в редакторах НСИ, как в локальном, который можно вызвать в повыдельном модуле, так и в самом специализированном модуле НСИ, возможность сортировки по любому из полей реализована. Интерфейс управления - через заголовки полей.

В выпадающих списках повыдельного модуля, из которых можно выбирать значения для вставки/замены, сортировка фиксированная в запросе SQL и везде была по классификационному полю KL. Для справочников с вычисляемым значением ключа, соглашусь, это неудобно. Поэтому для поля "ТЛУ" и поля "Тип леса" я изменил сортировку на Код ввода (Kod), в алфавитном порядке значений этого кода. Думаю, так будет удобнее в работе.

6

Дмитрий Александрович написал(а):

Поэтому для поля "ТЛУ" и поля "Тип леса" я изменил сортировку на Код ввода (Kod), в алфавитном порядке значений этого кода. Думаю, так будет удобнее в работе.

Это обновление ещё не выложено?

7

Юрий написал(а):

Это обновление ещё не выложено?

Нет, другие новые функции ещё не протестированы.

8

В 856-ой версии другая сортировка должна работать.

9

Дмитрий Александрович написал(а):

В 856-ой версии другая сортировка должна работать.

Выложена.

10

Посмотрел. Да чуть удобнее стало. Но это не то что я хотел.

11

Юрий написал(а):

Но это не то что я хотел.

Сортировка по алфавиту или числовому значению в справочнике есть, как пользоваться я описал выше:

Грешнов написал(а):

1. Курсор над нижней частью заголовочной ячейки поля выглядит стрелкой (у меня черной) вниз и клик на этой части ячейки приводит к выделению столбца. Курсор над верхней частью заголовочной ячейки поля выглядит стандартно и клик в этом месте приводит к сортировке столбца.
2. Если нажать курсор для сортировки с Ctrl, то в сортировке будет участвовать оба столбца в заданной последовательности.
3. Сортировка столбца осуществляется по возрастанию или убыванию текстовых или числовых значений - смена направления происходит повторными кликами.

Определить в самом справочнике порядок сортировки, отличный от сортировки по алфавиту или возрастанию чисел, можно только классификационными кодами, которых для этих справочников не существует. Поэтому невозможно. Требуйте у своего начальства доработки единой системы классификаторов (начатой 11 лет назад) и выкладки ее в общий доступ. Подумаем тогда что можно сделать, если конечно они исправят кучу косяков, которые сделали в первой версии этого справочника от 2012г.

12

А нет возможности искусственно добавить поле (цифровое), прономеровать строки: 1, 2, 3, ....... 15; и отсортировать по этому полю?

13

Юрий написал(а):

А нет возможности искусственно добавить поле (цифровое), прономеровать строки: 1, 2, 3, ....... 15; и отсортировать по этому полю?

Теоретически Вы можете в акцессе добавить поле, например, Sort, N (или как уже есть в других справочниках - KL или NomPor) и оно будет работать как Вам хочется. Но я понятия не имею не отразится ли это на чем-либо (например, подсистема обновления БД НСИ), т.к. не проверяли подобных экспериментов. Правильнее такие вопросы решать как какой то общий, поддерживаемый случай. Нужно подумать над этим.

14

Грешнов написал(а):

Но я понятия не имею не отразится ли это на чем-либо

Отразиться. при следующем обновлении, скорее всего просто затрётся.

15

Юрий написал(а):

Отразиться. при следующем обновлении, скорее всего просто затрётся.

Затирается только деморегион и, в основном, при переустановках, т.к. в НСИ мы сейчас почти не лезем. А о Ваших справочниках обновления даже не знают. Я имел в виду другое - при запуске самой программы происходит проверка и обновление форматов баз данных, в т.ч. НСИ. Используется достаточно мудреный алгоритм и прежде чем что то менять нужно проверять не отразится ли это на этой функции... да и многих других, где используются НСИ. Количество строк исходного кода уже давно огромно и объемы проверок растут в геометрической прогрессии. Иначе неизбежны жалобы в формате "ничего не делал, а перестало работать". )
В общем, нужно подумать прежде чем добавлять поля или преобразовывать существующие.

16

Юрий написал(а):

А нет возможности искусственно добавить поле (цифровое), пронумеровать строки: 1, 2, 3, ....... 15; и отсортировать по этому полю?

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

Для выпадающих списков выбора значений в отличие от специализированных редакторов НСИ организовать возможность  произвольной сортировки по выбору пользователя весьма трудоёмко. Поэтому добавление поля сортировки для этих справочников - более простой для реализации вариант.

17

Дмитрий Александрович написал(а):

оправдан для двух справочников с вычисляемым кодом

В принципе, можно еще подумать об отказе от автозаполнения KL, оставив его только на импорте из 6-ки как стартовое значение, и придании этому полю статус классификационного - пусть заполняют по нужному им алгоритму. Мне кажется, актуальность этого решения уже снизилась. Вероятность того, что федералы сделают, наконец, единый классификатор для трех разных систем ТЛ и ТЛУ близка к нулю. Они даже мимо ОКАТО пролетели... И судя по тому как это решается сейчас и предполагается решать дальше - будет только хуже. ((( Надо подумать.


Вы здесь » ФОРУМ ТЕХПОДДЕРЖКИ ГИС TOPOL-L » РАБОТА С ТАКСАЦИОННЫМИ БАЗАМИ ДАННЫХ И НСИ » Справочник Типы леса: сортировка строк.



Почтовый адрес для ЗАКАЗНЫХ писем:
С.П.Грешнов, +7(916)615-42-77, 108832, А/Я №1
НЕ ИСПОЛЬЗОВАТЬ курьерскую доставку!!!
E-Mail: lesis@ya.ru
Вопросы общего характера:
+7(916)615-42-77
РОССИЙСКАЯ ФЕДЕРАЦИЯ
Общество с ограниченной ответственностью "ЛЕСИС"
ОГРН: 1035007204902, ИНН: 5036046400, КПП: 503601001