Closed artbear closed 3 years ago
Проверить можно, если допустить синтакс-ошибку в коде - например, использовать переменную, которую не задавали.
Сообщить(МояПеременная);
Проблема в том, что в метод 1 приезжает НачальныйИндекс, который больше длины строки, а СтрНайти падает на этом ( а вычисляется он выше, в методе ПодготовкаКодаИсполнения(Код), см. 2
1
Функция РазборПрочитатьДоСимвола(Строка, Символ, НачальныйИндекс = Неопределено, Направление = Неопределено, СмещатьИндекс = Истина) Экспорт
Если Направление = Неопределено Тогда
Индекс = СтрНайти(Строка, Символ, , НачальныйИндекс); // тут ошибка
2
НомерСимвола = 1;
ИТК_Строки.РазборПрочитатьНезначимые(СтрокаКода, НомерСимвола);
Идентификатор = ИТК_Строки.РазборПрочитатьИдентификатор(СтрокаКода, НомерСимвола);
Если ПустаяСтрока(Идентификатор) Тогда
Продолжить;
КонецЕсли;
ИТК_Строки.РазборПрочитатьНезначимые(СтрокаКода, НомерСимвола);
СледующийСимвол = ИТК_Строки.РазборПрочитатьСимвол(СтрокаКода, НомерСимвола, Ложь);
ВыражениеВозврата = ИТК_Строки.РазборПрочитатьДоСимвола(СтрокаКода, ";", НомерСимвола);
@Evg-lylyk посмотри, возможно, быстро исправишь
Падает на строке кода
Попытка
Да, падает на простом коде
Попытка
Исключение
КонецПопытки;
@Evg-lylyk помогла вставка кода в блок 2
ИТК_Строки.РазборПрочитатьНезначимые(СтрокаКода, НомерСимвола);
СледующийСимвол = ИТК_Строки.РазборПрочитатьСимвол(СтрокаКода, НомерСимвола, Ложь);
Если НомерСимвола > СтрДлина(СтрокаКода) Тогда // мой код
НомерСимвола = СтрДлина(СтрокаКода);
КонецЕсли;
ВыражениеВозврата = ИТК_Строки.РазборПрочитатьДоСимвола(СтрокаКода, ";", НомерСимвола);
Спасибо за информацию, поправил 1.8.8, 1.9
Описание ошибки При выполнении кода с ошибкой в консоли выдаются ошибки исполнения самого инструмента и нельзя узнать, что именно не так в твоем же коде (
Т.е. для более-менее сложного кода, который выдает исключение, выдаются странные модальные исключения со строками из Тулкита.
Окружение:
Infostart Toolkit 1.8.7
Платформа: 8.3.18.1483 (Linux x86-64) Режим БД: клиент-серверный
Конфигурация: 1С:Комплексная автоматизация 2 (2.4.13.170) Основной режим запуска: Управляемое приложение Режим совместимости: Версия8_3_14 Версия БСП: 3.1.3.470
Клиент: ОС: Windows x86 (Microsoft Windows 10 version 10.0 (Build 14393)) Язык: ru Режим запуска: Управляемое приложение