0
---Fix---
17.04.12
✎
09:34
|
Все значения в заполненной таблице есть, т.е постредством метода ВыбратьСтроку я их вижу.
Данный код рабочий, но если, в процедуре Тест(), значение при поиске изменить на любое другое от 1 до 12 разумеется.
Сообщить(ТЗГлавная.Периоды.НайтиЗначение(8, НужнаяСтрока, "НомерПериода"));
то уже возвращает 0. Типы данных числовые и вроде совпадают, не могу понять в чем дело помогите пожалуйста.
Процедура ЗаполнитьТаблицуПериодов(пТаблицаПериодов)
пТаблицаПериодов.НоваяКолонка("НомерПериода", "Число", 2);
пТаблицаПериодов.НоваяКолонка("ВидыТеплаСПараметрами", "ТаблицаЗначений");
пТаблицаПериодов.УдалитьСтроки();
Для а=1 По 12 Цикл
пТаблицаПериодов.НоваяСтрока();
пТаблицаПериодов.НомерПериода = а;
//КопияТЗ = СоздатьОбъект("ТаблицаЗначений");
//ЗаполнитьТаблицуВидовТеплаСПараметрами(КопияТЗ);
//пТаблицаПериодов.ВидыТеплаСПараметрами = КопияТЗ;
КонецЦикла;
КонецПроцедуры
Процедура ЗаполнитьГлавнуюТаблицу(пГлавнаяТаблица)
пГлавнаяТаблица.УдалитьСтроки();
врспр = СоздатьОбъект("Справочник.Контрагенты");
врспр.ПорядокКодов();
врспр.ВыбратьЭлементы();
Пока врспр.ПолучитьЭлемент() = 1 Цикл
Если врспр.Уровень() = 1 Тогда
пГлавнаяТаблица.НоваяСтрока();
пГлавнаяТаблица.Слой = врспр.Код;
КопияТЗ = СоздатьОбъект("ТаблицаЗначений");
ЗаполнитьТаблицуПериодов(КопияТЗ);
пГлавнаяТаблица.Периоды = КопияТЗ;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Процедура Тест()
ТЗГлавная = СоздатьОбъект("ТаблицаЗначений");
ТЗГлавная.НоваяКолонка("Слой", "Число", 8);
ТЗГлавная.НоваяКолонка("Периоды", "ТаблицаЗначений");
ЗаполнитьГлавнуюТаблицу(ТЗГлавная);
НужнаяСтрока = "";
ТЗГлавная.НайтиЗначение(99000000, НужнаяСтрока, "Слой");
ТЗГлавная.ПолучитьСтрокуПоНомеру(НужнаяСтрока);
Сообщить(ТЗГлавная.Периоды.НайтиЗначение(9, НужнаяСтрока, "НомерПериода"));
ТЗГлавная.Периоды.ВыбратьСтроку();
КонецПроцедуры
|
|