|
|
v8: Непонятная ошибка. Перебор Массива, Метод НайтиФайлы () |
☑ |
|
0
IDspooLeR
28.07.12
✎
07:38
|
Доброе утро, дорогие "форумчане".
У меня проблема - в процессе выполнения простецкой процедуры, а конкретно - перебора массива (полученного в результате работы метода НайтиФайлы() ), 1с Предприятие выдает сообщение
(!Преобразование значения к типу Булево не может быть выполнено
Пока НайденныеФайлы Цикл !)
&НаКлиенте
Процедура Поехали(Команда)
СписокФайлов.Очистить();
НайденныеФайлы = НайтиФайлы(Папка,"*.htm",Ложь);
Если НайденныеФайлы.Количество() < 1 Тогда
Возврат;
КонецЕсли;
Для Индекс = 0 По НайденныеФайлы.Количество() Цикл
СписокФайлов.Добавить(Строка(НайденныеФайлы[Индекс].ПолноеИмя));
КонецЦикла;
КонецПроцедуры
|
|
|
1
IDspooLeR
28.07.12
✎
07:43
|
Я извиняюсь за ошибки в названии темы, но я не могу отредактировать ее, точнее не знаю как. А отладчиком было проверено, в исходной папке лежит несколько каталогов и 4 файла, с расширением .htm. Примечательно то, что после прохода последнего элемента массива НайденныеФайлы, выдается указанная выше ошибка....
|
|
|
2
IDspooLeR
28.07.12
✎
07:53
|
Проблема решена...
|
|
|
3
hhhh
28.07.12
✎
07:55
|
(2) вообще-то так пишут
Для Каждого Файл Из НайденныеФайлы Цикл
СписокФайлов.Добавить(Файл.ПолноеИмя);
КонецЦикла;
|
|
|
4
IDspooLeR
28.07.12
✎
08:02
|
Если вы о том, что у меня в цикле диапазон был неправильный нужно было НайденныеФайлы.Количество()-1, то проблема не в этом. Изначально цикл был Для Каждого Из, но появлялась ошибка указанная в теме. Поэтому я изменил цикл на представленный, но ошибка не пропала. И когда я убрал лишнее, чтобы запостить код (закомментированные участки), после чего запустил обработку ошибки больше не появлялось, мистика......
|
|
|
5
m-serg74
28.07.12
✎
08:03
|
Для Индекс = 0 По НайденныеФайлы.Количество() Цикл
должно быть
Для Индекс = 0 По НайденныеФайлы.Количество() - 1 Цикл
|
|