|
v8: Отладить внешнюю обработку | ☑ | ||
---|---|---|---|---|
0
america2013
20.05.14
✎
10:47
|
Доброго дня, уважаемые товарищ!!!
Помогите пожалуйста, с такой проблемой: есть внешняя обработка заполнения табличной части, которую хочу доработать, в связи с этим стоит отладить, почему попадают не верные данные. Сохранить обработку и открыть не удается, якобы нет связи с объектом. Знаю что обработка каждый раз создает временный файл и ТМР и оттуда запускается, но пытаясь сделать намеренную ошибку в коде и попасть в эту временную обработку, что бы исправить ошибку и отлаживать дальше - не удается, - когда снова запускаю обработку, снова создается временный файл с моей ошибкой, а я рассчитывал, что он будет работать с тем же временным файлом. Прошу подскажите, как отлаживать такие обработки? Самостоятельно удалось найти только отладку внешних печатных форм, где есть возможность привязать объект к ссылке на форме, а оттуда к Печать(), но как и возможно ли это сделать для Обработки? Приложение обычное. Заранее благодарен!!! |
|||
1
vicof
20.05.14
✎
10:48
|
точку останова в форме поставь перед вызовом обработки
|
|||
2
Wobland
20.05.14
✎
10:49
|
(1) а я за отладку - остановку по ошибке
|
|||
3
Kalambur
20.05.14
✎
10:49
|
в обработке делай ссылку на документ для отладки
|
|||
4
ale-sarin
20.05.14
✎
10:49
|
В форме напишите
Процедура КнопкаВыполнитьНажатие(Кнопка) ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); Инициализировать(ДокументОбъект, ИмяТЧ, "ТабличноеПоле"); Форма = ДокументОбъект.ПолучитьФорму(); Форма.Открыть(); КонецПроцедуры |
|||
5
america2013
20.05.14
✎
11:53
|
(1) Так ведь это будет точка остановке на форме обработки, которая в файле, а не та, которую я добавил в справочник. Как же эта точка может сработать?
(2) Мне тоже кажется, что можно как-то вызвать событие, которое и перенесет меня в создавшуюся обработку, но как вызвать такое событие? (3)(4) Создал реквизит ДокументСсылка.Реализация, что бы передать в обработку, но не могу добавить на форму - реквизита нет в размещенных данных... Я так понимаю инициализацию надо делать при открытии? При открытии пишет: http://clip2net.com/s/i96DrZ |
|||
6
Wobland
20.05.14
✎
11:57
|
(5) деление на 0 в попытке, к примеру
|
|||
7
ale-sarin
20.05.14
✎
12:00
|
(5)
ДокументССылка - реквизит обработки с типом "ДокументСсылка.Реализация" ИмяТЧ - реквизит обработки с типом строка. Размещаете их на форме. На кнопку "Выполнить" вешаете процедуру из (4). |
|||
8
Godofsin
20.05.14
✎
12:00
|
(5) Параметры авторегистрации почистить
|
|||
9
america2013
20.05.14
✎
12:02
|
(6) Пожалуйста, разъясните. Делаю так
Попытка ф=1/0; Исключение ВызватьИсключение; КонецПопытки; Останавливается на строке: ф=1/0; То есть я попадаю в конфигуратор и вижу временную обработку, но дальше двинуться не могу - обработка завершила работу. Или я Исключение не верно оформил? |
|||
10
Wobland
20.05.14
✎
12:04
|
(9) Исключение не верно оформил?
|
|||
11
ДенисЧ
20.05.14
✎
12:04
|
(9) ВызваатьИсключение убери
|
|||
12
Wobland
20.05.14
✎
12:04
|
(10) в смысле да
|
|||
13
Wobland
20.05.14
✎
12:04
|
а у меня чаще всего й=2/0, я большой оригинал
|
|||
14
america2013
20.05.14
✎
12:07
|
Если сделать:
Попытка ф=1/0; Исключение КонецПопытки; тогда обработка срабатывает без ошибок, то есть не могу попасть в конфигуратор, как хотелось бы. |
|||
15
Wobland
20.05.14
✎
12:11
|
предложить средство попадания, не?
|
|||
16
User_Agronom
20.05.14
✎
12:12
|
Нда. Сложно ремонтировать незаглушенный двигатель автомобиля.
|
|||
17
america2013
20.05.14
✎
12:14
|
(15) Приму любой совет : )
(16) Во-во! Как такие обработки вообще отлаживать??? То есть надо внести в обработку (которая в файле) изменения, испробовать, предположить, что не получилось, опять изменить файл, опять загрузить в справочник, опять испробовать, так что ли? |
|||
18
Любопытная
20.05.14
✎
12:16
|
(17) остановку по ошибке включи, попадешь в исключение
|
|||
19
Wobland
20.05.14
✎
12:19
|
(17) два самых простых пути тебе назвали. и не раз
|
|||
20
america2013
20.05.14
✎
12:30
|
Да, верно. Решение может быть такое:
1. добавил в код ф=1/0; 2. текст ошибки ввел - деление на 0 3. попадаю в отладку именно там, где и хочу; продолжить выполнять код, конечно после этого не удается, но и этого вполне достаточно. Ошибка моя была в том, что я это деление на ноль делала раньше того места, где хотел бы посмотреть результат выполнения))) Благодарю всех за помощь и приятное общество!!! |
|||
21
inspam
20.05.14
✎
12:46
|
||||
22
Dionis Sergeevich
20.05.14
✎
12:57
|
||||
23
Dionis Sergeevich
20.05.14
✎
12:58
|
в (22) очень простой способ для понимания (для новичков)
(0) плюсик поставить там не забудь ;) |
|||
24
america2013
20.05.14
✎
13:12
|
(21) Наверное попробую допилить для себя, выдает ошибку при инициализации.
(22)(23) Я в полнейшем восторге от такого способа!!!!!! И главное можно продолжать работать! Понятно конечно, что это немного не ровный метод, но главное работает! |
|||
25
Dionis Sergeevich
20.05.14
✎
14:13
|
(24) Незачто. Только ты мне забыл плюсик поставить там
|
|||
26
america2013
20.05.14
✎
14:50
|
Я вроде ставил, может не там, извини, я на том сайте редко бываю.
http://clip2net.com/s/i9bFy0 |
|||
27
Dionis Sergeevich
20.05.14
✎
14:57
|
(26) ок спасибо =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |