Имя: Пароль:
1C
1С v8
Пытаюсь получить задолженность контрагента перед организацией
0 BPAvel
 
03.02.14
20:07
Пытаюсь получить задолженность контрагента перед организацией, подскажите плиз что не так. выдает 0

    ФильтрСписокСчетов = Новый массив();
    ФильтрСписокСчетов.Добавить("60");
    ФильтрСписокСчетов.Добавить("62");

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ДатаНачала",    ДатаНачала);
    Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
    Запрос.УстановитьПараметр("Организация",   Организация);
    Запрос.УстановитьПараметр("Контрагент",    Контрагент);
    Запрос.УстановитьПараметр("Валюта",        ВалютаДокумента);
    Запрос.УстановитьПараметр("ФильтрСписокСчетов", ФильтрСписокСчетов);
    
    АналитикаРасчетов = новый Массив();
    АналитикаРасчетов.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты);
    АналитикаРасчетов.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры);
    Запрос.УстановитьПараметр("АналитикаРасчетов",    АналитикаРасчетов);
    
    Запрос.УстановитьПараметр("ДоговорКонтрагента", Неопределено);
    
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ВЫБОР
    |        КОГДА &Валюта = НЕОПРЕДЕЛЕНО
    |            ТОГДА ХозрасчетныйОстаткиНаНачало.СуммаОстаток
    |        ИНАЧЕ ХозрасчетныйОстаткиНаНачало.ВалютнаяСуммаОстаток
    |    КОНЕЦ КАК ОстатокНаНачало,
    |    0 КАК ОстатокНаКонец
    |ИЗ
    |    РегистрБухгалтерии.Хозрасчетный.Остатки(
    |        &ДатаНачала,
    |        Счет В ИЕРАРХИИ (&ФильтрСписокСчетов),
    |        &АналитикаРасчетов,
    |        Организация = &Организация
    |            И ВЫБОР
    |                КОГДА &Валюта = НЕОПРЕДЕЛЕНО
    |                    ТОГДА ИСТИНА
    |                ИНАЧЕ Валюта = &Валюта
    |            КОНЕЦ
    |            И Субконто1 = &Контрагент
    |            И ВЫБОР
    |                КОГДА &ДоговорКонтрагента = НЕОПРЕДЕЛЕНО
    |                    ТОГДА ИСТИНА
    |                ИНАЧЕ Субконто2 В ИЕРАРХИИ (&ДоговорКонтрагента)
    |            КОНЕЦ) КАК ХозрасчетныйОстаткиНаНачало"
    + "
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |0,
    |    ВЫБОР
    |        КОГДА &Валюта = НЕОПРЕДЕЛЕНО
    |            ТОГДА ХозрасчетныйОстаткиНаНачало.СуммаОстаток
    |        ИНАЧЕ ХозрасчетныйОстаткиНаНачало.ВалютнаяСуммаОстаток
    |    КОНЕЦ
    |ИЗ
    |    РегистрБухгалтерии.Хозрасчетный.Остатки(
    |        &ДатаОкончания,
    |        Счет В ИЕРАРХИИ (&ФильтрСписокСчетов),
    |        &АналитикаРасчетов,
    |        Организация = &Организация
    |            И ВЫБОР
    |                КОГДА &Валюта = НЕОПРЕДЕЛЕНО
    |                    ТОГДА ИСТИНА
    |                ИНАЧЕ Валюта = &Валюта
    |            КОНЕЦ
    |            И Субконто1 = &Контрагент
    |            И ВЫБОР
    |                КОГДА &ДоговорКонтрагента = НЕОПРЕДЕЛЕНО
    |                    ТОГДА ИСТИНА
    |                ИНАЧЕ Субконто2  В ИЕРАРХИИ (&ДоговорКонтрагента)
    |            КОНЕЦ) КАК ХозрасчетныйОстаткиНаНачало
    |ИТОГИ
    |    СУММА(ОстатокНаНачало),
    |    СУММА(ОстатокНаКонец)
    |ПО ОБЩИЕ";
    
    Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "ОБЩИЕ");
    Выборка.Следующий();
    ОстатокНаНачало = Выборка.ОстатокНаНачало;
    ОстатокНаКонец  = Выборка.ОстатокНаКонец;
1 Feunoir
 
03.02.14
20:28
(0) Ну, как минимум, бухгалтерские счета не строки.
2 BPAvel
 
03.02.14
21:07
(1)     ФильтрСписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("60"));
ФильтрСписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("62"));
Не помогает (