v7: Ошибка времени выполнения #476271


#0 by Domovoi
Что это за ошибка "Ошибка времени выполнения" и почему она выскакивает?
#1 by AeDen
где выскакивает?
#2 by Жеглофф
#3 by Жеглофф
точнее
#4 by Domovoi
Пользователь добавляет строку, пытается выбрать номенклатуру и при выборе программа зависает. Ошибка времени выполнения УдалитьСтроку; : {Документ.ПокупкаСырьяПартия_СВС.Форма.Модуль}: Нет возможности удалить строку! В доке нашел единственное место де это может происходить. Но вся штука в том как я не побовал у меня она не выскакивает. Что же это?
#5 by Domovoi
Возможно ли это изза самой 1с? т.е. кривого инстолятора.
#6 by Злой Бобр
Может удаляешь несуществующую строку? У тебя прямо пишет что на 194 строке спотыкается. Смотри что в ней. Может из глобальника что-то тянешь. С 1С все возможно.
#7 by AeDen
отладчик. И за такие конструкции по рукам линейкой больно надо бить...
#8 by Ненавижу 1С
я думаю дело в кривых руках того, кто написал код, который приводит к ошибке
#9 by AeDen
194 строка модуля формы документа, а не глобальника.
#10 by Ёпрст
зачет удалять то, чего еще нет..
#11 by Domovoi
Код писел не я. Что как то соприкасается с глобальником я посмотрел все норм. Там полюбому чтото будет. Как я применю отладчик если у меня ниразу даже не выскочила ошибка(выскакивает у бухгалтера). Вприципе я уже на 90% уверен что дело в инстоляторе.
#12 by Ненавижу 1С
90% ну-ну
#13 by Ёпрст
там ничего нет для новой строки, например.. Отсюда - ошибка в момент.
#14 by Ёпрст
дело в твоём непонимании + ошибка в коде.
#15 by Ёпрст
+14 пока не окончен воод строки - её еще нет(например, нажал Esc и всё - нету её).. а ты её еще и удалить пытаешься. Ошибка не возникает, если Количество строк>1 - он просто удалит предыдущую.
#16 by Domovoi
Ошибка возникает как раз когда выбираешь первый раз. "пока не окончен воод строки - её еще нет(например, нажал Esc и всё - нету её).. а ты её еще и удалить пытаешься" Так если отменить ввод строки, то процедура приокончании редактирования строки наверно не сработает.
#17 by Domovoi
+Точне не наверно, а не срабатывает.
#18 by Ёпрст
В ПриОкончанииРедактированииСтроки - этой строки еще НЕТ.
#19 by Ёпрст
+18 воткни в эту строку СтатусВозврата и попробуй ввести хоть 1 строку в свой документ, мож тогда поймешь.
#20 by Ёпрст
+19 в эту процу (ПриОкончанииРедактированииСтроки которая)
#21 by Domovoi
Ошибочка. Эта строка уже есть. КоличествоСтрок=1. Хотя я и сам был удивлен.
#22 by Domovoi
+Это ж 1с сдесь все кверх ногами:)
#23 by AeDen
Это не в 1С все вверх ногами, это просто ДНК неверное. Пригласите специалиста.
#24 by Domovoi
Сдесь у многих привычка на днк или руки сваливать. Я привел конкретную ситуацию и при чем тут днк. И кстате чтож специалист сделает?:)
#25 by Domovoi
+А насчет кверх ногами: зачем нужна процедура приокончанииредактирования, нужна послеокончанияредактирования, а такой вроде нет.
#26 by Дядя Васька
может так? КонецПроцедуры и вообще непонятно нафик такой изврат-то...
#27 by Domovoi
Не я писал, но я впринципе согласен с тем кто писал этот код. Или есть способ другой? Смысл думаю понятен: Если в строке выбраны какието значения, но не выбрано сырье то эту строку убрать. И как это сделать по другому?
#28 by AeDen
Почему сваливать-то, если так и есть? А спец проанализирует и вычистит базу отподобной лажи....
#29 by AeDen
Надо пересмотреть архитектуру решения, а не лепить тупые заплатки, вызывающие ошибки. тонко и элегантно надо работать, а не топорно и по-идиотски...
#30 by Дядя Васька
Зачем убирать? Достаточно не выпускать из режима редактирования например пока не выберут. Опять же при вводе новой строки задать какое-то значение по умолчанию. А так фигня какая-то, человек заполнил кучу реквизитов, один забыл, все стерлось.
#31 by Torquader
+100 Если человек что-то не заполнил, то система должна "ткнуть его носом" в незаполненное поле и пояснить, что без дальнейшего заполнения этого поля продвинуться дальше нельзя.
#32 by AeDen
Система должна позволять пользователю вводить те данные, в которых пользователь не уверен. Так-же она должна позволять СОХРАНИТЬ те данные, которые ввел пользователь. С тем, что-бы пользователь в дальнейшем мог либо что-то дозаполнить, либо исправить, либо удалить введенные ошибочно данные. Вот ПРОВЕСТИ в случае некорректно внесенных данных система может и не позволять.
#33 by Domovoi
Согласен. Насчет заплаток абсолютно правильно сказали, просто дают 5 заданий в один момент и нормально переделать нет времени, буду как-нибудь выкраивать:). Всем спасибо.
#34 by Domovoi
+Согласен.
#35 by Torquader
Забив один костыль, ты всегда будешь в дальнейшем об него спотыкаться, и чтобы смягчить ситуацию, придётся забивать ещё костыли, а потом и ещё. И спустя какое-то время вообще нельзя будет исправить всё и реализовать нормально - поэтому, это всегда надо делать сразу.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям