Имя: Пароль:
1C
1С v8
обороты по регистрам бухгалтерии
,
0 dengr1
 
14.10.15
09:49
Есть простой запрос, не хочет выводить обороты, начальные и конечные остатки выводит. Что я не так сделал?

Запрос.Текст = "ВЫБРАТЬ
               |    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Контрагент,
               |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК ДолгН,
               |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК ОстатокН,
               |    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК Расход,
               |    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК Приход,
               |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК ДолгК,
               |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК ОстатокК
               |ИЗ
               |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаА, &ДатаА,День , , Счет В ИЕРАРХИИ (&Счет62), , ) КАК ХозрасчетныйОстаткиИОбороты
               |ИТОГИ
               |    СУММА(ДолгН),
               |    СУММА(ОстатокН),
               |    СУММА(Расход),
               |    СУММА(Приход),
               |    СУММА(ДолгК),
               |    СУММА(ОстатокК)
               |ПО
               |    Контрагент";
ВыборкаКонтрагент = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ном=0;
Пока ВыборкаКонтрагент.Следующий() Цикл
    ном=ном+1;
    ОбластьДанныеКонтрагент.Параметры.Ном=Ном;
       ЗаполнитьЗначенияСвойств(ОбластьДанныеКонтрагент.Параметры,ВыборкаКонтрагент);    
    ТабДок.Вывести(ОбластьДанныеКонтрагент,1);    
КонецЦикла;
1 NcSteel
 
14.10.15
09:50
Отлично все выводит...
2 dengr1
 
14.10.15
09:55
ну вот есть проводка в базе: Кт 62.01  -  Дт 90.01.1
ОСВ эту проводку видит, а в мой запрос она не попадает
3 axuli
 
14.10.15
09:55
&ДатаА, &ДатаА - дата начала равна дате конца оборотов быть не может.
4 dengr1
 
14.10.15
09:56
(3) но обороты за день как вывести тогда?
5 NcSteel
 
14.10.15
09:56
(4) Взять период в датах за день
6 dengr1
 
14.10.15
09:57
(5) можно пример?
7 NcSteel
 
14.10.15
09:57
(6) Что является началом дня и что концом ?
8 axuli
 
14.10.15
09:58
З.Ы. Да и вообще ХозрасчетныйОстаткиИОбороты по периодам - если использовать группировки или итоги, как-то коряво.

Лучше использовать Хозрасчетныйостатки и Хозрасчетныйобороты
9 NcSteel
 
14.10.15
09:58
(8) В каком месте коряво?
10 dengr1
 
14.10.15
09:59
(7) от 00:01 до 24:00
11 axuli
 
14.10.15
09:59
(4)

УстановитьПараметр("НачДата" Новый Граница(НачалоДня(ДатаА),ВидГраницы.Включая)

УстановитьПараметр("КонДата", Новый Граница(КонецДня(ДатаА),ВидГраницы.Включая))
12 NcSteel
 
14.10.15
09:59
(10) отчино так и передавай первую дату с временем 00:00:00 а вторую с 23:59:59
13 NcSteel
 
14.10.15
10:00
(11) Границы зачем? мда.....
14 axuli
 
14.10.15
10:03
(9) Да тут не объяснишь, в каждом месте по разному.

Допустим у тебя обороты не за один день, а за два дня, обороты есть в каждом дне, и по первому дню остатки и по второму

И ты сделал группировку по контрагенту остатки сложатся хотя надо взять только остатки первого дня.

Лично я использую ХозрасчетныйОстаткиИОбороты только "ЗаПериод".

Но это кому как.
15 axuli
 
14.10.15
10:04
(13) Затем что В КонецДня() - могут некоторые движения не попасть, которые совпадают с этим концом дня, т.е. обычно при закрытии месяца.

Я уже набил шишек на использовании КонецДня()
16 NcSteel
 
14.10.15
10:05
(15) В остатках и оборотах попадут. И если бьешь шишки то советую почитать литературу
17 NcSteel
 
14.10.15
10:06
(14) Может задача такая, не надо свои задачи проецировать на чужие.
18 dengr1
 
14.10.15
10:06
благодарю, помогло

Запрос.УстановитьПараметр("НачДата", НачалоДня(ДатаА));
Запрос.УстановитьПараметр("КонДата", КонецДня(ДатаА));

прошу прощения за дремучие вопросы, но с 8й не сталкивался давно.
19 axuli
 
14.10.15
10:09
(17) Захочет человек такой запрос переделать на месячный, поменяет только даты и очень удивится.
20 axuli
 
14.10.15
10:12
(16) Может быть (хотя тут возможно зависит от МетодаДополния) но лично я при работе с виртальными талицами регистров испльзую только границы или момент времени.
21 dengr1
 
14.10.15
10:20
(19) т.е. если начдата и кондата определить как начало и конец месяца мой запрос не будет работать?
22 axuli
 
14.10.15
10:24
(21) Попробуй

А потом попробуй заменить ",День ," на ",ЗаПериод ,".

Я думаю результат будет разный.
23 dengr1
 
14.10.15
10:25
ну так описатель периода ясно надо менять