Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Ошибка при загрузке из Клиент-банка "Индекс находится за границами массива"
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
Вадим_1979
Добрый день! У меня 1С 8.2. Сделал настройки в Конфигураторе так, чтобы можнобыло сортировать по всем полям журнала документов, а не только по дате и номеру. При загрузке данных из клиент банка на часть данных выдает ошибку:
{Обработка.КлиентБанк.МодульОбъекта(3663)}: Индекс находится за границами массива
ВидДоговора = Строка(УправлениеВзаиморасчетами.ОпределитьВидДоговораСКонтрагентом(СтрокаСекции
.ВидОперации)[0]);

Как можно это исправить?
Спасибо.


 ! 

Правила, п. 3,9
 
logist
Не понятно как это
Цитата(Вадим_1979 @ 14.12.12, 11:37) необходимо зарегистрироваться для просмотра ссылки
Сделал настройки в Конфигураторе так, чтобы можнобыло сортировать по всем полям журнала документов, а не только по дате и номеру.

связуется с обработкой КБ. Это раз.

Два - обработка КБ правленая, в типовой нет строки 3663, соответственно надо еще знать что вы там правили, и вероятно то что вы правили и вызывает эту ошибку

p.s. и вообще, вам предупреждение. переезжаем в другой раздел
Vofka
Как написали выше - вещи о которых вы говорите никак не связаны.
Вадим_1979
Спасибо. Тогда вопрос к программисту, который мне настраивал.
igor8000
В общий модуль клинет банка надо изменить условие проверки в
Процедура Загрузить(ДокументыКИмпорту) Экспорт

Строка

ВидДоговора = Строка(УправлениеВзаиморасчетами.ОпределитьВидДоговораСКонтрагентом(СтрокаСекции.ВидОперации)[0]);


Заменить на

Если УправлениеВзаиморасчетами.ОпределитьВидДоговораСКонтрагентом(СтрокаСекции.ВидОперации).Количество() <> 0 Тогда
    ВидДоговора = Строка(УправлениеВзаиморасчетами.ОпределитьВидДоговораСКонтрагентом(СтрокаСекции.ВидОперации)[0]);
КонецЕсли;



 ! 

необходимо зарегистрироваться для просмотра ссылки: 9
 
donbass

Цитата(igor8000 @ 29.08.16, 11:47) необходимо зарегистрироваться для просмотра ссылки
Если УправлениеВзаиморасчетами.ОпределитьВидДоговораСКонтрагентом(СтрокаСекции.ВидОперации).Количество() <> 0 Тогда
ВидДоговора = Строка(УправлениеВзаиморасчетами.ОпределитьВидДоговораСКонтрагентом(СтрокаСекции.ВидОперации)[0]);
КонецЕсли;

стремный код.
два раза вызывается функция.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.