Кто как использует в работе универсальные коллекции?

1. timeforlive 16 09.06.15 14:18 Сейчас в теме
Мне пока что приходилось работать только с массивами, но интересно будет послушать кто и как использует другие коллекции данных и интересно узнать о необычных применениях.
Возможно, там, где я стараюсь все сделать через массивы будет на много проще сделать благодаря другим коллекциям.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. PetroP 09.06.15 14:33 Сейчас в теме
(1) timeforlive, для каждого определенного случая годится определенная коллекция. Ваш вопрос звучит как "Мне приходилось использовать только справочники. Кто как использует другие объекты данных?"
EMelihoff; kazann; dj_serega; +3 Ответить
5. kazann 22 09.06.15 15:01 Сейчас в теме
(4) PetroP, полностью согласен. Иногда один и тот же вопрос можно решить несколькими методами. Все зависит от фантазии и навыков :)
6. dj_serega 392 09.06.15 15:02 Сейчас в теме
(5) kazann,
Все зависит от навыков и фантазии:)

Поправил ;)
7. Xershi 1490 09.06.15 15:04 Сейчас в теме
(1) timeforlive, список значений, тот же массив. Учись читать справку, расширяй кругозор.
10. nSpirit2 09.06.15 15:28 Сейчас в теме
Мне пока приходилось работать только со справочниками, но интересно будет послушать кто как использует другие объекты метаданных и интересно узнать о необычных способах применения :D

(7) Xershi, Вот это поворот :D
12. Xershi 1490 09.06.15 15:38 Сейчас в теме
(10) nSpirit2, и не говори, научившись ее читать можно решить 90% поставленных задач.
13. anterehin 15 09.06.15 16:01 Сейчас в теме
(1) timeforlive,
Что нам нужно сделать:
1) Понять, нафантазировать, олицетворить, то как вы используете массив...
2) Предложить другие коллекции для этих решений..


P.S. Использование массива возможно в N-ом количестве задач, и X из этих задач можно решить другими коллекциями. Мы должны описать все варианты?


!!! Где конкретика вопроса??? Что использовать вместо массива? Так в чем? Если я использовал что массив то я считаю нужным что там должен быть массив.. Сидеть придумывать чтобы я мог использовать вместо массива можно голову "взорвать". Опишите какой то момент а мы предложим реализацию..

P.S.ДВА Дерево значений использую при разборе XML файла.
19. miniogn 23 11.06.15 10:03 Сейчас в теме
(1) Массивы для однотипных данных.
Структура и соответствие для различных данных. И удобно тем, что не нужно запоминать индексы.
Структура:
Удобно, что можно именовать, например:

мСотрудники = Новый Массив();

Пока Выборка... Цикл
    Стру = Новый Структура("ФИО, ДатаРождения, Оклад, Должность");
    ЗаполнитьЗначенияСвойств(Стру, Выборка);
    мСотрудники.Добавить(стру);
КонецЦИкла;

Возврат мСотрудники;
Показать


Затем это можно таскать в/из процедуры.

Для к = 0 По мСотрудники.ВГраница() Цикл
    т = ТЧ.Добавить();
    т.ФИО = мСотрудники[к].ФИО;
    т.Оклад= мСотрудники[к].Оклад;
КонецЦикла;



В связи с тем, что в УФ на клиенте нельзя использовать тип ТаблицаЗначений, то структуры и соответствия будут чаще использоваться.
24. timeforlive 16 11.06.15 11:02 Сейчас в теме
(19) miniogn, да, действительно, нужно не забывать по УФ (клиента) и возложенные ограничения на него, спасибо.
2. spezc 784 09.06.15 14:21 Сейчас в теме
даже интересно стало, как можно "необычно" использовать коллекции значений...
3. Капитан.Кук 20 09.06.15 14:29 Сейчас в теме
Я часто использую таблицы значений, потому что результат запроса можно выгрузить в таблицу значений.
8. ildarovich 7874 09.06.15 15:12 Сейчас в теме
Вот статья про соответствие: Эффективная обработка данных в оперативной памяти за счет использования коллекции "соответствие".
Вот статья про таблицы значений: Лучшие методы сравнения таблиц значений.
А вообще информации на Инфостарте очень много, больше, чем можно запасти впрок, поэтому лучше начинать от задачи: выбирать каждый раз наиболее эффективную структуру данных, реализуя и сравнивая (по быстродействию, читаемости, компактности кода) разные варианты реализации.
nihfalck; +1 Ответить
9. ditp 91 09.06.15 15:20 Сейчас в теме
(8) ildarovich, первая ссылка какая-то никакая.
11. ildarovich 7874 09.06.15 15:32 Сейчас в теме
14. timeforlive 16 10.06.15 10:09 Сейчас в теме
Вообще, у меня была мысль реализовать такую вот штуку.
Получаю данные из запроса и сохраняю каждое поле в отдельный массив, соответственно приходится создавать их несколько.
Так как полей не так много (номенклатура, количество, стоимость, себестоимость и т.д.), то достаточно создать в пространстве модуля переменные, а уже в теле процедуры присвоить им тип Массив и заполнять массивы через Выборку (чтобы дальше работать с данными).

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

П.С. с XML не работал, а про дерево значений - это круто.
15. anterehin 15 10.06.15 10:12 Сейчас в теме
(14) timeforlive, ам.. а зачем несколько массивов? если можно использовать таблицу значений с именованными колонками , где строки ваши записи.

Запрос вообще можно выгрузить сразу в таблицу значений.. где наименование колонок будут ваши поля.
16. timeforlive 16 10.06.15 12:16 Сейчас в теме
(15) anterehin, пока что не пользовался, но обязательно начну. Начиналось все с одного - двух массивов, а потом стало нарастать и как-то уже лень было переделывать все в ТЗ.
17. anterehin 15 10.06.15 12:20 Сейчас в теме
(16) timeforlive, А что там переделывать?

ТЗ = Запрос.Выбрать().Выгрузить();
18. timeforlive 16 10.06.15 15:10 Сейчас в теме
(17) anterehin, если бы все так просто. Весь цикл по работе с массивами построен на том, что массив передает свои данные (итерация = индекс, естественно). В будущем, конечно, буду ТЗ использовать, но менять старое не стоит =)
Спасибо.
20. dj_serega 392 11.06.15 10:22 Сейчас в теме
Соответствие хорошо когда нужно иметь список уникальных объектов.
К примеру для выгрузки документов.
Соответствие.Вставить(Ссылка1);
Соответствие.Вставить(Ссылка2);
Соответствие.Вставить(Ссылка1);

В итоге будет 2 записи.
21. spacecraft 11.06.15 10:26 Сейчас в теме
(20) dj_serega, я бы немного уточнил. Соответствие выгодно там, где нужно часто получать значение из коллекции, но не часто заполнять. По удобству и скорости получения значений соответствие самое выгодное.
22. dj_serega 392 11.06.15 10:32 Сейчас в теме
(21) spacecraft, Ну и это тож. Я раньше массивом пользовался для удаления строк из ТЧ.
Цикл по ТЧ. Заполнение массива на удаление. Обход массива удаления. Теперь вот подумываю переключиться на соответствие.
23. spacecraft 11.06.15 10:35 Сейчас в теме
(22) dj_serega, я бы не стал. Запись в соответствие довольно затратная операция, да и в ТЧ могут быть одинаковые наименования.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот