![]() |
|
Запрос в цикле по строкам документа - как правильно сделать? | ☑ | ||
---|---|---|---|---|
0
Vladal
17.05.12
✎
19:34
|
Посоветуйте, как лучше сделать.
Партионный учет не ведется, но есть учет в разрезе характеристик. Есть документ прихода, в нём стопицот (1200) позиций номенклатуры, движение которых надо отследить. По отдельной позиции всё просто: ВЫБРАТЬ ТоварыОрганизацийОстаткиИОбороты.Организация КАК Организация, ТоварыОрганизацийОстаткиИОбороты.Номенклатура КАК Номенклатура, ТоварыОрганизацийОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, ТоварыОрганизацийОстаткиИОбороты.Склад КАК Склад, ТоварыОрганизацийОстаткиИОбороты.Регистратор КАК Регистратор, ТоварыОрганизацийОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток, ТоварыОрганизацийОстаткиИОбороты.КоличествоПриход КАК КоличествоПриход, ТоварыОрганизацийОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход, ТоварыОрганизацийОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток ИЗ РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты( &НачПериода, &КонПериода, Регистратор, , Номенклатура = &Номенклатура И СерияНоменклатуры = &СерияНоменклатуры) КАК ТоварыОрганизацийОстаткиИОбороты ИТОГИ СУММА(КоличествоНачальныйОстаток), СУММА(КоличествоПриход), СУММА(КоличествоРасход), СУММА(КоличествоКонечныйОстаток) ПО Склад, Номенклатура, Организация, ХарактеристикаНоменклатуры, Регистратор АВТОУПОРЯДОЧИВАНИЕ Лепить запрос в цикле по строкам документа нельзя - в каждой итерации будет дергаться скуль, это некошерно. А как сопоставить пару параметров Номенклатура+Характеристика, как они есть в строке документа, не представляю. Подскажите, как это сделать? |
|||
1
Нуф-Нуф
17.05.12
✎
19:38
|
ИЗ
РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты( &НачПериода, &КонПериода, Регистратор, , (Номенклатура, СерияНоменклатуры) В (Выбрать ТабЧастьДокумента.Номенклатура, ТабЧастьДокумента.СерияНоменклатуры из ТабЧастьДокумента)) где ТабЧастьДокумента - перварительно полученная временная таблица, содержащая табчасть документа |
|||
2
Vladal
17.05.12
✎
19:41
|
(1) Временную таблицу в запрос поместить? Т.е. первая часть запроса формирует временную таблицу, а вторая уже делает выборку?
|
|||
3
Нуф-Нуф
17.05.12
✎
19:44
|
ВЫБРАТЬ
ПеремещениеТоваровТовары.Номенклатура, ПеремещениеТоваровТовары.СерияНоменклатуры ПОМЕСТИТЬ ТабЧастьДокумента ИЗ Документ.ПеремещениеТоваров.Товары КАК ПеремещениеТоваровТовары ГДЕ ПеремещениеТоваровТовары.Ссылка = &Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТоварыОрганизацийОстаткиИОбороты.Организация КАК Организация, ТоварыОрганизацийОстаткиИОбороты.Номенклатура КАК Номенклатура, ТоварыОрганизацийОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, ТоварыОрганизацийОстаткиИОбороты.Склад КАК Склад, ТоварыОрганизацийОстаткиИОбороты.Регистратор КАК Регистратор, ТоварыОрганизацийОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток, ТоварыОрганизацийОстаткиИОбороты.КоличествоПриход КАК КоличествоПриход, ТоварыОрганизацийОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход, ТоварыОрганизацийОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток ИЗ РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты( &НачПериода, &КонПериода, Регистратор, , (Номенклатура, СерияНоменклатуры) В (ВЫБРАТЬ ТабЧастьДокумента.Номенклатура, ТабЧастьДокумента.СерияНоменклатуры ИЗ ТабЧастьДокумента)) КАК ТоварыОрганизацийОстаткиИОбороты ИТОГИ СУММА(КоличествоНачальныйОстаток), СУММА(КоличествоПриход), СУММА(КоличествоРасход), СУММА(КоличествоКонечныйОстаток) ПО Склад, Номенклатура, Организация, ХарактеристикаНоменклатуры, Регистратор АВТОУПОРЯДОЧИВАНИЕ |
|||
4
Vladal
17.05.12
✎
19:52
|
Вай, спасибо!
Не подскажешь, где доходчиво описано про временные таблицы? |
|||
5
Нуф-Нуф
17.05.12
✎
19:55
|
про запросы хорошо рассказано в курсах гилева "профессиональное программирование". про фишку, что в конструкции В можно использовать больше одного поля увидел именно там
|
|||
6
Vladal
17.05.12
✎
20:03
|
У меня есть ПрофРазработка (807 с., вес 1,5 кг или больше).
Думал, там что-то написано. Для 8.0 |
|||
7
Vladal
17.05.12
✎
20:06
|
Раздам долги и наверно куплю курсы...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |