Имя: Пароль:
1C
1С v8
КУДиР для БГУ 1.0
,
0 Hostess_
of_Love
 
27.06.12
14:56
Переделываю КУДиР под БГУ, но никак не могу решить одну проблему - сначала выводятся итоги за период, а потом уже список документов за этот период. получается вот такая фигня - http://s005.radikal.ru/i212/1206/ed/fe618b54fe47.jpg
понимаю, что где-то в коде ошибка, но не могу найти
подскажите, а?) код взят из типовой БП и переделан под БГУ

ДокументРезультат.Очистить();
   ДокументРезультат.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_КнигаУчетаДоходовИРасходов_Раздел1";
   Макет = ПолучитьМакет("Раздел1");
   
   Секция = Макет.ПолучитьОбласть("Шапка|Основная");
   ДокументРезультат.Вывести(Секция);
   Секция = Макет.ПолучитьОбласть("Шапка|Режим3");
   Секция.Параметры.Заголовок4 = "Доходы";
   
   ДокументРезультат.Присоединить(Секция);
   
   НачДата = ?(CНачалаГода, НачалоГода(Период), НачалоКвартала(Период));
   КолКварталов = Цел(Месяц(КонецКвартала(Период))/3);
   
   НПП = 1;
   
   ТекКвартал = Цел(Месяц(КонецКвартала(НачДата))/3);
   ПоследнийКварталПериода = НомерКвартала(Период);
       
   Для Каждого СтрокаСпискаДокументов Из СписокДокументов Цикл
               
       КварталЗаписи = Цел(Месяц(КонецКвартала(Период))/3);
       
       Пока КварталЗаписи <> ТекКвартал Цикл
           
           ВывестиИтогиЗаКвартал(ТекКвартал, ПоследнийКварталПериода, Макет, ДокументРезультат);
           ТекКвартал = ТекКвартал + 1;
           
       КонецЦикла;
       

       Секция = Макет.ПолучитьОбласть("Строка|Основная");
       Секция.Параметры.НомерПП = НПП;
       Секция.Параметры.ПечДатаНомерДок = "№ " + ОбщегоНазначения.ПолучитьНомерНаПечать(СтрокаСпискаДокументов.Ссылка) + " от " + Формат(СтрокаСпискаДокументов.Дата, "ДФ=dd.MM.yyyy");
       Секция.Параметры.ПечСодерж = "" + ТипЗнч(СтрокаСпискаДокументов.Ссылка) + ": " + СтрокаСпискаДокументов.ВидОперации + " покупателю " + СтрокаСпискаДокументов.Контрагент + " по договору """ + СтрокаСпискаДокументов.Договор + """";
       ДокументРезультат.Вывести(Секция);
       
       Секция = Макет.ПолучитьОбласть("Строка|Режим3");
       Секция.Параметры.ПечДоходы = СтрокаСпискаДокументов.СуммаДокумента;
       ДокументРезультат.Присоединить(Секция);
       НПП = НПП + 1;
   КонецЦикла;
   
   Пока (ПоследнийКварталПериода >= ТекКвартал) Цикл
       
       ВывестиИтогиЗаКвартал(ТекКвартал, ПоследнийКварталПериода, Макет, ДокументРезультат);
       ТекКвартал = ТекКвартал + 1;
       
   КонецЦикла;
   
   // Выведем подвал
   Если (НомерКвартала(Период) = 4) и (Период >= Дата("20060101")) Тогда
       Секция = Макет.ПолучитьОбласть("Справка");
       Секция.Параметры.ПечДоходы = СписокДокументов.Итог("СуммаДокумента");
       
       ДокументРезультат.Вывести(Секция);
   КонецЕсли;
       
   ДокументРезультат.ТолькоПросмотр = Истина;
   ДокументРезультат.ПовторятьПриПечатиСтроки = ДокументРезультат.Область(6,,6,);
1 Hostess_
of_Love
 
27.06.12
15:06
вверх
2 Hostess_
of_Love
 
27.06.12
15:59
ап
3 Hostess_
of_Love
 
27.06.12
16:19
неужто никто не видит ошибки?((
4 Hostess_
of_Love
 
27.06.12
16:49
злые вы(
5 BlackSeaCat
 
27.06.12
17:50
Мы не злые, мы в недоумении - зачем бюджетному учреждению КУДиР?
6 Hostess_
of_Love
 
27.06.12
17:51
(5)они предоставляют услуги. по сути им только доходы вывести
7 SerMaxim
 
27.06.12
17:55
(6)
- они автономные?
- что ты хочешь чтобы мы сделали? исправили код ? Поменяй местами вывод соответствующих областей. Без макета только гадать можно...
8 Hostess_
of_Love
 
27.06.12
18:05
нашла уже ошибку. тему можно закрыть
9 Hostess_
of_Love
 
28.06.12
09:31
хм... прикольно получилось.. ставишь галочку "с начала года" - нормально отображается, не ставишь - зацикливается на
       Пока КварталЗаписи <> ТекКвартал Цикл
           
           ВывестиИтогиЗаКвартал(ТекКвартал, ПоследнийКварталПериода, Макет, ДокументРезультат);
           ТекКвартал = ТекКвартал + 1;
           
       КонецЦикла;
10 Любопытная
 
28.06.12
09:33
(9) Поди КварталЗаписи ничему не равен, вот и зацикливается
11 Hostess_
of_Love
 
28.06.12
09:46
(10)неа, равен. если и ТекКвартал и КварталЗаписи при первом проходе равны, то все ок, а если не равны - уходит в затуп
12 Hostess_
of_Love
 
28.06.12
09:55
Итого за CMXCV квартал        
Итого за 9 месяцев 2260 г.        
Итого за CMXCVI квартал        
Итого за 2260 г.        
Итого за CMXCVII квартал        
Итого за 1 квартал 2261 г.        
Итого за CMXCVIII квартал        
Итого за 1 полугодие 2261 г.        
Итого за CMXCIX квартал        
Итого за 9 месяцев 2261 г.

эт писец какой-то =(
13 Любопытная
 
28.06.12
09:59
(12) что это? О_о
14 Любопытная
 
28.06.12
10:00
А ТекКвартал это что? Дата или номер квартала?
15 Hostess_
of_Love
 
28.06.12
10:08
(14)номер квартала. как и КварталЗаписи. это то, что сейчас выводится в макет. слава богу, что дальше цикл прерывается
16 Hostess_
of_Love
 
28.06.12
10:09
+(15)в (0) код где устанавливается ТекКвартал и КварталЗаписи
17 Любопытная
 
28.06.12
10:13
(15) на 2261г календарь кончился? :)
18 Hostess_
of_Love
 
28.06.12
10:21
(17)не. там в функции при выводе итогов вызывается функция ПреобразоватьЧислоВРимскуюНотацию, и там условие, что если арабское число больше 999, то обработка прерывается
19 Hostess_
of_Love
 
28.06.12
11:13
http://i021.radikal.ru/1206/09/882fa7e07ac0.jpg
сейчас выводится так. но если не поставить галочку "с начала года", то вывод начинается с 4 квартала и до 2261 года
20 Hostess_
of_Love
 
28.06.12
18:58
Все. Отчет закончен. Тему можно сдать в архив