Имя: Пароль:
1C
1С v8
Не могу получить СуммаОстаткаКт
,
0 Ar-Bus
 
13.11.12
11:00
делаю отчет Дебиторская и кредиторская задолженности. Запрос к виртуальной таблице РегистрыБухгалтерии.Хозрасчетный.Остатки.

Группировка по Субконто1. Используемые счета 58,60,62,66,67,75,76.
Когда идет перебор выборки, все суммы попадают в СуммаДт, а СуммаКт - всегда пустые. Что делаю не так? Текст запроса:

       Запрос.Текст = "ВЫБРАТЬ
       |    ХозрасчетныйОстатки.Субконто1 КАК Субконто1,
       |    СУММА(ХозрасчетныйОстатки.СуммаОстатокДт) КАК СуммаДт,
       |    СУММА(ХозрасчетныйОстатки.СуммаОстатокКт) КАК СуммаКт
       |ИЗ
       |    РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаОкончания) КАК ХозрасчетныйОстатки
       |ГДЕ
       |    ХозрасчетныйОстатки.Счет В ИЕРАРХИИ(&Счета)
       |
       |СГРУППИРОВАТЬ ПО
       |    ХозрасчетныйОстатки.Субконто1
       |УПОРЯДОЧИТЬ ПО
       |    Субконто1.Наименование
       |ИТОГИ
       |    СУММА(СуммаДт),
       |    СУММА(СуммаКт)
       |ПО
       |    Субконто1";
1 Maxus43
 
13.11.12
11:03
Счет В ИЕРАРХИИ(&Счета)
- в условия вирт таблицы

остатков нет может?
2 Maxus43
 
13.11.12
11:04
и тип значения параметра точно массив ссылок на счета
3 Ar-Bus
 
13.11.12
11:08
(2)

   ИспользуемыеСчета = Новый Массив;
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.ФинансовыеВложения); //58
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.РасчетыСПоставщикамиИПодрядчиками); //60
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.РасчетыСПокупателямиИЗаказчиками); //62
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.РасчетыПоКраткосрочнымКредитамИЗаймам); //66
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.РасчетыПоДолгосрочнымКредитамИЗаймам); //67
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.РасчетыСУчредителями); // 75
   ИспользуемыеСчета.Добавить(ПланыСчетов.Хозрасчетный.РасчетыСРазнымиДебиторамиИКредиторами); //76
   
   // ---- Заполнение списка счетов ----
   СписокСчетов = Новый Массив;
   Для Каждого счетик Из ИспользуемыеСчета Цикл
       СписокСчетов.Добавить(счетик);
   КонецЦикла;
4 Maxus43
 
13.11.12
11:08
(3) нафига 2 массива? ИспользуемыеСчета и пихай
5 Maxus43
 
13.11.12
11:09
дату проверь, чудес не бывает.
И выведи просто СуммаОстаток а не Дт/Кт
6 Ar-Bus
 
13.11.12
11:09
(4) а, ну это же не столь важно... К пустым СуммаОстаткаКт это не имеет отношения...
7 Ar-Bus
 
13.11.12
11:11
мне нужно сделать отчет(список дебиторов и кредиторов). Т.е. Остатки нужно пихать в колонки Дт и Кт, исходя из активности или пассивности счетов. Вот и хотел воспользоваться СуммаОстаткаДт и СуммаОстаткаКт. Не получается. Я в бухгалтерии не силен
8 Ar-Bus
 
13.11.12
11:12
(5) даты стоят за весь период ведения учета
9 Ar-Bus
 
13.11.12
11:12
в СуммаОстаткаДт пихает и отрицательные, и положительные значения
10 Maxus43
 
13.11.12
11:13
&ДатаОкончания в запросе чему равна?
11 Ar-Bus
 
13.11.12
11:17
ДатаОкончания = 30.11.12
12 hhhh
 
13.11.12
11:22
(11) бухгалтерии совсем не знаете. Активный счет - это только дебетовый остаток, пассивный счет - только кредитовый остаток.

Попробуйте

СуммаРазвернутыйОстатокДт и СуммаРазвернутыйОстатокКт
13 Maxus43
 
13.11.12
11:23
(12) развернутый - у АП счетов, не?
14 hhhh
 
13.11.12
11:26
(13) что-то не помню, давно не применял, может быть.
15 Maxus43
 
13.11.12
11:27
(0) Просто остаток доставай, он тоже пустой?
16 hhhh
 
13.11.12
11:35
(0) можно так

ВЫБОР КОГДА ХозрасчетныйОстатки.СуммаОстаток >= 0 Тогда
   ХозрасчетныйОстатки.СуммаОстаток
ИНАЧЕ 0
КОНЕЦ КАК СуммаДт,
ВЫБОР КОГДА ХозрасчетныйОстатки.СуммаОстаток <= 0 Тогда
   ХозрасчетныйОстатки.СуммаОстаток
ИНАЧЕ 0
КОНЕЦ КАК СуммаКт,
17 hhhh
 
13.11.12
11:36
(16)+ то есть

ВЫБОР КОГДА ХозрасчетныйОстатки.СуммаОстаток <= 0 Тогда
   - ХозрасчетныйОстатки.СуммаОстаток
ИНАЧЕ 0
КОНЕЦ КАК СуммаКт,
18 Feunoir
 
13.11.12
11:36
(0) Добавь в запрос выборку счета:

ХозрасчетныйОстатки.Счет КАК Счет

Даже если и не починится, будет понятно что с каких счетов выбирается.
19 Maxus43
 
13.11.12
11:36
(16) на активный пассивный надо проверять, а сумма всегда >0 если учет правильный)
20 Ar-Bus
 
13.11.12
11:57
(12) Это помогло, спасибо
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.