Имя: Пароль:
1C
1С v8
цикл по табличной части
0 Саша80
 
17.10.12
08:46
парни помогайте засада- есть документ. В нем две табличные части:
Начисления и РасчетСреднегоПоКалендарным. В этих двух ТЧ есть по реквизиту КлючСтроки для связи этих двух ТЧ. Мне нужно из второй ТЧ выдернуть итог по двум колонкам для печатной формы. Вот код:

   для каждого стр из СсылкаНаОбъект.Начисления цикл
       ОбластьОтчета.Параметры.Сотрудник=стр.Сотрудник.Наименование ;
       ОбластьОтчета.Параметры.Неиспользованные=стр.КоличествоДнейНаКонец;
       ОбластьОтчета.Параметры.СуммаРезерваСЕСН=стр.СуммаРезерваСЕСН;
       ОбластьОтчета.Параметры.ВзносыСумма= стр.ВзносыСумма;
       
       для каждого сред из СсылкаНаОбъект.РасчетСреднегоПоКалендарным цикл
       СчСрСумм=0;
       СчСрДни=0;
       Если стр.ключСтроки=Сред.Ключстроки Тогда
       СчСрСумм=СчСрСумм+сред.Результат;
       СчСрДни=СчСрДни+сред.ОтработаноДней;
       //Сообщить(""+СчСрСумм+"/"+СчСрДни);
       //Сообщить(""+стр.ключСтроки+"/"+Сред.Ключстроки);
           КонецЕсли;
       КОнецЦИкла;
         Если СчСрСумм=0 или СчСрДни =0 Тогда
       ОбластьОтчета.Параметры.Средний="Данные для расчета в документе отсутствуют";
   Иначе
       ОбластьОтчета.Параметры.Средний=СчСрСумм/СчСрДни;
       КОнецЕсли;
               ТабличныйДокумент.Вывести(ОбластьОтчета);
   КонецЦикла;

все время пишет что данных нет, хотя по многим они есть...в чем ошибка?
1 Godofsin
 
17.10.12
08:47
ойойой
2 Андрюха
 
17.10.12
08:47
На вскидку - "Сред" некошерное название для текущей строки, попробуй заменить его на что-то типа ТекСтрока
3 Godofsin
 
17.10.12
08:48
делай запросом
4 Саша80
 
17.10.12
08:48
(3)да можно просто самому интересно в чем ошибка..код то простой...
5 Godofsin
 
17.10.12
08:49
СчСрСумм=0;
СчСрДни=0;
Обнуление не там
6 Саша80
 
17.10.12
08:49
а где..я тож на это грешу
7 Godofsin
 
17.10.12
08:50
СчСрСумм=0;
 СчСрДни=0;
для каждого сред из СсылкаНаОбъект.РасчетСреднегоПоКалендарным цикл
     
       Если стр.ключСтроки=Сред.Ключстроки Тогда
       СчСрСумм=СчСрСумм+сред.Результат;
       СчСрДни=СчСрДни+сред.ОтработаноДней;
       //Сообщить(""+СчСрСумм+"/"+СчСрДни);
8 Саша80
 
17.10.12
08:51
все..разобрался..спасиюбо)))а то глаз просто уже замылился))
9 zak555
 
17.10.12
08:53
РасчетСреднегоПоКалендарным -- это что за шлак ?
10 Саша80
 
17.10.12
08:56
это не шлак, это самописный документ, там есть такая ТЧ..досталось наследство
11 zak555
 
17.10.12
08:59
(10) удали эту ТЧ
12 Саша80
 
17.10.12
09:01
зачем?
13 zak555
 
17.10.12
09:06
шлак
14 pessok
 
17.10.12
09:15
а зачем циклом то ползать? найти строки, не?
15 Саша80
 
17.10.12
09:23
да как то привычнее))