Имя: Пароль:
1C
1C 7.7
v7: Бух. запрос: периодичность "операция"
0 kunashir
 
26.07.11
14:45
День добрый!

Пытаюсь выполнить следующий запрос:

//*******************************************
Процедура Сформировать()
   
   Таб = СоздатьОбъект("Таблица");
   Таб.ВывестиСекцию("Шапка");
   БИ = СоздатьОбъект("БухгалтерскиеИтоги");
   
   БИ.ИспользоватьСубконто(ВидыСубконто.ГТД);
   БИ.ИспользоватьСубконто(ВидыСубконто.Контрагенты);
   БИ.ВыполнитьЗапрос (НачДата, КонДата, "19.7",,,3,"Операция");
   
   БИ.ВыбратьСубконто(1);
   Пока  БИ.ПолучитьСубконто(1) = 1 Цикл
       НомерГТД = БИ.Субконто (1).Наименование;
       Таб.ВывестиСекцию("ГТД");
       БИ.ВыбратьСубконто(2);
       Пока  БИ.ПолучитьСубконто(2) = 1 Цикл
           Контра = БИ.Субконто(2).Наименование;
           Если БИ.ВыбратьПериоды(1, , ,1) = 1 Тогда
               Пока БИ.ПолучитьПериод() = 1 Цикл
                   Попытка
                       НомерДока = БИ.Операция.Документ.ДокументОснование.НомерДок; ///???
                   Исключение
                       НомерДока = "ошибка";
                   КонецПопытки;
                   Сумма    = БИ.КО();
                   Таб.ВывестиСекцию ("Док");
               КонецЦикла;
           Иначе
               Попытка
                   НомерДока = БИ.Операция.Документ.ДокументОснование.НомерДок; ///???
               Исключение
                   НомерДока = "ошибка";
               КонецПопытки;
               Сумма = БИ.КО();
               Таб.ВывестиСекцию ("Док");
           КонецЕсли;
           
       КонецЦикла;
   КонецЦикла;
   Таб.Показать();

КонецПроцедуры

Проблема при выборе периодов: ряд операция нормально выводится, а ряд нет, при этом эти операции схожи (одинаковые счет, одинаковые документы, сделавшие эти проводки)...
1 Lepochkin
 
26.07.11
14:48
Если не удалось выбрать период то какие ты там операции хочешь получить??
2 Lepochkin
 
26.07.11
14:48
+1 ДокументОснвание может быть пустым
3 kunashir
 
26.07.11
14:49
(1) Вопрос в том почему нет периода.
4 Cthulhu
 
26.07.11
14:49
Если БИ.ВыбратьПериоды(0, , ,1) = 1 Тогда
5 kunashir
 
26.07.11
14:51
(4) Тоже самое...
6 Lepochkin
 
26.07.11
14:53
(3)По иначе ты что получить то пытаешься??
(5)В каком месте с ошибкой вылетает??
7 viktor_vv
 
26.07.11
14:53
(5) Ты бы тогда разъяснил, что ты понимаешь под "часть нормально выводятся , а часть нет ". Может у вас с 1С разные понятия нормальности.
8 kunashir
 
26.07.11
14:56
(6) Ветку по иначе можно не смотреть... Просто чтобы вывести сумму и значение второго субконто.
(7) "часть нормально" - это когда БИ.ВыбратьПериоды () = 1, а другая часть - это когда похожие проводки, но БИ.ВыбратьПериоды () = 0.
9 chief accountant
 
26.07.11
14:57
(8) А они в промежуток дат точно попадают?
10 kunashir
 
26.07.11
14:59
(9) Да у меня тоже такая мысль была - все в один день!
11 Lepochkin
 
26.07.11
15:02
Ради эксперимента ВыбратьОперации, ПолучитьОперацию за этот период попадут твои операции??
12 chief accountant
 
26.07.11
15:05
(10) Пустые субконто может?
13 kunashir
 
26.07.11
15:07
Все извиняюсь, дятел я - начальное сальдо было, а КО не было, вот поэтому и период не выбирал (в копии данных очень старые были).
14 Cthulhu
 
26.07.11
15:08
зачем эта задача решается через ж.. через бух.запрос - тоже немного непонятно.
15 kunashir
 
26.07.11
15:09
(14) С радостью выслушаю другие варианты решения.
16 chief accountant
 
26.07.11
15:09
(13) А говорил "все в один день!"  :))
17 kunashir
 
26.07.11
15:11
(16) Ну в рабочей базе да - посмотрел то там, а обкатывал на копии... Зря 2 часа времени убил..