v7: Цикл по таблице значений проходит всего 1 раз, непонятно почему...
☑
0
Босечка
09.08.13
✎
09:59
Цикл по таблице значений проходит всего 1 раз, непонятно почему...
Функция ПолучитьСушку(ОсновнаяР)
СпрП=СоздатьОбъект("Справочник.ВидРаботПодч");
СпрП.ИспользоватьВладельца(ОсновнаяР);
СпрП.ВыбратьЭлементы(1);
Пока СпрП.ПолучитьЭлемент()=1 цикл
Если СпрП.Сушка=1 тогда
СушкаРабота=СпрП.ТекущийЭлемент();
Конецесли;
КонецЦикла;
Возврат СушкаРабота;
Конецфункции
Процедура Сформировать()
Док=СоздатьОбъект("Документ.БазовыйНаборРабот");
Т=СоздатьОбъект("ТаблицаЗначений");
СпрП=СоздатьОбъект("Справочник.ВидРаботПодч");
Док.ВыбратьДокументы(Дата1,Дата2);
Пока Док.ПолучитьДокумент()=1 цикл
Док.ВыгрузитьТабличнуюЧасть(Т);
Т.ВыбратьСтроки();
Пока Т.ПолучитьСТроку()=1 цикл
Сообщить("работа "+Т.ПодчРабота);
Если Т.ПодчРабота.Сушка=1 тогда
продолжить;
Конецесли;
Если Т.ПодчРабота.Окр=1 тогда
Осн=Т.ПодчРабота.Владелец;
Очер=Т.Оч;
Т.НоваяСтрока();
Т.Работа=Осн;
СушкаРабота1=ПолучитьСушку(Осн);
Т.ПодчРабота=СушкаРабота1;
Т.Оч=Очер+0.1;
Конецесли;
КонецЦикла;
Док.ЗагрузитьТабличнуюЧасть(Т);
Док.Записать();
КонецЦикла;
1
Ёпрст
гуру
09.08.13
✎
10:00
а нефик в цикле выборки тз ей новые строки лепить - сбиваешь выборку этим.
2
Ёпрст
гуру
09.08.13
✎
10:01
если очень хочется, то так тогда:
//Т.ВыбратьСтроки();
// Пока Т.ПолучитьСТроку()=1 цикл
Для к = 1 по Т.КоличествоСтрок() Цикл
Т.ПолучиьСтрокуПоНомеру(к);
3
Босечка
09.08.13
✎
10:02
Понятно. Попробую.
4
Босечка
09.08.13
✎
10:04
Спасибо!!!!! Все получилось!!!!!!!!!!!!!!!!!
2 + 2 = 3.9999999999999999999999999999999...