Имя: Пароль:
1C
1С v8
Почему регистр бухгалтерии не выдаёт общий итог СНД и СНК?
0 Пендальф Серый
 
04.06.12
08:43
Добрый день. Почему я не могу получить общие итоги по остаткам? Итоги по оборотам получаю правильные, а вот общие сальдо 0. Что не так делаю подскажите плиз. Вот такой код:
Запрос=Новый Запрос("ВЫБРАТЬ
                       |    ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК ДО,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК КО,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК СНД,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК СНК,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СКД,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК СКК
                       |ИЗ
                       |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачДата, &КонДата, , , , , ) КАК ХозрасчетныйОстаткиИОбороты
                       |ГДЕ
                       |    ХозрасчетныйОстаткиИОбороты.Счет.Забалансовый = ЛОЖЬ
                       |ИТОГИ
                       |    СУММА(ДО),
                       |    СУММА(КО),
                       |    СУММА(СНД),
                       |    СУММА(СНК),
                       |    СУММА(СКД),
                       |    СУММА(СКК)
                       |ПО
                       |    ОБЩИЕ,
                       |    Счет");
                       Запрос.УстановитьПараметр("НачДата",НачПериода);
                       Запрос.УстановитьПараметр("КонДата",КонПериода);
                       Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
                       Если Выборка.Следующий() Тогда
                       
                           Сообщить("СНД "+Выборка.СНД+"; СНК "+Выборка.СНК+"; ДО "+Выборка.ДО+"; КО "+Выборка.КО+"; СКД "+Выборка.СКД+"; СКК "+ВЫборка.СКК);
                       
                       КонецЕсли;
1 Voffka
 
04.06.12
08:52
а что такое итоги по оборотам?
2 Oleg_Kag
 
04.06.12
08:54
Практическое пособие разработчика стр 523.
если дебет=кредиту получаем такую ситуацию
3 el-gamberro
 
04.06.12
08:56
добавь в выборку ХозрасчетныйОстаткиИОбороты.ПериодСекунда КАК ПериодСекунда,
И  Замени - РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачДата, &КонДата, Авто, , , ,
4 Пендальф Серый
 
04.06.12
09:01
(3) ничего не поменялось :(
Запрос=Новый Запрос("ВЫБРАТЬ
                       |    ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК ДО,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК КО,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК СНД,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК СНК,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СКД,
                       |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК СКК,
                       |    ХозрасчетныйОстаткиИОбороты.ПериодСекунда
                       |ИЗ
                       |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачДата, &КонДата, Авто, , , , ) КАК ХозрасчетныйОстаткиИОбороты
                       |ГДЕ
                       |    ХозрасчетныйОстаткиИОбороты.Счет.Забалансовый = ЛОЖЬ
                       |ИТОГИ
                       |    СУММА(ДО),
                       |    СУММА(КО),
                       |    СУММА(СНД),
                       |    СУММА(СНК),
                       |    СУММА(СКД),
                       |    СУММА(СКК)
                       |ПО
                       |    ОБЩИЕ,
                       |    Счет");
                       Запрос.УстановитьПараметр("НачДата",НачПериода);
                       Запрос.УстановитьПараметр("КонДата",КонПериода);
                       Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
                       Если Выборка.Следующий() Тогда
                       
                           Сообщить("СНД "+Выборка.СНД+"; СНК "+Выборка.СНК+"; ДО "+Выборка.ДО+"; КО "+Выборка.КО+"; СКД "+Выборка.СКД+"; СКК "+ВЫборка.СКК);
                       
                       КонецЕсли;
5 Пендальф Серый
 
04.06.12
09:03
(2) я могу ошибаться, но там представлено решение на СКД, а мне просто в запросе надо.
6 mkanaev
 
04.06.12
09:06
возми развёрнутое сальдо
7 mkanaev
 
04.06.12
09:08
мммм.... крутяк сработал принцеп баланса!!! всё верно сумма всех активов равна сумме всех обязательств!!!
8 Maxus43
 
04.06.12
09:08
ну и счет должен быть АП
9 Пендальф Серый
 
04.06.12
09:09
(6) развёрнутое сальдо я брал, но оно не совпадает с теми цифрами, что в ОСВ. А мне надо чтобы совпадало.
10 unregistered
 
04.06.12
09:10
(8) Он по всем счетам получает.
(0) СКД = СНД => абланс сходится. Поздравляем!
(7) (2) +100
11 Пендальф Серый
 
04.06.12
09:13
Но ОСВ же показывает цифру и по дебету и по кредиту - хоть они и равны. Как мне тоже такое получить?
12 unregistered
 
04.06.12
09:28
(11) Считай общие итоги сам обходя группировку по счетам.
13 Пендальф Серый
 
04.06.12
09:29
(12) этого я и боялсо...
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн