Имя: Пароль:
1C
1C 7.7
v7: БИ.ВыполнитьЗапрос помогите понять
0 DES
 
20.07.13
23:57
Делаю:

БИ = СоздатьОбъект("БухгалтерскиеИтоги");
Если Метаданные.РазделительУчета.Выбран()=1 Тогда БИ.ИспользоватьРазделительУчета(Фирма); КонецЕсли;
БИ.ИспользоватьСубконто(ВидыСубконто.Номенклатура);
БИ.ВыполнитьЗапрос(Дата1, Дата2, "1.1.1","2.0",,2);
БИ.ВыбратьСубконто();
Пока БИ.ПолучитьСубконто()=1 Цикл
ТЗ.НоваяСтрока();
ТЗ.Сум = БИ.ДО("С");
КонецЦикла;    
Сообщить(ТЗ.Итог("Сум")); => 100
и
БИ = СоздатьОбъект("БухгалтерскиеИтоги");
Если Метаданные.РазделительУчета.Выбран()=1 Тогда БИ.ИспользоватьРазделительУчета(Фирма); КонецЕсли;
БИ.ИспользоватьСубконто(ВидыСубконто.Номенклатура);
БИ.ВыполнитьЗапрос(Дата1, Дата2, "1.1.1","2.1,2.2",,2);
БИ.ВыбратьСубконто();
Пока БИ.ПолучитьСубконто()=1 Цикл
ТЗ.НоваяСтрока();
ТЗ.Сум = БИ.ДО("С");
КонецЦикла;    
Сообщить(ТЗ.Итог("Сум")); => 100

те же 100 единиц.
Хотя по "Анализу счета" по корр субсчетам разные суммы показывает.

Почему не отбирает правильно обороты за период по указанным коррсчетам ?
1 Сергей Викторович
 
20.07.13
23:58
счет 2.0 не есть группа 2.1 и 2.2
2 Сергей Викторович
 
20.07.13
23:58
*не есть группа  для
3 Тьма
 
21.07.13
00:04
БИ.корДО("С")
4 DES
 
21.07.13
00:05
(1) нет , не есть группа
5 DES
 
21.07.13
00:08
(3) и так не хочет
6 Сергей Викторович
 
21.07.13
00:09
> Почему не отбирает правильно обороты за период по указанным коррсчетам ?



скрины правильно и неправильно преиведи
7 DES
 
21.07.13
00:10
неправильно - даете одинаковые цифры
правильно - разные значения должны быть
8 Тьма
 
21.07.13
00:11
А не указывать корсчет в выполнитьзапрос, но сделать перебор корсчетов и брать там нужное?
9 DES
 
21.07.13
00:12
если не обращаться к субсчетам корсчета, то все правильно работает.

но нужно разобрать по субсчетам корсчета
10 DES
 
21.07.13
00:13
(8) да так можно, но я пытаюсь сделать правильно.
11 Сергей Викторович
 
21.07.13
00:13
кстати, гулпо к до обращаться, когда корсчета есть =)
12 DES
 
21.07.13
00:15
(11) возможно
13 Сергей Викторович
 
21.07.13
00:15
покажи что спросил, пока вижу --- быстрее отвечу =)
14 DES
 
21.07.13
00:19
не могу, яснее чем (7) не получится
15 Сергей Викторович
 
21.07.13
00:20
(14) не верю
16 Сергей Викторович
 
21.07.13
00:21
или пересчитай итоги, как майк гооврит
17 DES
 
21.07.13
00:21
итоги нормальные
18 Сергей Викторович
 
21.07.13
00:23
см. в 11 и в 13
19 DES
 
21.07.13
08:41
Up
20 Тьма
 
21.07.13
09:17
Оставь корсчет в запросе, но все равно сделай
////////
би.выбратькорсчета();
пока би.получитькорсчет()=1 Тогда
ТЗ.НоваяСтрока();
ТЗ.Сум = БИ.корДО("С");
Конеццикла;
////////
Семерошный бухзапрос - еще та кривулька, и, насколько понимаю, ему необходима выборка по корреспондирующим счетам или субконто для расчета корреспондирующих показателей.
21 DES
 
21.07.13
10:58
(20) сделал
перебираю в цикле, в отладчике такой результат

БИ.Счет = 1.1.1
БИ.КорСчет = 2.0
БИ.корДО("К") = 0
БИ.корДО("С") = 0
БИ.ДО("С") = 0
БИ.ДО("К") = 0
22 DES
 
21.07.13
11:04
мне вообще то нужно по субконто развернуть еще.
БИ.ВыбратьКорСчета();
   Пока БИ.ПолучитьКорСчет()=1 Цикл
       БИ.ВыбратьСубконто();
       Пока БИ.ПолучитьСубконто()=1 Цикл
23 DES
 
21.07.13
11:05
БИ.Субконто() - правильно показывает в цикле,  а сум и кол-во по нулям
AdBlock убивает бесплатный контент. 1Сергей