Имя: Пароль:
1C
1С v8
Обороты по счету
0 Aleksei_Pro
 
23.01.12
21:50
Подскажите почему не работает, мне нужно получить субконто1 которые есть в остатках на 90.01.1 счете:

   Запрос = Новый ЗАпрос;
   Запрос.УстановитьПараметр("Организация",Организация);
   Запрос.УстановитьПараметр("Счет", ПланыСчетов.Хозрасчетный.ВыручкаНеЕНВД.Ссылка);
   Запрос.УстановитьПараметр("ДатаПериода",Дата);
   Запрос.Текст =
   "ВЫБРАТЬ
   |    ХозрасчетныйОстаткиИОбороты.Счет,
   |    ХозрасчетныйОстаткиИОбороты.Организация,
   |    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1,
   |    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт,
   |    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт
   |ИЗ
   |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаПериода, &ДатаПериода, , , Счет В ИЕРАРХИИ (&Счет), , Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты
   |
   |УПОРЯДОЧИТЬ ПО
   |    Субконто1
   |АВТОУПОРЯДОЧИВАНИЕ";
   Результат = Запрос.Выполнить().Выбрать();
   Пока РЕзультат.Следующий() цикл
       НовСтрока = ТЗ.Добавить();
       НовСтрока = РЕзультат.Субконто1;
   КонецЦикла;
1 Aleksei_Pro
 
23.01.12
21:58
(0) вроде бы все правильно написано
2 vicof
 
23.01.12
22:14
хех, на 90.01.1 субконто оборотные
3 Aleksei_Pro
 
23.01.12
22:15
(2) я выбираю остатки и обороты
4 vicof
 
23.01.12
22:17
молодец, поздравляю!
5 Aleksei_Pro
 
23.01.12
22:18
(4) что не так, подскажи , как поправить ошибку?
6 vicof
 
23.01.12
22:21
Это не ошибка.
Для начала вот:
v8: Оборотные субконто.
7 vicof
 
23.01.12
22:22
8 Aleksei_Pro
 
23.01.12
22:22
Хорошо, как получить субконто1 (наименование) по которым есть движения?
9 vicof
 
23.01.12
22:29
(8) Например, период увеличить
10 Aleksei_Pro
 
23.01.12
23:22
А вот в этом запросе что не так, он почему то на субконто2 ни чего не выибрает и вылетает из цикла: оба субконто оборотные:
   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("Счет",ПланыСчетов.Хозрасчетный.ОбщехозяйственныеРасходы);
   Запрос.УстановитьПараметр("Организация",Организация);
   Запрос.УстановитьПараметр("ДатаПериода",НачалоДня(НачПериода));
   Запрос.УстановитьПараметр("ДатаПериода2",КонецДня(КонПериода));
   Запрос.Текст =
   "ВЫБРАТЬ
   |    ХозрасчетныйОстаткиИОбороты.Счет,
   |    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1,
   |    ХозрасчетныйОстаткиИОбороты.Подразделение КАК Подразделение,
   |    ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Субконто2,
   |    ЕСТЬNULL(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт, 0) КАК Поле1
   |ИЗ
   |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаПериода, &ДатаПериода2, , , Счет В ИЕРАРХИИ (&Счет), , Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты
   |
   |УПОРЯДОЧИТЬ ПО
   |    Субконто1,
   |    Подразделение,
   |    Субконто2
   |ИТОГИ ПО
   |    Субконто1,
   |    Подразделение,
   |    Субконто2";
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший