|
Неверно считает начальный и конечный остаток | ☑ | ||
---|---|---|---|---|
0
ИУБиПовиц
16.02.12
✎
10:51
|
Здравствуйте. пытаюсь получить остаток по 41.03 счету с отбором по кор субконто контрагенту и по определенной номенклатуре, выдает капкието нереальные цифры, (без отбора)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | Номенклатура.Ссылка КАК Номенклатура, | ЕСТЬNULL(ОстаткиОбороты.Регистратор, """") КАК Регистратор, | СУММА(ОстаткиОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ОстаткиОбороты.КоличествоНачальныйОстатокДт) КАК КоличествоНачальныйОстатокДт, | СУММА(ОстаткиОбороты.КоличествоНачальныйОстатокКт) КАК КоличествоНачальныйОстатокКт, | СУММА(ОстаткиОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ОстаткиОбороты.КоличествоКонечныйОстатокДт) КАК КоличествоСальдоДт, | СУММА(ОстаткиОбороты.КоличествоКонечныйОстатокКт) КАК КоличествоСальдоКт, | СУММА(ОстаткиОбороты.КоличествоОборот) КАК КоличествоОборот, | СУММА(ОстаткиОбороты.КоличествоОборотДт) КАК КоличествоОборотДт, | СУММА(ОстаткиОбороты.КоличествоОборотКт) КАК КоличествоОборотКт, | ОстаткиОбороты.Регистратор.Контрагент КАК Контрагент, | ОстаткиОбороты.СубконтоДт1 |ИЗ | Справочник.Номенклатура КАК Номенклатура | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток, | ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт КАК КоличествоНачальныйОстатокДт, | ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокКт КАК КоличествоНачальныйОстатокКт, | ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток, | ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт, | ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокКт КАК КоличествоКонечныйОстатокКт, | ХозрасчетныйОстаткиИОбороты.КоличествоОборот КАК КоличествоОборот, | ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт КАК КоличествоОборотДт, | ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт КАК КоличествоОборотКт, | ХозрасчетныйОстаткиИОбороты.Регистратор КАК Регистратор, | ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1, | Субконто.СубконтоДт1 КАК СубконтоДт1 | ИЗ | (ВЫБРАТЬ | ХозрасчетныйДвиженияССубконто.Регистратор КАК Регистратор, | ХозрасчетныйДвиженияССубконто.СубконтоДт1 КАК СубконтоДт1 | ИЗ | РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(&ДатаНач, &ДатаКон, СчетКт = &Счет43, , ) КАК ХозрасчетныйДвиженияССубконто | ГДЕ | ХозрасчетныйДвиженияССубконто.СчетКт = &Счет43) КАК Субконто | ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор, ДвиженияИГраницыПериода, Счет = &Счет43, , ) КАК ХозрасчетныйОстаткиИОбороты | ПО (ХозрасчетныйОстаткиИОбороты.Регистратор = Субконто.Регистратор) | ГДЕ | (Субконто.СубконтоДт1 В (&СписокКонтрагентов) | ИЛИ &КонтрагентыПустые)) КАК ОстаткиОбороты | ПО Номенклатура.Ссылка = ОстаткиОбороты.Субконто1 |ГДЕ | Номенклатура.Ссылка В(&СписокКег) | |СГРУППИРОВАТЬ ПО | Номенклатура.Ссылка, | ОстаткиОбороты.Регистратор.Контрагент, | ЕСТЬNULL(ОстаткиОбороты.Регистратор, """"), | ОстаткиОбороты.СубконтоДт1 | |УПОРЯДОЧИТЬ ПО | Регистратор, | Номенклатура |ИТОГИ | СУММА(КоличествоНачальныйОстаток), | СУММА(КоличествоНачальныйОстатокДт), | СУММА(КоличествоНачальныйОстатокКт), | СУММА(КоличествоКонечныйОстаток), | СУММА(КоличествоСальдоДт), | СУММА(КоличествоСальдоКт), | СУММА(КоличествоОборот), | СУММА(КоличествоОборотДт), | СУММА(КоличествоОборотКт) |ПО | Регистратор, | Номенклатура |АВТОУПОРЯДОЧИВАНИЕ"; ДатаКон = КонецДня(ДатаКон); Запрос.УстановитьПараметр("Счет43",ПланыСчетов.Хозрасчетный.ТараПодТоваромИПорожняя); Запрос.УстановитьПараметр("ДатаНач",НачалоДня(ДатаНач)); Запрос.УстановитьПараметр("ДатаКон",КонецДня(ДатаКон)); Запрос.УстановитьПараметр("СписокКонтрагентов",СписокКонтрагентовОтм); Запрос.УстановитьПараметр("СписокКег",СписокКеговОтмеч); Запрос.УстановитьПараметр("Организация",Организация); Запрос.УстановитьПараметр("КонтрагентыПустые",СписокКонтрагентовОтм.Количество() = 0); Результат = Запрос.Выполнить(); колК = 0; ВыборкаСальдо = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Номенклатура","ВСЕ"); Пока ВыборкаСальдо.Следующий() цикл ОбработкаПрерыванияПользователя(); колК = колК + 1; Если колК = 1 тогда ОбластьСальдоНачального = Макет.ПолучитьОбласть("Сальдо|Кег"); иначе ОбластьСальдоНачального = Макет.ПолучитьОбласть("Сальдо|КегКраткий"); КонецЕсли; ОбластьСальдоНачального.Параметры.НДО = ВыборкаСальдо.КоличествоНачальныйОстатокДт; ОбластьСальдоНачального.Параметры.НКО = ВыборкаСальдо.КоличествоНачальныйОстатокКт; //ОбластьСальдоНачального.Параметры.НДО = ВыборкаСальдо.КоличествоСальдоДт; //ОбластьСальдоНачального.Параметры.НКО = ВыборкаСальдо.КоличествоСальдоКт; Если колК = 1 тогда ТабДОк.Вывести(ОбластьСальдоНачального); иначе ТабДОк.Присоединить(ОбластьСальдоНачального); КонецЕсли; КонецЦикла; ВыборкаСальдо.Сбросить(); |
|||
1
Maxus43
16.02.12
✎
10:54
|
в оборотке показывает правильно?
|
|||
2
ИУБиПовиц
16.02.12
✎
11:23
|
да
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |