|
Команда БСП по сортировке массива. | ☑ | ||
---|---|---|---|---|
0
Dunstan
12.01.23
✎
17:03
|
Напомните как называется?
|
|||
1
lodger
12.01.23
✎
17:09
|
||||
2
Lama12
12.01.23
✎
17:28
|
(0) В смысле массива? Одномерного?
|
|||
3
Dunstan
12.01.23
✎
17:36
|
(2) Да. Я вроде даже ее использовал, но забыл наименование.
|
|||
4
1Сергей
12.01.23
✎
17:38
|
пузырьком?
|
|||
5
Lama12
12.01.23
✎
17:40
|
(3) Так загрузи в СЗ. Отсортируй СЗ. Выгрузи в массив.
|
|||
6
Dunstan
12.01.23
✎
17:51
|
Ну все это я знаю. Хотелось сделать по-современному.
|
|||
7
lodger
12.01.23
✎
18:26
|
(6) по-современному это в 1с Исполнитель.
у них коллекций, кроме массива, не так чтобы много. и вот там к массиву приделали сортировку. |
|||
8
Dmitrii
гуру
12.01.23
✎
18:29
|
(0) Нет такой.
БСП позволяет сравнивать массивы, сворачивать массивы, получать разность двух массивов, дополнить значениями из другого массива. Может что-то ещё. Но сортировать массивы БСП не умеет. (6) >> Хотелось сделать по-современному. Тут стоит быть аккуратным. Чтобы после какого-нибудь очередного обновления версии БСП, которое прилетит с обновлением основной конфы, не пришлось переписывать все вызовы БСП-шных процедур и функций. БСП можно спокойно пользоваться только в двух случаях. 1. Конфа и соответственно версия БСП в ней точно никогда не будет обновляться. 2. Ты готов сам заморачиваться, контролировать все изменения в каждом обновлении БСП - какие процедуры и функции устарели, какие были оставлены только для совместимости (их часто потом удаляют окончательно), какие удалили, какие изменили (добавив в вызов новых параметров или удалив), какие перенесли в другие модули и т.д. и т.п. Чтобы вовремя подправить свой код. В остальных случаях рискуешь попасть на ошибки своего кода после любого очередного обновления. Что-то совсем простое лучше делать собственными методами и кодом. Или написать свою библиотеку, которая может повторять какие-то БСП-шные возможности. |
|||
9
VladZ
12.01.23
✎
18:32
|
(0) Зачем тебе?
|
|||
10
Dmitrii
гуру
12.01.23
✎
18:39
|
(9) См.(6) Модно, молодёжно ©
|
|||
11
Галахад
гуру
12.01.23
✎
18:41
|
Зато народ в БСП заглянул. ))
|
|||
12
mistеr
12.01.23
✎
18:46
|
(6) Задумайся, почему в БСП нет такого метода? Потому что он особо не нужен. Для небольшого количества элементов есть другие коллекции с сортировкой и другими плюшками. А если данных много, обрабатывать их нужно запросами.
|
|||
13
magicSan
12.01.23
✎
19:50
|
массив просто не однозначная структура, данные откуда изначально?
|
|||
14
Ахмадинежад
12.01.23
✎
20:06
|
если в массиве: таблица, структура, ссылка, число и двоичные данные - как это сортировать ?
|
|||
15
timurhv
12.01.23
✎
21:45
|
(8) >Тут стоит быть аккуратным. Чтобы после какого-нибудь очередного обновления версии БСП, которое прилетит с обновлением основной конфы, не пришлось переписывать все вызовы БСП-шных процедур и функций.
Запускайте проверку конфы раз в полгода в EDT, в БСП ставят комментарий об неактуализации процедуры\функции. EDT такие случаи выводит и просит переписать. Плюс код рефакторите. |
|||
16
timurhv
12.01.23
✎
21:47
|
Я открыл свою конфу при первом запуске EDT, прифигел (мягко сказано), за 2 дня все привел в порядок и теперь периодически проверяю. Там и стандарты разработки 1С хорошо проверяет, ну кроме случаем с падежами, но это мелочи.
|
|||
17
magicSan
12.01.23
✎
22:56
|
(16) нуралиев хватит, этой блевотой не один нормальный человек пользоваться не будет
|
|||
18
Dmitrii
гуру
13.01.23
✎
13:55
|
(15) Речь не о том как проблему обойти или решить. Решения могут быть вполне простыми и нетрудоёмкими.
Не надо ставить EDT, чтобы ознакомиться перечнем изменённых, устаревших и удалённых методов. Подробное описание всего этого есть к каждой версии БСП. Речь о том как не создавать проблему вообще. Ведь проблема библиотечного подхода актуальна не только для 1С. Использование в собственном коде сторонних библиотек несёт риски того, что код может перестать работать корректно после очередного изменения библиотеки. Поэтому встаёт вопрос - что лучше - отказаться от использования библиотек(и) вообще, отказаться от обновления библиотеки (если это возможно), или заморачиваться контролем за изменениями библиотеки? Ответ на этот вопрос каждый должен дать себе сам, исходя из своих конкретных обстоятельств. |
|||
19
Новиков
13.01.23
✎
16:47
|
ОбщегоНазначенияКлиентСерверУХ.СортироватьМассив()
|
|||
20
Dmitrii
гуру
13.01.23
✎
17:00
|
(19) Постфикс "УХ" в имени модуля недвусмысленно намекает нам на то, что речь идёт о библиотеке подсистемы УправлениеХолдингом, а не о СтандартныеПодсистемы.
точно так же автор может написать свою подсистему и модуль ОбщегоНазначенияDunstan со своим программным интерфейсом. |
|||
21
Галахад
гуру
13.01.23
✎
17:02
|
(19) И что там?
|
|||
22
Garykom
гуру
13.01.23
✎
17:09
|
(21)
|
|||
23
Dmitrii
гуру
13.01.23
✎
17:11
|
(21) Например для УТ это выглядит так.
ОбщегоНазначенияУТКлиентСервер.СортироватьМассив(Массив)
|
|||
24
Галахад
гуру
13.01.23
✎
17:11
|
(22) Спасибо. Т.е. то что предлагали уже в (5).
|
|||
25
Галахад
гуру
13.01.23
✎
17:12
|
(23) Понятно. Значит (0) был прав и есть в БСП такое.
|
|||
26
Dmitrii
гуру
13.01.23
✎
17:16
|
(25) >> Значит (0) был прав и есть в БСП такое.
Нет. (0) был НЕ прав. Нет в БСП такого. Нет в БСП модуля ОбщегоНазначенияУТКлиентСервер. Обрати внимание на суффикс "УТ" после "ОбщегоНазначения" в имени. В ERP есть ещё такое. ПланированиеПроизводства.СортироватьМассив(Массив, Направление, Свойство = Неопределено).
|
|||
27
Галахад
гуру
13.01.23
✎
17:24
|
(26) Это интереснее. Сравнение не простых значений.
|
|||
28
bolobol
13.01.23
✎
17:31
|
Пузырёк??? Серьёзно??? Даже тупо на несколько строк больший и не менее прозрачный метод Шелла не занесли?? Космические...
|
|||
29
Kassern
13.01.23
✎
17:39
|
(28) Все в ваших руках, можете какую угодно сортировку пихнуть, хоть расческой, хоть вставками, хоть шейкерную используйте)
|
|||
30
Злопчинский
13.01.23
✎
17:48
|
24 сортировки, визуализация https://www.youtube.com/watch?v=BeoCbJPuvSE
|
|||
31
ДедМорроз
13.01.23
✎
21:22
|
Чтобы сортировать массив,нужно иметь функцию сравнения двух элементов.
Проблема в том,что в 1с нет указателей на функции и приходится очень постараться,чтобы сделать функцию. В остальном,любой метод сортировки годится. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |