Как сортировать Колонки Таблиц?

Версия для печатиPDF-версия

Не затруднительно сортировать строки:

Таблица.Сортировать(Колонка1 Возр, Колонка2 Возр);

Подскажите, пожалуйста, существует подобный метод сортировки для колонок?

Для колонок подобного метода нет. А какой в этом смылс? Вы хотите отсортировать колонки по именам?

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

 

В таблице дерево

Строки, в предыдущем вопросе, я упоминал об этом: http://novichok1c.ru/vopros/kak-programmno-dobavit-kolonki-i-ne-poteryat-nastroyki-kolonok-sozdannyh-v-tablichnom-pole

 

В зависимости от выводимых данных, выводятся колонки, которые по сути являются отражением даты.

 

В дереве можно поменять дату и значение перемещается в нужную колонку…

 

Соответственно, если выведено 10 колонок с датами, причем не по порядку, Пример:

 

11.10.2017 | 12.10.2017 | 20.10.2017 | 22.10.2017  и т.д…

 

Если в этом ряду нет нужной колонки, то вновь созданная создается последней, а она, например, 13.10.2017. Создается последней в ряду, получается, что интуитивный интерфейс нарушается….

Т.к. 13.10 идет после 22.10 ))))  Это очень не удобно.

 

Пока я выкрутился так

 

Создаю колонок с запасом (группы колонок),  более 70ти, циклом по массиву, создавая диапазон дат исходя их текущей даты, десять назад и 61 вперед, затем они заполняются, после чего, пробегается обсчет, который считает группировки подчиненных строк в колонках (не знаю верной терминологии, извините), и выводит в подвал. Если Текст подвала = 0 тогда у колонки видимость Ложь…

Кстати, сам придумал, нигде не встречал такого, обычно предлагают перезаполнять, что мне не подходит )))

 

При таком методе,  13.10 уже существует и на своем месте. 

 

Но, как мне кажется, это снижает производительность.

 

 

И вот у меня какая мысль:

Табличное поле формы позволяет перетаскивание колонок руками (мышкой)

 

Как можно задействовать именно этот метод???

 

Т.е. колонка создается, а затем она перемещается по смыслу…

 

 

У колонок есть метод Сдвинуть(<Колонка>, <Смещение>). Можно создать массив дат. При формировании таблицы заполнять его. А при добавлении колонки пробегаться по массиву дат и находить место, куда вставлять новую колонку. После этого сдвигать колонку на нужное место.

Огромное спасибо, поиграюсь, отпишусь по результатам.