Имя: Пароль:
1C
1С v8
Хочу в восьмерке кнопку "Прекратить отладку", как в семерке. Как?
0 Nemoj
 
03.07.13
11:02
Есть "остановить". Она ставит на паузу.
Есть "завершить". Она выключает 1с:Предприятие.
А мне нужно, как в семерке. Чтобы курсор отладчика выключился.
Вот я отлаживаю мега обработку, зарылся на десятый уровень вложенных циклов по 100500 проходов на каждом уровне. Вот увидел косяк. В семерке я жал "Прекратить отладку", правил код и запускал отладку заново. В восьмерке я вынужден ждать пока программа завершит все эти циклы. ЧЯДНТ?
1 pessok
 
03.07.13
11:03
1. ОбработкаПрерыванияПользователя()
2. Снять точку останова и продолжить отладку
3. Написать свою платформу "каквсемерке"
2 NDN
 
03.07.13
11:03
В конфигураторе "Отладка", Подключение
3 ДенисЧ
 
03.07.13
11:04
украсть исходники 8ки. Переписать под себя. Продавать.
4 almar
 
03.07.13
11:04
(0) Просто правишь код и нажимаешь "Начать отладку". Оно само перезапустит Предприятие
5 pessok
 
03.07.13
11:05
(2)(4) видимо не уловили суть задачи :)
6 Fragster
 
гуру
03.07.13
11:05
когда человек не может найти кнопку "остановить отладку", расположенную на первом уровне меню "отладка" - это говорит то многом.
7 NDN
 
03.07.13
11:06
(5) Да, я поторопился со своим мнением (
8 PLUT
 
03.07.13
11:06
(0) спроси у создателя помогатора пофигуратору, может он знает?
9 Maxus43
 
03.07.13
11:06
нельзя в 8-ке на лету править конфу и дальше тестить... надо обновлять ИБ.
10 aka AMIGO
 
03.07.13
11:07
(6) +1
у меня при нажатии этой кнопки закрывается 1с-предприятие :)
.е. завершается всё, кроме конфигуратора
11 Fragster
 
гуру
03.07.13
11:07
(9) да и в семерке тоже нельзя
12 ДенисЧ
 
03.07.13
11:07
(6) остановить отладку - завершает работу 1с-предприятия.
13 ДенисЧ
 
03.07.13
11:07
(9) а если внешка?
14 ИсчадиеADO
 
03.07.13
11:08
хочу в 7-ке отладчик как в 8-ке. За***ло перезапускать отдельное приложение :(
15 Fragster
 
гуру
03.07.13
11:08
(12) я из (0) не понял, что человеку надо - остановить, продолжить, выключить точку останова или отключиться от предмета отладки... все это есть. если надо что-то другое - пусть автор так и напишет
16 Maxus43
 
03.07.13
11:10
(11) автор говорит можно, я хз)
(13) тоже нельзя. или ты знаешь волшебство? (в случае внешки надо сохранить её и опять запускать)
17 ДенисЧ
 
03.07.13
11:11
(15) нужно прекратить отладку, аналогично 77.
(16) Знаю. См (3)
18 Chai Nic
 
03.07.13
11:15
Я так понимаю, ТС нужно чтобы как в семерке - прекратить выполнение отлаживаемого модуля, но без перезапуска Предприятия
19 John83
 
03.07.13
11:18
(14) а я вообще с 7кой работать не хочу :)
20 Nemoj
 
03.07.13
11:35
(18) Единственный понял меня.
21 Бледно Золотистый
 
03.07.13
11:37
22 ИсчадиеADO
 
03.07.13
11:39
(19) Деньги не пахнут (с) :)
23 ЧашкаЧая
 
03.07.13
11:39
Отладка - Отключить все точки останова (опционально)
F5
24 ЧашкаЧая
 
03.07.13
11:41
Прекратить выполнение модуля... Тогда (23) тоже не то.
25 Fragster
 
гуру
03.07.13
11:42
отладка - подключение - отключить
26 Chai Nic
 
03.07.13
11:43
(25) Тоже не в тему, модуль при этом продолжит выполняться до победного конца
27 Gucci76
 
03.07.13
11:43
(0) +100500
28 Бледно Золотистый
 
03.07.13
11:44
(24) ИМХО, если нужно прекратить выполнения модуля, то без вызова исключения или ОбработкаПрерыванияПользователя() не обойтись
29 Chai Nic
 
03.07.13
11:44
В общем, скорее всего, невозможность прерывания модуля  определена архитектурно на уровне ядра платформы..
30 Посмотрим
 
03.07.13
11:50
А можно вопрос, зачем тебе оставлять Предприятие после остановки отладки, если ты все равно должен будешь перезапустить его, после исправления ошибки?
31 Fragster
 
гуру
03.07.13
11:50
(26) а в семерке как?
32 Gucci76
 
03.07.13
11:52
(30) а если внешни
33 Gucci76
 
03.07.13
11:52
й отчет
34 del123
 
03.07.13
11:54
спасало только установка Возврат; в нужных местах..
35 Chai Nic
 
03.07.13
11:55
(31) В семерке можно прервать модуль, при этом управление передается интерфейсу предприятия.
36 hhhh
 
03.07.13
11:56
(31) там вообще дико. Отладчик отдельно, конфигуратор отдельно.

(0) просто закрой конфигуратор.
37 Gantosha
 
03.07.13
11:56
(30) а затем что иногда только на 15 й итерации мозг начинает ловить место где ошибка и ждать 15 раз полных проходов тяжело.
38 Nemoj
 
03.07.13
11:57
(30) Я отлаживаю внешний отчет/обработку. В семерке любой отчет/обработку удобно отлаживать как внешний, а потом вставлять в конфу.
(36) В конфигураторе я работаю, закрывать/открывать хочу меньше.
39 John83
 
03.07.13
11:57
а если вызвать ошибку в общем модуле? например деление на ноль
40 Chai Nic
 
03.07.13
11:57
(36) В семерке дико одно, в восьмерке другое.. :)
41 Nemoj
 
03.07.13
11:59
Короче, тему можно закрывать. Нужной кнопки нет и не будет...
42 Emilio
 
03.07.13
11:59
ахаха, автор улыбнул!
Точка останова в цикле? Дык убери ее оттуда или нажми продолжить отладку (кнопка F5).
Нда, в восьмерке отладчик хуже семерки? О_о
43 hhhh
 
03.07.13
12:00
(40) я в семерке крайне редко запускал отладчик. Ну охрененно неудобно.
44 Emilio
 
03.07.13
12:00
(41) может сперва почитаешь об отладчике восьмерочном прежде чем так говорить?
45 Fish
 
03.07.13
12:00
(41) Всё есть.
46 Gucci76
 
03.07.13
12:01
(45) Заинтриговал!!!
47 Бледно Золотистый
 
03.07.13
12:02
(44) Может сначала прочтешь, что автору нужно? А что если там 100500 итераций, а проверить нужно 2-3 при разных параметрах, ждать 30 минут, пока выполниться код, или перезапустить предприятие?
48 del123
 
03.07.13
12:02
(42) Нужно что бы выполнение обработки прервалось, и при этом не закрылось предприятие
49 Emilio
 
03.07.13
12:03
(45) нене. оставь его не разочаровывай! Человек остался в прошлом, ты представляешь какой у него сейчас стресс? )))
50 del123
 
03.07.13
12:04
(49) Может ты раскроешь секрет? Убрать точки останова и продолжить выполнение обработки не предлагать, как и закрытие предприятия
51 Emilio
 
03.07.13
12:04
(47) Прочел. автор вошел в цикл, прошел 2-3 итерации нашел глюк и теперь хочет выйти из цикла. Не вижу сложности что бы выйти из цикла и не ждать стопицот итераций.
52 Бледно Золотистый
 
03.07.13
12:04
(51) как?
53 zak555
 
03.07.13
12:06
8ка мокрая ещё
54 Fish
 
03.07.13
12:07
(50) СП совсем не читаем?
"ОбработкаПрерыванияПользователя()
...
...
Данный метод рекомендуется использовать в длительных циклических операциях."
55 Fragster
 
гуру
03.07.13
12:09
в инструментах разработчика есть функция для изменения значения в процессе отладки, можно условие на переменную впилить и менять, если нужно выйти из цикла, если уж все на сервере происходит и обработка прерывания пользователя не работает. Но вообще ИМХО это о копрокоде говорит...
56 Gucci76
 
03.07.13
12:10
(54) Если провести аналогию 8 и 7.7, то  
ОбработкаПрерыванияПользователя() - аналог кнопки ESC в предприятии.
В 7-ном отладчике не надо было нажимать ESC, чтобы прекратить отладку.
57 Emilio
 
03.07.13
12:10
(52) отжать точку останова в цикле установить ее позже цикла и нажать f5.
можно еще остановить отладку или остановить по ошибке. или прочесть СП==> (54)
Ды, как угодно, но уж точно не хуже семерки. Где для отладки запускает аж три приложения и сразу ничего не отладишь, а если уж завершить отладку так вот тебе shift+f5.
58 Emilio
 
03.07.13
12:11
(48) а в семерке есть другой способ? О_о
59 1Сергей
 
03.07.13
12:12
смешные вы
60 Бледно Золотистый
 
03.07.13
12:12
(57) 1. Ждем 30 минут, 2. остановка отладки = перезапуск предприятия, 3. про ОбработкаПрерыванияПользователя уже было? Так что? Кончились варианты?
61 ДенисЧ
 
03.07.13
12:13
(58) Не поверишь.
62 Fragster
 
гуру
03.07.13
12:15
(60)

Выходим = Ложь
Пока Не Выходим Цикл
 ... <<<< тут точка останова
КонецЦикла;

через инструменты разработчика (или своей элементарной функцией) меняем через ВычислитьВыражение или Табло Выходим на истина...
63 ДенисЧ
 
03.07.13
12:16
(62) И чего только люди не придумают, чтобы нормальный отладчик не делать...
64 del123
 
03.07.13
12:16
(63) +1
65 Бледно Золотистый
 
03.07.13
12:17
(62) Про это я еще в (21) и (28) писал. Но тут влез один, начал оскорблять автора и сказал, что знает способ лучше, я вот хочу выяснить этот способ у него.
66 Gucci76
 
03.07.13
12:17
(63) (64) Если быть объективным, то улучшения появились.
Кроме остановки отладки )))
67 del123
 
03.07.13
12:18
(66) Но очень не хватает порой..)
68 Fragster
 
гуру
03.07.13
12:18
(63) ХЗ, у меня такой ситуации, что прямо западло перезапустить предприятие не возникало. Ибо отлаживаю сначала одну итерацию да и вообще стараюсь делать все небоольшими несвязанными кусочками
69 ДенисЧ
 
03.07.13
12:20
(68) Делаешь внешнюю обработку, которая правит документы. Начинаешь проверять, и вдруг обнаруживаешь, что она не то делает.
Надо остановиться.
А конфигурация - упп на слабом компе, перезапускаться будет 5 минут...
70 Ахиллес
 
03.07.13
12:21
(68) почему ты думаешь, что удобно тебе, то удобно всем?
71 Fragster
 
гуру
03.07.13
12:22
(70) хз :) я вообще сначала в ИР в режиме предприятия накидываю код как правило :)
72 Fragster
 
гуру
03.07.13
12:24
(69) когда делаешь внешнюю обработку, которая правит документы - ты реально сначала не проверяешь на одном документе???
73 Ахиллес
 
03.07.13
12:24
Одинэсники привыкли свою рукошопость прикрывать якобы ненужностью. А копнёшь, так всё дело в том, что "ну не шмогла, я".
74 del123
 
03.07.13
12:25
(72) Суть то не в этом)
Суть в том, что кнопки нет и проиходится извращаться...)
75 Fragster
 
гуру
03.07.13
12:26
(74) если нет кнопки - надо как-то с этим жить, а не ныть.
76 Ахиллес
 
03.07.13
12:26
(72) Дело не в конкретных примерах. Дело в том, что прекратить отладку не перезапуская предприятие это было бы удобно.
77 1Сергей
 
03.07.13
12:26
(72) косяк может обнаружиться через несколько документов
78 ДенисЧ
 
03.07.13
12:26
(72) А если идёт огромный запрос, который выбирает документы по критерию, и я налажал в условиях, которые проявились только на рабочей базе? :-)
Или Результат работы зависит состояния документов в базе?
79 Бледно Золотистый
 
03.07.13
12:26
(72) Тупо рекурсия зациклилась. В ИР ее не отладишь. Перезапуск предприятие - долго.
80 Fragster
 
гуру
03.07.13
12:28
даже на моем п4 перезапуск предприятия меньше минуты. а пока перезапускается - можно править код.
81 Fragster
 
гуру
03.07.13
12:28
(78) сначала думать, потом - делать.
82 Gucci76
 
03.07.13
12:29
(80) это все оправдания.
в (0) суть в том что это АРХИудобно
83 ДенисЧ
 
03.07.13
12:31
(81) ЧТо делать? Ты издеваешься? НЕкогда думать, делать надо!
84 Gucci76
 
03.07.13
12:31
+ (82) и неожиданно, что в 8.Х от этого отказались.
Я полдня искал эту кнопку )))
85 Gucci76
 
03.07.13
12:34
+ (84) и никто обратно из-за этого на 7.7 не перейдет ))))
86 Lenka_Boo
 
03.07.13
12:36
(0) Правая кнопка мыши на панели - "настройки" - категория "отладка". Поройся в командах.
Мне такая кнопка не нужна, так что я не знаю, есть ли там что-то подобное.
87 break
 
03.07.13
12:36
В снегопате тоже подобного не нашел
88 mishgan75
 
03.07.13
12:40
открой для себя точка останова с условием(много времени с экономишь)
89 Fragster
 
гуру
03.07.13
12:40
лично мне намного больше не хватает перемещения курсора по заглавным буквам (как в нетбинзе), чтобы РеализацияТоваров по стрелке+контролу в центр слова встать (между я и Т)
90 Fish
 
03.07.13
12:55
(79) Не боись. Рекурсия надолго зациклится не может. Предприятие упадёт очень быстро :)
91 Калиостро
 
03.07.13
13:08
(84) +1 Не только я один пытался найти черную кошку в темной комнате... Суки, убрали в отладчике нужную функцию :( Кто в семерке не отлаживал внешние отчеты, по-моему, не понимают, что надо ТС.
92 pumbaEO
 
03.07.13
13:18
(89) сделай , не вижу проблемы. Javascript знаешь, скрипт на снегопате в пол часа делается.
93 pumbaEO
 
03.07.13
13:20
(0) почему нельзя вызвать исключение?
94 Chai Nic
 
03.07.13
15:07
(93) Как это сделать из отладчика (не адаптируя код)?
95 pumbaEO
 
03.07.13
15:48
(94) вызови внешнюю обработку.
96 Chai Nic
 
03.07.13
22:42
(95) Это как? Если из отладчика через вычисление выражений обратиться к функции, которая вызывает исключение - это исключение замкнется на отладчике и никак не скажется на текущем отлаживаемом модуле.
97 Chai Nic
 
03.07.13
22:44
На самом деле это _очень_ неудобно, как тут писали, для прерывания отладки внешних обработок перезагружать платформу в целом - маразм.
98 Neg
 
03.07.13
22:48
(53) 10 лет уже мокрая, но хотя так долго длится репродуктивный возраст, это замечательно.
99 Elf_80_lvl
 
03.07.13
23:04
Судя потому что не все сразу понимают что нужно ТС его креатив не сильно востребованная вещь =)
5 лет работаю с 1с и сходу не припомню чтобы мне это очень понадобилось, наверное потому что я не в 7.7 начинал =)
100 Elf_80_lvl
 
03.07.13
23:05
сто
101 Тьма
 
03.07.13
23:40
(99)Давайте спорить о вкусе устриц с теми, кто их ел (с)
102 Chai Nic
 
04.07.13
07:12
(99) Ну конечно можно и платформу перезапускать.. однако жалко напрасно потерянного времени, она же запускается небыстро (особенно тяжелые конфигурации).
103 alkov
 
04.07.13
07:41
Смешно читать, как люди, в глаза не видевшие 7.7 начинают давать "умные" советы как сделать, чтоб было "каквсемёрке".

По теме: прекращения выполнения кода без завершения работы предприятия реально не хватает
104 bolder
 
04.07.13
08:09
Дв, это так.В семерке мегаудобно при откладке внешних обработок  просто нажать Прекратить.Ту т же надо заранее писать в коде либо условия, либо ОбработкаПрерыванияПользователя(), в общем лишние телодвижения.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший