Имя: Пароль:
1C
 
Медленное выполнение запроса
0 falselight
 
13.12.17
18:11
УТ 10.3. Выявил что что бы отобрать данные по регистру
накопления ТовараКПолучениюНаСклады, имея документ перемещение
товаров, нужно сначала получить документ РасходныйОрдерНаТовары.
По этому сделал такой запрос. Но работает он медленно(((
Так не делается? Или это в порядке?



        Запрос       = Новый Запрос;
        Запрос.Текст = "
            |ВЫБРАТЬ
            |    РасходныйОрдерНаТовары.Ссылка,
            |    ТоварыКПолучениюНаСкладыОстаткиИОбороты.ДокументПолучения,
            |    ТоварыКПолучениюНаСкладыОстаткиИОбороты.Номенклатура,
            |    ТоварыКПолучениюНаСкладыОстаткиИОбороты.ХарактеристикаНоменклатуры,
            |    ТоварыКПолучениюНаСкладыОстаткиИОбороты.СерияНоменклатуры,
            |    ТоварыКПолучениюНаСкладыОстаткиИОбороты.КоличествоКонечныйОстаток
            |ИЗ
            |    Документ.РасходныйОрдерНаТовары КАК РасходныйОрдерНаТовары
            |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыКПолучениюНаСклады.ОстаткиИОбороты(, , Регистратор, , ) КАК ТоварыКПолучениюНаСкладыОстаткиИОбороты
            |        ПО РасходныйОрдерНаТовары.Ссылка = ТоварыКПолучениюНаСкладыОстаткиИОбороты.Регистратор
            |ГДЕ
            |    РасходныйОрдерНаТовары.ДокументПередачи = &ПеремещениеТоваров";
        Запрос.УстановитьПараметр("ПеремещениеТоваров", ВыбранноеЗначение);
        Рез = Запрос.Выполнить();
        Если Не Рез.Пустой() Тогда
            Выборка = Рез.Выбрать();
            Пока Выборка.Следующий() Цикл
1 Lexey_
 
13.12.17
18:13
(0) для тебя это в порядке
2 Fragster
 
гуру
13.12.17
18:14
так не делается. если у тебя документы делают движения только на свою дату, то установи у таблицы параметры периода = моменту времени документа, это поможет. Но вообще не очень понятно, что хочется сделать
5 falselight
 
13.12.17
18:29
(2) Да вот не понятно на одну или не на одну. Да я думал
про параметры периода.

Хочется сделать , - выбрать из регистра ТоварыКПолучениюНаСклады минусовые остатки имея на входе документ перемещение товаров. Эти минусовые остатки делает документ РасхзодныйОрдерНаТовары введенный на соновании перемещения товаров и связанный с ним только по реквизиту ДокументПередачи.
6 Fragster
 
гуру
13.12.17
18:57
когда непонятно (хотя это по алгоритмам как правило понятно), я делал запрос к физической таблице по регистратору, получал список моментов времени, потом в цикле запрос по каждому из моментов. Но я бы сначала проверил - с вероятностью 99% моменты времени записей в регистре совпадают с моментом времени регистратора.
7 prostoya
 
13.12.17
19:31
(0) для РН "ТоварыКПолучениюНаСклады" не может быть регистратор документ Расходный ордер на товары... это первое
8 prostoya
 
13.12.17
19:36
если вы его конечно не переделали...
9 prostoya
 
13.12.17
19:36
а нет извините может)
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший