|
Как оптимизировать такой запрос ? | ☑ | ||
---|---|---|---|---|
0
SherifSP
24.10.13
✎
13:36
|
Запрос выполняется в форме списка, процедурой "ПриПолученииДанных", и форма при перемещении между строками подлагивает, как будто там 500 fps, посоветуйте что нибудь?)
СписокДокументов = Новый СписокЗначений; Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл ДанныеСтроки = ОформлениеСтроки.ДанныеСтроки; Документ = ДанныеСтроки.Ссылка; СписокДокументов.Добавить(Документ); КонецЦикла; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | АнулированныеДокументы.ВозвратнаяНакладная |ИЗ | РегистрСведений.АнулированныеДокументы КАК АнулированныеДокументы |ГДЕ | АнулированныеДокументы.ВозвратнаяНакладная В(&СписокДокументов)"; Запрос.УстановитьПараметр("СписокДокументов", СписокДокументов); АнулированныеДокументы = Запрос.Выполнить().Выгрузить(); |
|||
1
SherifSP
24.10.13
✎
13:40
|
Ап
|
|||
2
Maxus43
24.10.13
✎
13:42
|
сколько доков в СписокДокументов?
|
|||
4
SherifSP
24.10.13
✎
13:42
|
+(0) РС непериодический, подчинен регистратору
|
|||
5
GROOVY
24.10.13
✎
13:42
|
Не надо запросы писать в ПриПолученииДанных. Юзай динамический список.
|
|||
6
ДенисЧ
24.10.13
✎
13:43
|
(5) в неуправляемой форме? ;-)
|
|||
7
SherifSP
24.10.13
✎
13:43
|
(2) 30
|
|||
8
SherifSP
24.10.13
✎
13:44
|
(6) Да обычная, платформа 8.1
|
|||
9
GROOVY
24.10.13
✎
13:44
|
(6) Можно форму сделать управляемой. Управляемые формы можно использовать в обычном приложении.
|
|||
10
Maxus43
24.10.13
✎
13:44
|
(7) есть несколько приёмов, например создать ТЗ при открытии с уже нужными данными, и там искать что надо
|
|||
11
GROOVY
24.10.13
✎
13:45
|
(8) Есть повод перейти на 8.2 :)
|
|||
12
zak555
24.10.13
✎
13:45
|
(6) какие проблемы ?
|
|||
13
SherifSP
24.10.13
✎
13:45
|
Но самое интересное, что запрос выполняется 3 раза. Первый раз 1 документ, второй 28 доков, третий 1 док
|
|||
14
SherifSP
24.10.13
✎
13:46
|
+(13) При открытии формы
|
|||
15
wraithik
24.10.13
✎
13:46
|
(0)
для чего оптимизировать? где тормозит? |
|||
16
zak555
24.10.13
✎
13:47
|
(13) перевод на 8.2 и сделай форму управляемой и запихни в неё динамический список
|
|||
17
wraithik
24.10.13
✎
13:47
|
(10)
лучше тогда эту таблицу наполнять из "ПриПолученииДанных". |
|||
18
SherifSP
24.10.13
✎
13:48
|
(10) Быстрее будит считать все данные без отбора, или 28 доков? Но при перемещении курсора однозначно быстрее, но при открытии дольше будит
|
|||
19
Sabbath
24.10.13
✎
13:49
|
(0) делай как в (10) или наподобие
|
|||
20
SherifSP
24.10.13
✎
13:49
|
(18) Между строками
|
|||
21
SherifSP
24.10.13
✎
13:49
|
(19) сейчас попробую спасибо за совет
|
|||
22
МойКодУныл
24.10.13
✎
13:49
|
сколько типов у АнулированныеДокументы.ВозвратнаяНакладная? если не один - приведи тип, Сделай выразить. Можно еще поэкперементировать со временной таблицей и соединением вместо В. Но это так.
|
|||
23
vhl
24.10.13
✎
13:50
|
(0) Индекс в регистре по "ВозвратнаяНакладная" стоит?
|
|||
24
vhl
24.10.13
✎
13:51
|
(10) И получить недостоверную информацию при ее изменении.
|
|||
25
Sabbath
24.10.13
✎
13:51
|
(0) и что ты потом делаешь с этим АнулированныеДокументы ?
|
|||
26
SherifSP
24.10.13
✎
13:52
|
(22) Только один тип "ВозвратТоваровОтПокупателя"
|
|||
27
SherifSP
24.10.13
✎
13:53
|
(23) Да
|
|||
28
vhl
24.10.13
✎
13:53
|
(25) Он потом в цикле делает "Ячейка.УстановитьТекст(ВозвратнаяНакладная
.Номер)" :) |
|||
29
SherifSP
24.10.13
✎
13:59
|
(24) В форму добавить реквизит с типом булево и в процедуре ПриИзменении если документ изменялся или добавлялся новый, присваивать реквизиту истину а в процедуре ПриПолученииДанных проверять на этот реквизит, если Истина, значит выполняю запрос и реквизиту присваиваю ложь)
|
|||
30
H A D G E H O G s
24.10.13
✎
14:05
|
(29) Поток сознания
(0) Это не может тормозить, ты врешь. |
|||
31
H A D G E H O G s
24.10.13
✎
14:06
|
(0) Стоп, это ты был со сканером ШК?
|
|||
32
vhl
24.10.13
✎
14:11
|
(26) Хороший вопрос
(29) Плохой совет |
|||
33
SherifSP
24.10.13
✎
14:13
|
(31) Где?)
|
|||
34
SherifSP
24.10.13
✎
14:44
|
(31) Да, я)
|
|||
35
vhl
24.10.13
✎
14:51
|
(33) Обознался :)
|
|||
36
mrDSide
24.10.13
✎
14:58
|
(0) РегистрыСведений.АнулированныеДокументы.СоздатьКлючЗаписи()
ИЛИ РегистрыСведений.АнулированныеДокументы.СоздатьМенеджерЗаписи() ИЛИ РегистрыСведений.АнулированныеДокументы.СоздатьНаборЗаписей() и загрузить твои.... расшифруй задачу |
|||
37
kosts
24.10.13
✎
15:02
|
-Можно хотя бы на несколько минуть закэшировать полученные данные, что бы лишний раз не дергать сервер.
-Еще можно проверить не тормозит ли выгрузка в ТЗ. -И не дергается ли сервер при получении данных документа. Отсюда не понятно как ты затем используешь полученные данные... -Можно специальный отдельный регистр сделать. |
|||
38
kiruha
24.10.13
✎
15:09
|
(0)
Повесь индекс в рег сведений на ВозвратнаяНакладная и будет тебе счастье Офигеть |
|||
39
viktor_vv
24.10.13
✎
15:25
|
(38) См (23) и (27).
Мне правда удивительно почему-таки тормозит такой простой запрос. Имхается тормозит совсем не запрос. |
|||
40
SherifSP
24.10.13
✎
15:30
|
Еще такой вопрос
|
|||
41
SherifSP
24.10.13
✎
15:31
|
Вчера было норм, а сегодня документ реализация товаров услуг с 18 позициями в тч, проводится по 30 секунд и пишет блокировка транзакции, как лечить?
|
|||
42
kiruha
24.10.13
✎
15:31
|
(39)
Спасибо, не заметил по диагонали. У меня есть похожий код в при получении данных - никаких тормозов. Их не может быть так возврат по индексу милли сек |
|||
43
SherifSP
24.10.13
✎
15:31
|
+(41) Итоги все пересчитаны
|
|||
44
kiruha
24.10.13
✎
15:32
|
(41)
Похоже у тебя проблема с базой а не с запросом. Только людей с толку сбиваешь |
|||
45
SherifSP
24.10.13
✎
15:41
|
(44) Блокировка идет от одного пользователя всегда, он всех блокирует
|
|||
46
viktor_vv
24.10.13
✎
15:44
|
(45) Пользователь по сети ? Скуль или файловая ?
|
|||
47
viktor_vv
24.10.13
✎
15:45
|
(46)+ Зайти под этим пользователем с другого компа, тоже самое ?
|
|||
48
Ненавижу 1С
гуру
24.10.13
✎
15:49
|
(9) ага, делал, тупить стало даже сильнее, правда там и запрос сложнее был
|
|||
49
kiruha
24.10.13
✎
15:52
|
(45)
Проблема может быть в сети. Попробуй (47) |
|||
50
brznzglwgn
24.10.13
✎
16:00
|
Сделай кеш таблицу, один раз получаешь, дальше в ней ищешь. Взлетит.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |