![]() |
|
v7: Почему так работает запрос по бух итогам? | ☑ | ||
---|---|---|---|---|
0
mg-samara
16.03.12
✎
12:03
|
Есть проводка Дт52 Кт 76.11.1
Хочу отобрать суммы только по определеннмы контрагентам. (в коде список значений - сзКонтрагентыИКО) На 76.11.1. есть аналитика Контрагент. Ит = СоздатьОбъект("БухгалтерскиеИтоги"); Ит.ИспользоватьКорСубконто(ВидыСубконто.Контрагенты, сзКонтрагентыИКО, 2, 0); Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "51", "76.11.1",, 3,, "С"); Сообщить(Ит.ДО()); Сумма не отбирается Ит = СоздатьОбъект("БухгалтерскиеИтоги"); Ит.ИспользоватьСубконто(ВидыСубконто.Контрагенты, сзКонтрагентыИКО, 2, 0); Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "76.11.1", "51",, 3,, "С"); Сообщить(Ит.КО()); Сумма отбирается.. |
|||
1
mg-samara
16.03.12
✎
12:03
|
Почему так?
|
|||
2
YF
16.03.12
✎
12:04
|
(0) В первом случае нужно Ит.КорДО()
|
|||
3
mg-samara
16.03.12
✎
12:04
|
Если-же отбираю контрагента не по списку значений, а по конкретному элементу справочника - то сумма выдается в обоих случаях...
|
|||
4
mg-samara
16.03.12
✎
12:05
|
(2) Ит.КорДО() - тоже ничего не выдает..
|
|||
5
mg-samara
16.03.12
✎
12:09
|
Это похоже на какую-то фичу...
|
|||
6
mg-samara
16.03.12
✎
12:14
|
Наверное семерку уже все забыли... :-)
Если что - база ДБФ. |
|||
7
v4442
16.03.12
✎
12:25
|
используй конструктор
|
|||
8
v4442
16.03.12
✎
12:26
|
//Данный фрагмент построен конструктором.
//При повторном использовании конструктора, внесенные вручную изменения будут потеряны!!! //{{ Схема номер 3 Процедура Сформировать() Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); Ит = СоздатьОбъект("БухгалтерскиеИтоги"); Ит.ИспользоватьКорСубконто(ВидыСубконто.Контрагенты, ВыбКорСубконто1, 2); Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "51", "76.1.1",, 3, "Проводка", "СК"); Таб.ВывестиСекцию("Шапка"); Таб.Опции(0,0,Таб.ВысотаТаблицы(),0); Ит.ВыбратьПериоды(); Пока Ит.ПолучитьПериод() = 1 Цикл Дт = Ит.ВыбранаПоДт(); Кт = Ит.ВыбранаПоКт(); Опер = Ит.Операция; Сд = Ит.СКД() - Ит.СКК(); Таб.ВывестиСекцию("Строка"); Если (Опер.Дебет.Счет.Валютный = 1) Или (Опер.Кредит.Счет.Валютный = 1) Тогда СдВал = Ит.СКД(2) - Ит.СКК(2); Таб.ВывестиСекцию("Валюта"); КонецЕсли; Если (Опер.Дебет.Счет.Количественный = 1) Или (Опер.Кредит.Счет.Количественный = 1) Тогда СдКол = Ит.СКД(3) - Ит.СКК(3); Таб.ВывестиСекцию("Количество"); КонецЕсли; КонецЦикла; Таб.ВывестиСекцию("Подвал"); Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать",""); КонецПроцедуры //}}БУХГАЛТЕРСКИЙ ЗАПРОС |
|||
9
mg-samara
16.03.12
✎
12:28
|
(8) А мне не нужен отбор по проводкам....
|
|||
10
mg-samara
16.03.12
✎
12:29
|
Получается что запрос по ДО с обтором по кор субконто не работает, а обратный запрос по КО с отбором по субконто работает..
|
|||
11
v4442
16.03.12
✎
12:31
|
//{{БУХГАЛТЕРСКИЙ ЗАПРОС(Сформировать)
//Данный фрагмент построен конструктором. //При повторном использовании конструктора, внесенные вручную изменения будут потеряны!!! //{{ Схема номер 6 //{{ ДтКт 1111110 Процедура Сформировать() Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); Ит = СоздатьОбъект("БухгалтерскиеИтоги"); Ит.ИспользоватьКорСубконто(ВидыСубконто.Контрагенты, ВыбКорСубконто1, 2); Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "51", "76.1.1",, 2,, "С"); Таб.ВывестиСекцию("Шапка"); Таб.Опции(0,0,Таб.ВысотаТаблицы(),0); Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать",""); КонецПроцедуры //}}БУХГАЛТЕРСКИЙ ЗАПРОС |
|||
12
v4442
16.03.12
✎
12:34
|
попробуй
|
|||
13
mg-samara
16.03.12
✎
12:35
|
(12) Спасибо!
|
|||
14
mg-samara
16.03.12
✎
12:36
|
Вопрос в другом - твой пример работает, но попробуй замени ВыбКорСубконто1 на список значений и он перестанет работать. :-)
|
|||
15
v4442
16.03.12
✎
12:41
|
Список не правильно наверно заполняешь
|
|||
16
mg-samara
16.03.12
✎
12:42
|
А сделаешь запрос
Ит.ИспользоватьСубконто(ВидыСубконто.Контрагенты, ВыбКорСубконто1, 2); Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "76.1.1", "51",, 2,, "С"); Тогда КО - выдает искомую сумму, причем независимо от того что в отборе ВыбКорСубконто1 значение элемента или список значений. |
|||
17
mg-samara
16.03.12
✎
12:43
|
(15) Попробуй сам
|
|||
18
mg-samara
16.03.12
✎
12:43
|
(15)
сзКонтрагентыИКО = СоздатьОбъект("СписокЗначений"); сзКонтрагентыИКО.ДобавитьЗначение(ВыбКорСубконто1.ТекущийЭлемент()); |
|||
19
mg-samara
16.03.12
✎
12:44
|
(15) Список в одном случае работает, в другом не работает. :-(
|
|||
20
mg-samara
16.03.12
✎
12:45
|
Блин... неужели из-за этого переписывать отчет придется.. :-(
|
|||
21
mg-samara
16.03.12
✎
14:55
|
||||
22
zak555
16.03.12
✎
15:03
|
(21) было дело =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |