Имя: Пароль:
1C
1С v8
Что быстрее для обработки ТЗ: МенеджерВременныхТаблиц или Скопировать() ?
0 ИС-2
 
naïve
13.09.13
12:30
1. хз 55% (6)
2. МВТ/ВТ 27% (3)
3. Свернуть()/Скопировать() 18% (2)
4. вся обработка в цикле 0% (0)
5. я овощ,мне все равно 0% (0)
Всего мнений: 11

Надо будет задачу, где придется обрабатывать (отбирать, группировать, фильтровать) данные.

На первый взгляд, для создания нужных ТЗ хватает функциональности методов Свернуть() и Скопировать(), но более практично делать все через работу с  МенеджерВременныхТаблиц (помещение таблицы значений в МВТ, обработка). Где-то просто помещение не в МВТ, а во временную таблицу

Вопрос. Что будет быстрее работать Свернуть()/Скопировать() или поместить ТЗ в МВТ/ВТ с наложением условий?
1 бомболюк
 
13.09.13
12:32
ну Свернуть то точно тормоз еще тот...
2 Kreont
 
13.09.13
12:34
(0) + индексы по ВТ не забудь, без них будет тормоз )

МВТ/ВТ
3 ИС-2
 
naïve
16.09.13
10:54
а в пн. кто что скажет?
4 SeraFim
 
16.09.13
10:58
(3) Скажут: "протестируй сам и результат напиши" =)

хз
5 mzelensky
 
16.09.13
11:01
(0) как минимум зависит от объемов данных ,которые там будут крутиться. + от количестова этих самых "Свернуть()/Скопировать()"

Мое ИМХо это через временные таблицы, т.к. предпочитаю делать выборки запросами.

МВТ/ВТ
6 Полотенчик
 
16.09.13
11:02
У меня очень часто быстрее обработать таблицы по 5-10к строк кодом, чем перекидывать это на сервер, записывать во временные таблицы и т.д.

хз
7 Odavid
 
16.09.13
11:17
(0) >>Где-то просто помещение не в МВТ, а во временную таблицу
одноэсники такие одноэсники )))
8 Odavid
 
16.09.13
11:19
(0) на самом деле, это вообще разные задачи.
(6)>>У меня очень часто быстрее обработать таблицы по 5-10к строк кодом
тем более, еще и третий вариант, не связанный с двумя другими в плане обработки ТЗ.
9 mzelensky
 
16.09.13
11:20
(7) Мне кажется ты всех уже просто зат**ал своим высокомерием и ничего не значащими советами.
10 Odavid
 
16.09.13
11:21
Предвосхищая одноэсников:
- подумайте над тем, что ТЗ само по себе не создается в базе, а потому - найдите, сколько раз вы делаете все три операции, прежде чем получите свое искомое "ТЗ", обработка которого и вынесена в тему.
11 Odavid
 
16.09.13
11:21
(9) да-да, я не ошибся
12 MadHead
 
16.09.13
11:21
Много от чего зависит. От производительности клиентской машины, от производительности сервера СУБД. Если есть возможность один раз отправить ТЗ на сервер а потом многократно фильтровать, то я бы предпочел через передачу ТЗ в запрос.

хз
13 MadHead
 
16.09.13
11:23
(9) да там действительно сумбурно написано по поводу передачи ТЗ в запрос
14 Odavid
 
16.09.13
11:23
(9) еще один пал жертвой.
15 МихаилМ
 
16.09.13
11:36
быстрее и культурней использовать СКД

использовать субд для подобных целей - извращение.
правда в контексте 1с многие извращения -норма.
16 scanduta
 
16.09.13
11:38
Так будет правильней

МВТ/ВТ
17 H A D G E H O G s
 
16.09.13
11:41
Однозначно.

Свернуть()/Скопировать()
18 H A D G E H O G s
 
16.09.13
11:42
В любых случаях, не связанных с получением дополнительных данных из СУБД.
19 bolobol
 
16.09.13
11:53
ТЗ работает ооочень быстро, как заявляет 1С, при том не безосновательно.
При 140 тыс строк в одной колонке ТЗ - помещение в ВТ многократно проиграло всему набору извращений над ТЗ. Буквально - в разы.
Таким образом, если не связано с получением дополнительных данных из БД - однозначно 1.
Выигрывает даже Цикл над ТЗ, но не вздумайте обрабатывать представления ссылок - это тоже запрос к ТЗ, а значит и все тормоза с этим связанные (многократные последовательные запросы к субд)
Всё как по рекомендациям 1С.

Свернуть()/Скопировать()
20 ИС-2
 
naïve
16.09.13
11:54
(10) прав. Мне же надо не только находить строки ТЗ, но и изменять их, а потом опять пихать в запрос, выполнять фильтр и опять по кругу
21 ИС-2
 
naïve
16.09.13
11:55
(19) можно ссылку на статью?
22 H A D G E H O G s
 
16.09.13
11:56
(21) Ты достоен гражданина (10). Рекомендую вам объединить ваши усилия.
23 ИС-2
 
naïve
16.09.13
12:11
(22) где?
24 Odavid
 
16.09.13
12:17
(22) одноэсники так и не разобрались с вариантами из ( 8)??
(19) Вот вам совет: рекомендую изучить, что такое ТЗ, и что такое - запрос. А то мне тут уже вменили "отсутствие советов".
И не надо будет никаких "1С заявляет.. все по рекомендациям.."
25 Classic
 
16.09.13
12:17
(0)
ВТ только если с базы надо что-то доставать. Остальное только ТЗшкой. Ну и конечно безпричинно сворачивать и по сто раз пересортировывать не стоит

хз
26 DimVad
 
16.09.13
12:21
Если всякие отбирать/группировать по ссылочным данным - то запросом быстрее (ибо из базы тянет), иначе - ТЗ.

хз
27 Odavid
 
16.09.13
12:23
(25) о, первый человек, который тоже понял суть вопроса.
28 Галахад
 
гуру
16.09.13
12:29
Ладно, тоже открою суть: вода - мокрая.
29 spu79
 
16.09.13
12:38
что Лучше: паровоз, пароход, самолет?
30 bolobol
 
16.09.13
13:23
Заставить большинство самолётов плавать можно только однажды, а паровоз - никогда. Думайте, прежде чем аналогии приводить))
31 spu79
 
16.09.13
16:42
(30) Заставить и плавать, и летать, и по рельсам ездить можно все что угодно, вопрос в цене вопроса и извечном "А зачем это надо?". А контекст аналогии в том, что для каждого случая есть Свое оптимальное и удобное решение, зависящее от ... факторов. Автор же задает вопрос из серии "таблетка от всех болезней"
32 Kyon8
 
16.09.13
16:53
>>Надо будет задачу, где придется обрабатывать (отбирать, группировать, фильтровать) данные.

Задача очень расплывчатая. В сложных случаях с оглядкой на удобсво поддержки и модификации кода ВТ(+менеджер ВТ) выигрывает.
А если отчет/дин. список то СКД.
И т.д.
33 Kyon8
 
16.09.13
16:54
.

хз
34 spu79
 
16.09.13
17:17
6. "Зависит от качества травы"
Программист всегда исправляет последнюю ошибку.