Имя: Пароль:
1C
1С v8
Помогите с запросом УТ 11
0 prorokk
 
13.04.15
14:34
Ситуация УТ11. Динамический список.
Нужно вывести список реализаций без ПКО или с Общей суммой ПКО <> Сумме Реализации
1 Trotter
 
13.04.15
14:37
>Нужно вывести список реализаций
(0) Наверное по определённому складу да ещё и по определённой цене с определённым подразделением да ещё и период бы учитывать, так ?
2 prorokk
 
13.04.15
14:38
ВЫБРАТЬ
    ЖурналДокументовДляКассы.Ссылка,
    ЖурналДокументовДляКассы.СуммаДокумента
ИЗ
    ЖурналДокументов.ЖурналДокументовДляКассы КАК ЖурналДокументовДляКассы
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходныйКассовыйОрдер КАК ПКО
        ПО ЖурналДокументовДляКассы.Ссылка = ПКО.ДокументОснование
ГДЕ
    ПКО.Проведен = Истина


В данном если у реализации Более Одного ПКО то получим ошибку "Дублирование ключевых... в Ссылка"
3 prorokk
 
13.04.15
14:40
(1) С отборами справлюсь :)
4 Simod
 
13.04.15
14:49
РАЗЛИЧНЫЕ
5 prorokk
 
13.04.15
14:49
+(0) Возможно ли при СОЕДИНЕНИИ учесть что ПКО может быть Два... что-бы выбрался именно проведенный ПКО
6 Simod
 
13.04.15
14:55
Сделай запрос с объединением:
1. Без ПКО
2. С несколькими ПКО, но суммы не равны (т.е. не оплачено полностью).
7 prorokk
 
13.04.15
15:01
(6) Запрос Динамического списка не должен содержать объединения (
8 ИС-2
 
naïve
13.04.15
15:18
(7) мда... Тогда соединение с Максимум(ПКо). Или проще (если позволят пользователи) - вместо ссылки на ПКО выводить истина. А при расшифровке уже запускать поиск ПКО.

Ну или извращение - сделать свой регистр и выводить его :D
9 prorokk
 
13.04.15
15:20
Попробую еще раз сформулировать задачу

Реализация №1 Сумма 100
Пко №1 Сумма 80 Проведен
Пко №2 Сумма 20 Проведен
В данном случае эта строчка не должна попасть в выборку

Реализация №1 Сумма 100
Пко №1 Сумма 80 НЕ Проведена
Пко №2 Сумма 20 Проведен
Выводим в список

Реализация №1 Сумма 100
Пко №1 Сумма 80 Не проведена
Пко №2 Сумма 100 Проведен
Не выводим в список.
10 prorokk
 
13.04.15
15:21
Как получить Строчку вида Реализация №1 Сумма 100 СуммаВсехПроведенныхПКО = 100
11 prorokk
 
13.04.15
15:46
(7) Максимум(ПКО) А проведенность?
Так цель не "фильтровать" и показывать только те что "не оплачены".
На регистром думаю... не не... не...не....
12 Михаил Козлов
 
13.04.15
16:31
В РН РасчетыСКлиентамиПоДокументам нет нужной информации?
13 goldtrezvon
 
13.04.15
17:00
ВЫБРАТЬ
    ВложенныйЗапрос1.Ссылка КАК Реализация,
    ВложенныйЗапрос1.СуммаДокумента КАК СуммаРеализации,
    ВложенныйЗапрос1.ПКО,
    ВложенныйЗапрос1.ПКОСуммаДокумента
ИЗ
    (ВЫБРАТЬ
        табПКО.ПКО КАК ПКО,
        КОЛИЧЕСТВО(РАЗЛИЧНЫЕ табПКО.ПКО.Проведен) КАК ПКОПроведен,
        СУММА(табПКО.ПКО.СуммаДокумента) КАК ПКОСуммаДокумента,
        табРеал.Ссылка КАК Ссылка,
        табРеал.СуммаДокумента КАК СуммаДокумента
    ИЗ
        (ВЫБРАТЬ
            РеализацияТоваровУслуг.Ссылка КАК Ссылка,
            РеализацияТоваровУслуг.СуммаДокумента КАК СуммаДокумента
        ИЗ
            Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
        ГДЕ
            РеализацияТоваровУслуг.Дата МЕЖДУ &Дата1 И &Дата2) КАК табРеал
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
                ПриходныйКассовыйОрдер.Ссылка КАК ПКО,
                ПриходныйКассовыйОрдер.ДокументОснование КАК ДокументОснование
            ИЗ
                Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
            ГДЕ
                ПриходныйКассовыйОрдер.Дата МЕЖДУ &Дата1 И &Дата2
                И НЕ ПриходныйКассовыйОрдер.ПометкаУдаления
            
            СГРУППИРОВАТЬ ПО
                ПриходныйКассовыйОрдер.Ссылка,
                ПриходныйКассовыйОрдер.ДокументОснование) КАК табПКО
            ПО (ВЫБОР
                    КОГДА табРеал.Ссылка = табПКО.ДокументОснование
                        ТОГДА ИСТИНА
                КОНЕЦ)
    
    СГРУППИРОВАТЬ ПО
        табПКО.ПКО,
        табРеал.Ссылка,
        табРеал.СуммаДокумента) КАК ВложенныйЗапрос1
ГДЕ
    ВложенныйЗапрос1.СуммаДокумента <> ВложенныйЗапрос1.ПКОСуммаДокумента
14 prorokk
 
13.04.15
17:48
(13)Спасибо но нужно что-бы период задавался "стандартно", следовательно должна быть указана основная таблица.

Ошибку нашел у себя... Консоль запросов рулит...
Ошибка 1с): Ставлю отбор
Сумма реализации <> СуммаПКО
  1000                Null
1с-ка говорить что РАВНО (видимо в какой-то желтой книге написано что нельзя сравнивать с Null, но ошибок не вываливало)
В итоге:
    СУММА(ВЫБОР
            КОГДА ПКО.Проведен
                ТОГДА ЕСТЬNULL(ПКО.СуммаДокумента, 0)
            ИНАЧЕ 0
        КОНЕЦ) КАК СуммаВсехПКО,
Решило мою задачу.... Тестирую....
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший