![]() |
![]() |
![]() |
|
Процедура медленно работает! | ☑ | ||
---|---|---|---|---|
0
ParinovS
17.09.12
✎
18:11
|
Доброго времени суток! Заполняю отчет. Немного переделанный типовой 1С-кий отчет(запрос заполнения изменен). Результат выгружается в ТабличноеПоле. Причем, чтобы выгрузка работала, надо чтобы каждая ячейка имела определенное (уникальное) имя. В отчете для добавления новой строки в табличное поле используется процедура
ТекТабличноеПоле.ВставитьОбласть( ВставляемаяОбласть,,ТипСмещенияТабличногоДокумента.ПоВертикали ); для удаления: ВыбТабличноеПоле.УдалитьОбласть( УдаляемаяОбласть,ТипСмещенияТабличногоДокумента.ПоВертикали ); |
|||
1
ParinovS
17.09.12
✎
18:12
|
Так вот!!! А теперь проблема!!! в отчет выводится порядка 7-8 тысяч строк! Это примерно 3-4 часа. Заполнил отчет, закрыл, открыл - опять 3-4 часа жди! Сделал замер производительности, и на этих двух функциях программа тратит 92 процента от общего времени выполнения! Ну и теперь собственно вопрос: Есть ли аналоги этих функций, которые будут работать быстрее?
|
|||
2
vmv
17.09.12
✎
18:15
|
есть - СКД и грамотная пропись идентификации в СтруктуруКлючей с помещением в параметр расшифровки автоматически через механизмы СКД, а дурацкая идентификация всех ячеек - это не лечиться, увы
|
|||
3
Asmody
17.09.12
✎
18:16
|
попробуй изменять отчет не в поле, а в таб.документе
|
|||
4
vmv
17.09.12
✎
18:16
|
(1) кончно тратит, ведь выводимый документ растет и растет, а его постояяно режит по живому и делают вставки где попало, мдя - таких писателей я расстреливаю
|
|||
5
Wobland
17.09.12
✎
18:21
|
(0) ТП с полем табдока не перепутал?
складывается впечатление, что автор стремится вызвать дьявола |
|||
6
ParinovS
17.09.12
✎
18:21
|
(4) я же говорю, я только переделывал ТИПОВОЙ 1С-кий отчет. Писать с нуля, времени нет! Просто может как нибудь по другому вставлять область?
|
|||
7
Wobland
17.09.12
✎
18:22
|
(6) пиши с нуля и как белый человек. меньше времени уйдёт
|
|||
8
Defender aka LINN
17.09.12
✎
18:22
|
(0) "чтобы выгрузка работала, надо чтобы каждая ячейка имела определенное (уникальное) имя" - избавься от этого условия
|
|||
9
ParinovS
17.09.12
✎
18:32
|
Всем спасибо конечно! Но а на (1) кто нибудь ответит?
|
|||
10
ParinovS
17.09.12
✎
18:49
|
Жаль конечно, что меня протролили, но ответа на конкретный вопрос я так и не получил! Пример (4) и (5). Все больше разочаровываюсь в форуме.
П.С. Да! Можете не писать, что я криво ставлю вопрос, не понимаю предметной области и т.д. |
|||
11
YF
17.09.12
✎
18:51
|
(10) Тут вопросов больше ...
нафига в отчете 7 тыс. строк? Кто их читает? И почему бы просто не делать выводом секций, а не извращаться с обрезанием существующего табличного поля? |
|||
12
tashi_ork
17.09.12
✎
18:57
|
(10) Эти функции никак не заменишь. Изменяй идеологию построения.
|
|||
13
Asmody
17.09.12
✎
19:03
|
(10) тебе объяснили что делать. если разжевать, то:
1) из поля таб.документа на форме выводишь табличный документ в новый объект ТабличныйДокумент. 2) изменяешь этот ТабличныйДокумент 3) изменённый ТабличныйДокумент выводишь обратно в поле таб.дока на форме. |
|||
14
ParinovS
17.09.12
✎
19:08
|
(13) а как это повлияет на скорость работы?
|
|||
15
H A D G E H O G s
17.09.12
✎
19:11
|
(14) Никак.
|
|||
16
H A D G E H O G s
17.09.12
✎
19:12
|
Избавляйтесь от именнованных ячеек, когда отчет дойдет до 30-40 тыщ строк - будет падать.
|
|||
17
H A D G E H O G s
17.09.12
✎
19:12
|
Волевым решением избавляйтесь, подозреваю, что это нечто регламентное, отнаследованное от типового 1С.
|
|||
18
ParinovS
17.09.12
✎
19:19
|
(17) вы правы. Это типовой регламентированный отчет. Где реализована выгрузка по утвержденному формату. Очень не хочется писать эту выгрузку... Очень!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |