|
ЗуП вылетает при запуске определенной обработки, что делать? | ☑ | ||
---|---|---|---|---|
0
svird
08.08.17
✎
11:23
|
Есть дописка, которая обновляет документы расчета, введенные на основании увольнения. При запуске этой обработки программа тупо закрывается без каких либо сообщений. В отладчике ничего не видно. На тестовой дате, для которой сделал 1 документ проходит. Что делать еще? Тестирование запускал, вроде ошибок нету.
|
|||
1
svird
08.08.17
✎
11:34
|
где можно поковырять? замер производительности не помогает и остановка по ошибке тоже.
|
|||
2
svird
08.08.17
✎
12:46
|
происходит при записи регистра сведений из-за не уникального значения измерения. Но как это сообщить пользователю и почему вылетает программа?
Поставил на моменты записи: Попытка НаборНомеровПриказа.Записать(Истина); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; Но они не срабатывают, ничего не сообщают, а прога просто закрывается. |
|||
3
Heckfy
08.08.17
✎
12:48
|
Запусти сервер 1С Предприятия в режиме отладки.
|
|||
4
piter3
08.08.17
✎
12:48
|
и в журнале ничего?может посмотреть в модуль регистра еще
|
|||
5
piter3
08.08.17
✎
12:49
|
и кстати,а debug запущен,может просто не заходишь
|
|||
6
svird
08.08.17
✎
12:51
|
Отладка работает, я даже прохожу, но оно проявляется не на всех записях, а пока дойду до нужной уже не удается отследить на каком моменте оно выбрасывает конкретно, а перед выбросом не останавливается по ошибке.
(4) в модуле регистра тоже прерывания на ошибках поставил, но не натыкается. |
|||
7
piter3
08.08.17
✎
12:52
|
(6) иди последовательно тогда.
|
|||
8
svird
08.08.17
✎
12:58
|
Я понял оно зависает в модуле регистра на такой конструкции:
Для Каждого Запись из ЭтотОбъект Цикл начинает долбить ее до бесконечности и переполняется |
|||
9
svird
08.08.17
✎
12:59
|
там возвращает одну и туже запись, как это преодолеть?
|
|||
10
piter3
08.08.17
✎
13:00
|
(9) Кто возвращает?Ничего не понятно
|
|||
11
svird
08.08.17
✎
13:02
|
Для Каждого Запись из ЭтотОбъект Цикл
Если Запись.НомерПриказа = 0 Тогда Продолжить; КонецЕсли; Если СписокНомеров.НайтиПоЗначению(Запись.НомерПриказа) = Неопределено Тогда СписокНомеров.Добавить(Запись.НомерПриказа); Иначе ОбщегоНазначения.СообщитьОбОшибке("№ приказа "+Запись.НомерПриказа+" не уникален !!!",Отказ); Прервать; КонецЕсли; КонецЦикла; |
|||
12
svird
08.08.17
✎
13:03
|
не срабатывает
Если СписокНомеров.НайтиПоЗначению(Запись.НомерПриказа) = Неопределено Тогда оно добавляет один и тот же номер |
|||
13
piter3
08.08.17
✎
13:09
|
(12) зачем в цикле поиск делать
|
|||
14
svird
08.08.17
✎
13:11
|
(13) Не я писал, сам удивляюсь, а как надо?
|
|||
15
piter3
08.08.17
✎
13:12
|
(14) Я задачу не понимаю.
|
|||
16
svird
08.08.17
✎
13:15
|
вот тема на подобии: Регистр сведений проверка на уникальность
Проверка уникальности измерения регистра сведений |
|||
17
svird
08.08.17
✎
13:16
|
он в теме тоже через цикл сделал, еще и с запросом в цикле
|
|||
18
piter3
08.08.17
✎
13:22
|
замечательно,но цикл зачем нужен был.Есть записи уже тогда пиши не знаю там в журнал или еще как-то,нет тогда модифицируй или ничего не делай
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |