Имя: Пароль:
1C
1C 7.7
v7: Запрос по бух.итогам
0 zzz_zzz_zzz
 
26.07.13
10:20
Помогите разобраться с бух.итогами.
Конфигурация Камин: Расчет ЗП 2.0;
счет ШР.2 (пассивный, кол.учет), субконто Подразделения, Должности, Сотрудники (все не оборотные);
надо получить список сотрудников по дням.

Вот мой запрос:

    л_БИ = СоздатьОбъект("БухгалтерскиеИтоги");
    л_БИ.ИспользоватьПланСчетов(ПланыСчетов.Зарплата);
    л_БИ.ИспользоватьСубконто(ВидыСубконто.Сотрудники);
    л_БИ.ВыполнитьЗапрос(рд_НачДата, рд_КонДата,"ШР.2",,,1, "День");
    л_БИ.ВыбратьПериоды(1);
    Пока л_БИ.ПолучитьПериод() = 1 Цикл
        л_БИ.ВыбратьСубконто(ВидыСубконто.Сотрудники, 1);
        л_Колво = 0;
        Пока л_БИ.ПолучитьСубконто(ВидыСубконто.Сотрудники) = 1 Цикл
            л_Колво = л_Колво + 1;
            л_Сотрудник = л_БИ.Субконто(ВидыСубконто.Сотрудники);
    //        Если ((л_БИ.СНК("К") <> 0) И (л_БИ.СНК("С") <> 0)) ИЛИ ((л_БИ.СКК("К") <> 0) И (л_БИ.СКК("С") <> 0)) Тогда
                Сообщить(СокрЛП(л_Колво) + " " + СокрЛП(л_Сотрудник) + " СН:" + СокрЛП(л_БИ.СНК("К")) + " " + СокрЛП(л_БИ.СНК("С")) + ", СК:" + СокрЛП(л_БИ.СКК("К")) + " " + СокрЛП(л_БИ.СКК("С")));
    //        КонецЕсли;
        КонецЦикла;
    КонецЦикла;

Без периодов - берет всех сотрудников правильно. Как только добавляю периоды, по некоторым сотрудникам сальдо начальное и конечное показывается как нулевое. Почему? Может, флаги какие по другому поставить?
1 cw014
 
26.07.13
10:22
Периоды - это случайно не документ движения?
2 zzz_zzz_zzz
 
26.07.13
10:25
(1) в каком смысле? ВыбратьПериоды() - это периодичность бух.итогов, указываю "День"
3 zzz_zzz_zzz
 
26.07.13
10:27
смотрю тех, по кому сальдо в разрезе итогов показывает нулевым - и ничо не понимаю. в оборотке они есть, по карточке счета движений за эти дни не было. ничем от тех, у кого сальдо есть не отличаются.
Бух.итоги уже рассчитаны и перерассчитаны - не помогает
4 zzz_zzz_zzz
 
26.07.13
10:46
если периодичность поставить, например, "Месяц" и формировать отчет за день так же с выборкой по периодам, то показывает нормально. в чем подвох периодичности "День"?
ну не делать же запрос в цикле по дням...
5 zak555
 
26.07.13
10:52
разверни сначала по аналитике, а потом по месяцам
6 viktor_vv
 
26.07.13
10:52
Была там какая-то шняга если вначале периоды потом субконто. Не помню уже с чем связано.
Если поменять порядок выборок, то должно нормально работать.
ВыбратьСубконто()

потом

ВыбратьПериоды().
7 zzz_zzz_zzz
 
26.07.13
10:56
так тож пробовал - результат тот же
8 пипец
 
26.07.13
10:59
ВыбратьПериоды(<?>,,,)
Синтаксис:
ВыбратьПериоды(<ФлагВсе>,<ФлагДК>,<Номер>,<РазвСальдо>)

период день ?
флаг все
9 zzz_zzz_zzz
 
26.07.13
11:01
(8) ну так и стоит - период "День", ВыбратьПериоды(1)
иначе вообще не будет показывать, если за день не было движений
10 zak555
 
26.07.13
11:07
параметры перепроверь в бузЗапросе
11 zzz_zzz_zzz
 
26.07.13
11:12
(10) вот и не понимаю, что не так стоит. надо: остатки по счету в разрезе субконто и периодов "День". всё так и указано. как только ставишь "День" - так цифры сразу непонятные
12 zzz_zzz_zzz
 
26.07.13
11:56
Пример из демо-базы. На паре людей.
Списываю с карточки счета, лень картинку лепить.

1. 01.07.2013 Д 00  - К ШР2 К=1, С=5000 Хомяков
2. 01.07.2013 Д 00  - К ШР2 К=1, С=4000 Бурмистрова
3. 03.07.2013 Д ШР2 - К 00  К=1, С=5000 Хомяков

что показывает Сообщить() из поста(1) за период с 01.07 по 05.07

01.07.13 1 Бурмистрова И.А. СН:0 0,    СК:4000 1
01.07.13 2 Хомяков В.В.     СН:0 0,    СК:5000 1
02.07.13 1 Бурмистрова И.А. СН:4000 1, СК:4000 1
02.07.13 2 Хомяков В.В.     СН:5000 1, СК:5000 1
03.07.13 1 Бурмистрова И.А. СН:0 0,    СК:0 0
03.07.13 2 Хомяков В.В.     СН:5000 1, СК:0 0
04.07.13 1 Бурмистрова И.А. СН:0 0,    СК:0 0
04.07.13 2 Хомяков В.В.     СН:0 0,    СК:0 0
05.07.13 1 Бурмистрова И.А. СН:0 0,    СК:0 0
05.07.13 2 Хомяков В.В.     СН:0 0,    СК:0 0

т.е. за 03.07 был уволен только Хомяков, а по Бурмистровой сальдо тож становится = 0.