|
0 / 0 / 0
Регистрация: 11.11.2005
Сообщений: 59
|
||||||
Упорядочивание строк в документе16.03.2010, 14:36. Показов 43015. Ответов 34
Метки нет (Все метки)
0
|
||||||
| 16.03.2010, 14:36 | |
|
Ответы с готовыми решениями:
34
Упорядочивание строк в запросе 7.7 Количество строк в документе Поиск дублирующих строк в документе |
|
0 / 0 / 0
Регистрация: 28.03.2004
Сообщений: 1,913
|
||
| 21.03.2010, 21:14 | ||
ТЗН.Уровень = Номенклатура.Уровень(); ТЗН.Родитель = Номенклатура.Родитель; ТЗН.Сортировать("Уровень,Родитель,...ну и все остальные сортировки");
0
|
||
|
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
|||
| 21.03.2010, 23:15 | |||
Добавлено: Похоже, погорячились мы с такой сортировкой. Ведь ему, кажется, надо так : Номенклатура Уровень Машины 1 Импортные 2 Ауди 3 Вольво 3 Мерседес 3 Отечественные 2 Волга 3 Лада 3 Москвич 3... А при ТЗН.Сортировать("Уровень,Родитель") выйдет Машины 1 Импортные 2 Отечественные 2 Ауди 3 Волга 3 Вольво 3 Лада 3 Мерседес 3 Москвич 3... Или я чего-то не понял ?
0
|
|||
|
0 / 0 / 0
Регистрация: 11.11.2005
Сообщений: 59
|
||
| 22.03.2010, 11:06 | ||
0
|
||
|
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
|
| 22.03.2010, 12:24 | |
|
Тогда, пожалуй, придется добавить столько колонок, сколько уровней в справочнике и, исследуя родителей снизу,
добавлять значения родителей, пока не достигнут самый верхний уровень. Одновременно формируем список будущей сортировки ("Номенклатура,Г3,Г2,Г1..."), где Г1 - самый нижний уровень вложения. Причем, учти, что вряд ли это сработает адекватно, если в одной группе, например, 3 уровня, а в другой, скажем, 4
0
|
|
|
0 / 0 / 0
Регистрация: 11.11.2005
Сообщений: 59
|
||
| 22.03.2010, 13:24 | ||
Я просто не программист и въезжать(разбираться) начал не давно Просто я думаю можно организовать проход в цикле: Для По - пусть выбирает пока не дойдет до верхнего уровня и сразу сортирует с каждым проходом. я вот технически не знаю как это организовать.
0
|
||
|
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
|
| 22.03.2010, 13:48 | |
|
Вот так работает, остальное оформи, как тебе нравится
UnloadTable(ТНЗ); SortList = ""; КоличествоУровнейСправочника = 3; // или сколько надо for k = 1 to КоличествоУровнейСправочника do ТНЗ.NewColumn("Parent"+String(k),"String "); SortList = SortList + "Parent"+String(k)+"," enddo; ТНЗ.SelectLines(); N = 0; While ТНЗ.GetLine() = 1 do N = N + 1; Parent = ТНЗ.Номенклатура.Parent; k = 1; While EmptyValue(Parent) = 0 do ТНЗ.SetValue(N,"Parent"+String(k),Parent .Description); Parent = Parent.Parent; k = k + 1; enddo; enddo; ТНЗ.Sort(SortList+"Номенклатура");
0
|
|
|
0 / 0 / 0
Регистрация: 14.09.2007
Сообщений: 428
|
||||||
| 22.03.2010, 13:57 | ||||||
|
Наверно тебе надо вот такое:
0
|
||||||
|
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
||
| 22.03.2010, 13:58 | ||
А так почти то же самое, только по-русски :trash:
0
|
||
|
0 / 0 / 0
Регистрация: 14.09.2007
Сообщений: 428
|
|
| 22.03.2010, 14:01 | |
|
:trash:
0
|
|
|
0 / 0 / 0
Регистрация: 11.11.2005
Сообщений: 59
|
|
| 22.03.2010, 17:02 | |
|
У меня, что в первом варианте, что во втором сортирует вообще хрен поймешь как.
Добавлено: ладно всем спасибо за идею и наглядный образец кода дальше сам буду додумывать
0
|
|
|
0 / 0 / 0
Регистрация: 28.03.2004
Сообщений: 1,913
|
|
| 22.03.2010, 17:35 | |
|
vbs
Не перепутаются, потому как сортировка идет не только по уровню, но и по наименованию родителя.
0
|
|
|
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
|
| 22.03.2010, 18:59 | |
|
Ошибочка вкралась. Надо так (чтобы список сортировки начинался сверху):
for k = 1 to КоличествоУровнейСправочника do l = КоличествоУровнейСправочника - k + 1; ТНЗ.NewColumn("Parent"+String(k),"String "); SortList = SortList + "Parent"+String(l)+"," enddo; Добавлено: vitfil Я попробовал твою идею, но как-то не вышло. Может, напишешь, как ты предлагаешь описать сортировку, а то как-то в голову не ложится ?
0
|
|
|
0 / 0 / 0
Регистрация: 28.03.2004
Сообщений: 1,913
|
|
| 23.03.2010, 09:57 | |
|
vbs
<!--shcode--><pre><code class=1C>ТЗ = СоздатьОбъект("ТаблицаЗначений"); ВыгрузитьТабличнуюЧасть(ТЗ); //"Номенклатура" - колонка табличной части ТЗ.НоваяКолонка("Уровень","Число"); ТЗ.НоваяКолонка("РодительСтр","Строка"); ТЗ.ВыбратьСтроки(); Пока ТЗ.ПолучитьСтроку()=1 Цикл ТЗ.Уровень = ТЗ.Номенклатура.Уровень(); ТЗ.РодительСтр = СокрЛ(ТЗ.Номенклатура.Родитель); КонецЦикла; ТЗ.Сортировать("Уровень,РодительСтр,Номе нклатура"); ЗагрузитьТабличнуюЧасть(ТЗ);[/CODE]
0
|
|
|
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
|
||
| 23.03.2010, 12:52 | ||
А такой вариант позволит грамотно организовать сортировку при разных уровнях вложенности отдельных групп, почему он мне сразу и понравился
0
|
||
|
0 / 0 / 0
Регистрация: 11.11.2005
Сообщений: 59
|
||||||
| 24.03.2010, 16:42 | ||||||
|
Яможет чего не понимаю, но не сортирует как надо, думал уже что дело в том что
эффект тот же сортирут как непонятно вообще
0
|
||||||
| 24.03.2010, 16:42 | |
|
Нарушение порядка строк в документе Очистка строк в табличном документе Порядок строк в документе "на основании" Упорядочивание строк Упорядочивание строк в матрице Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|