0
- 10.07.2012 - 07:55
|
Надо выбрать все документы, в которых каждая строчка табличной части содержит реквизит равный заданному условию.
| |
1
- 10.07.2012 - 07:56
| бухгалтерия 6.0 ?? | |
2
- 10.07.2012 - 08:00
|
И в чём проблема? Варианты: 1) Отбираешь все документы, у которых есть хотя бы одна строка с нужным значением в один список, все документы, у которых есть хотя бы одна строка со значением отличным от нужного в другой список. Соединяешь. Результат анализируешь (Вариант: выбираешь из первого списка всех, отсутствующих во втором) 2)Отбираешь все документы, у которых есть хотя бы одна строка с нужным значением в один список. Выбираешь из ТЧ отобранных документов поле с искомым значением и группируешь по ссылке с агрегатной функцией КоличествоРазличных по твоему полю. Сгруппированный презультат анализируешь | |
3
- 10.07.2012 - 08:01
|
Конфа самописная. Пока у меня только два варианта: 1. Сравнивать количество строк 2. Выбрать все документы, которые не удовлетворяют заданному условию, и затем соединять с документами указываю что выбрать не равные этим. | |
4
- 10.07.2012 - 08:02
| 2-roma n >а "пошустрее" запрос возможен? | |
5
- 10.07.2012 - 08:03
|
1-101 > раздел v8. ==== OFF интересно, кто-нить ещё надеется на нормальное отображение разделов в списке/теме? | |
6
- 10.07.2012 - 08:12
|
4-gematogen > какой из вариантов будет шустрее зависит от конкретного наполнения базы. Исходя из контекста задачи может оказаться уместным пойти на дополнительную избыточность данных: например, перед записью документа если все его строки содержат одно и то же значение писать это значение в служебный реквизит документа. Тогда никакие ухищрения с подсчётом/анализом всех строк будут не нужны... | |
7
- 10.07.2012 - 08:15
|
6-roma n > ясно, спасибо за участие Как раз задача и стояла реализовать эту избыточность, но надо заполнить уже в существующих документах реквизит. В принципе задача разовая, но ради спортивного интереса поинтересовался о более "интересном" варианте реализации задачи. | |
8
- 10.07.2012 - 08:18
|
(5) "Бес шансоффф" (0) ВЫБРАТЬ Список.Ссылка ИЗ ( ВЫБРАТЬ РАЗЛИЧНЫЕ Список.Ссылка ИЗ Документ.ХХХ.Табчасть ГДЕ Реквизит = &Условие ) КАК Список ЛЕВОЕ СОЕДИНЕНИЕ Документ.ХХХ.Табчасть КАК Поиск ПО Список.Ссылка = Поиск.Ссылка И Поиск.Реквизит <> &Условие ГДЕ Поиск.Ссылка ЕСТЬ NULL | |
| Интернет-форум Краснодарского края и Краснодара |