Индекс находится за границами массива #610945


#0 by amadeus2010
Добрый день есть файл ексель с колонкой День посещения и числовым значением от 1 до 7 (дни недели).Загружаю этот файл в 1С документ.Вот этот код:       Интереса ради ввел например число 24,потому что пользователь также может ввести любое число.Естественно программа выдала такую ошибку: {Документ.К_ЗакреплениеКлиентов.Форма.ФормаДокумента}: Индекс находится за границами массива                Строка.ДеньПосещения=Перечисления.ДниПосещения[DAY-1]; Как можно обойти такую ошибку.
#1 by Error pro
Посмотреть Перечисления.ДниПосещения, явно там не все заполнено
#2 by Mort
Мда...
#3 by del123
если DAY < 6 тогда по рукам пользователю)
#4 by Галахад
?(day > 7, 0, day)
#5 by del123
ой >
#6 by Fish
Подумать головой и написать правильно условие :))
#7 by cViper
try{ }catch(ArrayIndexOutOfBoundsException ex){ }
#8 by cViper
Отлавливай и сообщай об ошибке пользователя.
#9 by amadeus2010
В принципе можно использовать такую конструкцию
#10 by Mort
Т.е. когда 0 все пучком, а когда 24 неправильный день недели? Это раз. А два - использовать тут исключение, это, простите, ПЦ.
#11 by amadeus2010
я так думаю можно сделать Если DAY>0 Тогда... Кстаи вопрос по ходу дела.Как можно в обработке проведения проверить заполнено поле табличного документа или нет.Если не заполнено то выдать сообщение о ошибке. Я пытался в коде сделать следующее.Написал в модуле формы Ошибка=0 как переменная НачальнаяСтрока=2; и в Обработка проведения как уже можно догадаться документ проводиться без проверки на поставленные условия
#12 by cViper
Может просто Ордтейкер!=0
#13 by cViper
Думаю что ордертейкер переводится как  продавец.
#14 by amadeus2010
в модуле документа вместо поставил             и обработке проведения: Если Отказ тогда документ все равно проводится даже если есть незаполненные поля.Есть какая стандартная процедура проверки на незаполненные поля в табличной части документа и отказ в проведении если условие не выполняется? Что наподобие Если Строка.Ордтейкер.Пустая тогда Предупреждение("Не заполнены необходимые данные,документ не будет проведен!"); Отказ=Истина; Возврат; КонецЕсли;
#15 by hhhh
а в какой процедуре находится это Отказ = Истина; ?
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С