Имя: Пароль:
JOB
Работа
В то время как ... бороздят, 1с не может сделать нормально исключения.
Ø (Волшебник 19.03.2015 16:00)
, ,
0 Гений 1С
 
гуру
19.02.15
14:33
Можно немного поною?
1с сделало в последнее время много гитек, даже выгрузку/загрузку форм в файл.

Но не может сделать, блин, чтобы галочка "Останавливаться по ошибке" останавливала только на необрабатываемых Попыткой-Исключение ошибках, которые приводят к аварийному завершению работу.

Доколе? Эту ветку читает Нуралиев?
1 eklmn
 
гуру
19.02.15
14:34
у меня все нормально
2 Ёпрст
 
19.02.15
14:36
прекращай г..о кодить и жуколов вообще не понадобится.
3 Господин ПЖ
 
19.02.15
14:36
ран-тайм умер, что и где должно остановиться?
4 Либерал
 
19.02.15
14:36
а ты не юзай попытку где не попадя (и к рарусу это тоже очень сказать хочется)
5 Господин ПЖ
 
19.02.15
14:37
(2)+100
6 Легат
 
19.02.15
14:37
Есть такое..
7 IШаман
 
19.02.15
14:38
Сижу думаю о том как сильно это надо и надо ли оно лично мне. За 10 с лишним лет работы с 1с не разу не понадобилось - так же впрочем как и в других системах.
8 Провинциальный 1сник
 
19.02.15
14:39
(0) Вы так говорите, как будто это что-то плохое.
9 Зеленый Кот
 
19.02.15
14:39
и хде ты нашел галочку "Останавливаться по ошибке"?
10 mehfk
 
19.02.15
14:40
Буквально полгода назад объект ИнтернетПочта падал на некорректном (с точки зрения 1С) значения поля "кодовая страница" в заголовке письма. Вышла 8.3.6, и в ней это пофикшено. Всего-то полгода прошло.
11 Господин ПЖ
 
19.02.15
14:40
(9) в отладке
12 IШаман
 
19.02.15
14:41
(10) Боюсь то что хочет ТС никто кроме него не считает ошибкой, и Нуралиев в ближайшую 10 летку не сделает этой непонятной но очень кому то нужной фишки.
13 Масянька
 
19.02.15
14:41
(2) Закрытие месяца, формирование оборотки (пару раз было), загрузка КЛАДР... Как не хватает семерочного ESC!
14 ДенисЧ
 
19.02.15
14:42
(2) ТС и "перестать г***кодить" - понятия несовместимые
15 hhhh
 
19.02.15
14:43
(13) ну Ctrl-Break жмите.
16 Ёпрст
 
19.02.15
14:43
(14) Продай ему метлу тогда!
17 Ёпрст
 
19.02.15
14:44
:)
18 Господин ПЖ
 
19.02.15
14:44
кста, ТЖ умеет снимать дампы...
19 Господин ПЖ
 
19.02.15
14:45
(16) физический труд тоже мозга требует
20 Масянька
 
19.02.15
14:45
(15) Не арбайтэн.
21 Господин ПЖ
 
19.02.15
14:45
сосю можно только вместо ишака впрячь... воду в арык качать
22 D_E_S_131
 
19.02.15
14:47
(0) Поиск ошибок по тексту (есть же там такая возможность) не помогает?
23 Гений 1С
 
гуру
19.02.15
14:47
не нашел я поддержки.... все любят делать лишнюю работу
24 Гений 1С
 
гуру
19.02.15
14:47
(22) я отлаживаю и приходится ставить точку останова и только потом галку ставить, когда дойдет то точки... парит уже
25 Patrio_
O_Muerte
 
19.02.15
14:50
(22)Тему можно закрывать?
26 D_E_S_131
 
19.02.15
14:50
(24) больше похоже на то что не "отлаживаешь", а "откладываешь" если честно. :)
27 Господин ПЖ
 
19.02.15
14:51
(24) ткнешь в f5, не сдохнешь
28 IШаман
 
19.02.15
14:53
(21) Арык система более капризная чем россиский бизнесс с 3 кратным запасом рентабельности. Бизнесс от сосиных упражнений не встанет, а вот арык махом пересохнет. Так что пусть лучше 1с-ит.
29 Mutniy2
 
19.02.15
14:54
(0) > Доколе? Эту ветку читает Нуралиев?

О, да. Все твои ветки он читает.
Он твой ярый фанат...
30 IШаман
 
19.02.15
14:55
(29) При чем злобный фанат, он все думает чем бы еще кроме УФ насолить ему.
31 Jonny_Khomich
 
19.02.15
14:55
(2) даже в типовых конфигурациях используется исключение.
32 Господин ПЖ
 
19.02.15
14:56
код состоящий из бесконечных try/catch - очередной подарок гения...
33 Гёдза
 
19.02.15
14:57
Все дружно ждем 8.4 - там все будет
34 ShoGUN
 
19.02.15
15:09
(32) Это фигня. Мой начальник в период своей работы в сбербанке видел какой-то софт, в котором было сделано буквально так(язык и подробности не принципиальны).

int main() {
try {
бла-бла-бла
}
catch(...){
printf("Catastrophical exception!");
}

Т.е. любое необработанное исключение в программе валило её с указанным сообщением. Диагностика на грани фантастики.
35 Гений 1С
 
гуру
19.02.15
15:14
(32) смотри (31)
36 Гений 1С
 
гуру
19.02.15
15:14
(26) буквоед? фу
37 dmpl
 
19.02.15
15:18
(34) Покемон-код называется.
38 Fuas4
 
19.02.15
15:19
Че напали то?) Никто, похоже, в альфа-авто остановку по ошибке не включал. Там можно f5 стереть, пока все исключения пройдут. Тоже хочу галку "не останавливать по ошибке в попытке"
39 Господин ПЖ
 
19.02.15
15:20
(35) там они по месту идут... а не просто понатыкано от балды чтобы приложение не падало и отладка превращается в бесконечное тыкание f5
40 Господин ПЖ
 
19.02.15
15:21
> Никто, похоже, в альфа-авто остановку по ошибке не включал. Там можно f5 стереть, пока все исключения пройдут

явный признак "гениального" кода
41 Fuas4
 
19.02.15
15:22
(40) тут никто и не спорит. Но это Рарус. И альфа-авто много где стоит.
42 dmpl
 
19.02.15
15:32
Кстати, вы что, только 1 галку видите? Там же есть еще одна: "Останавливаться только на ошибках, включающих текст:"
43 Господин ПЖ
 
19.02.15
15:33
(42) это не гениально
44 Fuas4
 
19.02.15
15:36
(42) Это еще текст надо писать туда. При переводе какой-нибудь обработки с обычного приложения на УФ валится на каждой строчке. Сильно удобнее, чтобы останавливалось просто так
45 dmpl
 
19.02.15
15:38
(44) Ну тогда пофиг обработано исключение или нет - в хорошей программе исключений должно быть минимум.
46 Fuas4
 
19.02.15
15:41
(45) Это пока рарус альфа-авто на УФ не перепишет:)
47 Гений 1С
 
гуру
19.02.15
15:59
(42) а откуда я знаю, какой текст будет?
48 Гений 1С
 
гуру
19.02.15
16:00
(45) должно быть и реальная жизнь - разные вещи
49 D_E_S_131
 
19.02.15
16:17
(48) Это в зависимости от того как понимаешь тот код, который пишешь.
50 Господин ПЖ
 
19.02.15
16:20
>а откуда я знаю, какой текст будет?

ты кодируешь методом подбора слов?
51 IШаман
 
19.02.15
16:21
(48) У кого как.
52 D_E_S_131
 
19.02.15
16:25
(50) Методом "автоподбора" слов. :)
53 Господин ПЖ
 
19.02.15
16:25
вспоминается про 50 макак печатающих войну и мир...
54 Господин ПЖ
 
19.02.15
16:26
(52) T9 ;)
55 John83
 
19.02.15
17:20
(2) получается, что разработчики типовых тоже тогось?
попробуй открыть ту же номенклатуру - несколько исключений вызовется
56 IШаман
 
19.02.15
17:23
(55) Из за чего?
57 John83
 
19.02.15
17:25
(56) не ковырял, но порой тоже напрягает эта тема
58 Господин ПЖ
 
19.02.15
17:29
(55) залез в упп, несколько попыток, вызываются при записи, одна в подборе
59 NcSteel
 
19.02.15
17:31
(55) Не надо пользоваться не типовыми разработками. В типовых исключения на местах.
60 NcSteel
 
19.02.15
17:32
(58) +1
То есть максимум их несколько... и не вижу проблемы пару раз нажать Ф5
61 Господин ПЖ
 
19.02.15
17:37
(60) +1 и в совокупности с (42) это решает все проблемы
62 IШаман
 
19.02.15
17:41
Я сначал не мог понять в чем собственно проблема, а теперь до меня дошло что там шибко гениальный код и упахаешься нажимать Ф5 пока до нужной ошибки дойдешь.
Гений - а ты не боишься что человек который после тебя придет работать так проклянет тебя что будет тебе каждый день во снах являться.
63 Господин ПЖ
 
19.02.15
17:49
(62) так проблема изначально в индуском г.внокоде, а долбеж в f5 - это следствие
64 Злопчинский
 
19.02.15
21:03
А чем вам попытка не нравится?
65 spectre1978
 
19.02.15
21:37
(34) А что тут, собственно, плохого? Delphi/C++Builder автоматом генерит такой код для точки входа:

WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
    try
    {
        Application->Initialize();
        Application->CreateForm(....);
...
        Application->Run();
    }
    catch (Exception &exception)
    {
        Application->ShowException(&exception);
    }
    catch (...)
    {
        try
        {
            throw Exception("");
        }
        catch (Exception &exception)
        {
            Application->ShowException(&exception);
        }
    }
    return 0;
}

Практически то же самое.
66 Господин ПЖ
 
19.02.15
21:46
(65) неа... и не от хорошей жизни имхо по сути - "перекрывают" краш, чтобы апликейшен сам показал как ему плохо. в (0) немного другое - просто сложно ловить косяки в плохом коде
67 Злобный Фей
 
20.02.15
00:07
Пздц, умники. Понятно, геньку пнуть - святое дело. Но вот насчет указанной опции - было бы неплохо. Попытки понатыканы в типовых вполне от души (ради интереса - в ЕРП их 5761 штука). Пихать их при необходимости в нетиповые - тоже вполне православно при правильном подходе.
68 ShoGUN
 
20.02.15
00:28
(65) То же, да не то же. Этот код покажет нормальный текст ошибки, а (34) - одну и ту же не относящуюся к делу хрень.
69 MadHead
 
20.02.15
02:27
есть же функция пропускать ошибки "содержащие текст"
70 wertyu
 
20.02.15
03:50
(0) ты же понимаешь, что каждая твоя попытка - это время, делай без попыток
71 dmpl
 
20.02.15
07:24
(47) Ну как откуда? Ты же ошибку исправляешь. А для этого надо сначала узнать, что за ошибка.
72 spectre1978
 
20.02.15
09:13
(68) Насчет диагностики верно. Меня немного удивила сама высказанная тут идея отказываться от попыток везде где только можно.
73 Xapac
 
20.02.15
09:17
там же есть кнопошка "список ошибок". не?
74 NcSteel
 
20.02.15
10:44
(72) Эта правильная идея. Нараввне с идеей не исполоьзовать Goto
75 spectre1978
 
20.02.15
14:05
(74) Goto появилось сто лет назад, когда не было других вариантов перехода. try появился недавно и реализует достаточно современную концепцию. Это в принципе разные вещи. Зачем сравнивать несравнимое?
76 Ненавижу 1С
 
гуру
20.02.15
18:17
try{...}
надо юзать только в случае когда программа не владеет ресурсами: внешние файлы, почта и т.д.
а то видел код:
Попытка
...
Чегото.Трам = Хрум; // у чего-то не было такого свойства
...
Исключение
КонецПопытки;

Все идеально проводилось, только  толку не было
77 Провинциальный 1сник
 
20.02.15
18:30
(76) Иногда проще сделать попытку, чем проверку на кууучу условий)
78 Господин ПЖ
 
20.02.15
18:31
(77) если ты сидишь и в результате дрочишь f5 без конца не зная где падает - это г.внокод
79 Ненавижу 1С
 
гуру
20.02.15
18:32
(77) только что в (76) я показал как оно может работать после этого
к тому же ошибка может быть не в этой процедуре а в вложении этак 5-й кратности
80 ShoGUN
 
20.02.15
18:34
(77) Вообще, если можно сделать проверку - надо делать проверку. Единственное, что делаю иногда в попытке - проведение документа при загрузке из внешнего источника, т.к. чтобы предсказать, проведётся он или нет - надо всё проведение сэмулировать.
81 Провинциальный 1сник
 
20.02.15
18:41
(78) Ну, скажем, если ты пишешь некую универсальную хрень по заполнению каких-то документов какими-то данными, причем часть реквизитов отсутствуют в одних, а часть в других.. Попытка позволит в этом случае заполнить что заполнилось, не утруждая себя кучей проверок.
82 Ненавижу 1С
 
гуру
20.02.15
18:42
(81) "Попытка позволит в этом случае заполнить что заполнилось"
ага, а остальное гори оно огнем
83 Господин ПЖ
 
20.02.15
18:43
>причем часть реквизитов отсутствуют в одних, а часть в других

для этого есть метаданные

>Попытка позволит в этом случае заполнить что заполнилось, не утруждая себя кучей проверок.

ага... и провести еще через .ОбменДанными.Загрузка = Истина;

и получить в итоге какой-то мусор

за такие штуки руки выдергивать надо...
84 Провинциальный 1сник
 
20.02.15
18:54
Речь идет не о тиражном решении, а об обработке для конкретной задачи, по сути одноразовой.. там можно всё. Если попытка позволяет заменить сотню строк кода - пусть будет попытка. Читаемость и простота бывают важнее эффективности.
85 dmpl
 
20.02.15
18:54
(81) Реквизиты не присвоятся после первого же отсутствующего. В таком случае надо через Метаданные проверять наличие и присваивать.
86 Ненавижу 1С
 
гуру
20.02.15
18:55
(84) однаразовые наколенники, извини, не рассматриваю
87 Провинциальный 1сник
 
20.02.15
18:55
(85) Реквизиты можно присваивать в цикле, а попытку поместить внутрь. Что можно присвоить то и присвоится.
88 Ненавижу 1С
 
гуру
20.02.15
18:57
(87) да можно все, но ты даже не поймешь в чем проблема:

Стр.Цена = Сумма/Количество;

То ли поля Цена нет, то ли Количество=0
89 Провинциальный 1сник
 
20.02.15
18:57
(86) Для фикси это основной вид деятельности - одноразовые обработки.. и чтобы сделать за полчаса.)
90 Ненавижу 1С
 
гуру
20.02.15
18:58
(89) а вот тут ты не прав, я говорю как фикси
это у франча лиж бы работало, а у тебя должно быть желание, чтоб работало и по меньше падало
91 fisher
 
20.02.15
19:00
(0) Тю! Из-за такой фигни разнылся! Я-то думал речь об огрызочном функционале исключений в 1С!
92 Провинциальный 1сник
 
20.02.15
19:03
(90) Фикси это исполнитель желаний бухгалтерии.. вот захотело оно что-то странное - реализуй срочно. А как там внутри, насколько г..код написан - никого не волнует. Всё равно второй раз никто это запускать не будет, потому что увидят что толку от этой хотелки нет..
93 Ненавижу 1С
 
гуру
20.02.15
19:03
(92) и (89) сравни ))
94 dmpl
 
20.02.15
19:06
(90) Во-во, чем лучше сразу сделаешь - тем проще будет потом.
95 dmpl
 
20.02.15
19:06
(92) Такие хотелки надо просто не делать.
96 Ненавижу 1С
 
гуру
20.02.15
19:08
+(93) а не, прочитал как франч, извини
ты работаешь не фикси, а эникейщиком
97 Провинциальный 1сник
 
20.02.15
19:45
(96) Всё меняется.. в лучшие времена занимался только 1с и нас в отделе было пятеро, когда шло внедрение. Теперь двое - приходится заниматься всем - 1с (семерочная самописка и ЗУП), техподдержкой пользователей, серверами, и прочим вплоть до ремонта компьютеров и замены картриджей на пару с начальником. Тут не до шедевров программирования.
98 dmpl
 
20.02.15
20:48
(97) Тогда ты должен знать ответ на хотелки: "Мне сейчас некогда. Как освобожусь - сделаю." И забивать раз, второй, и вот когда на третий раз попросят то же самое что и изначально - можно начинать неспешно делать. 90-95% тупых хотелок на этом этапе отсеиваются.
99 Господин ПЖ
 
20.02.15
20:55
(89) пецдабол
100 spectre1978
 
20.02.15
22:11
ну вот... хоть чего-то конструктивного. Я помню, в конце 90х так радовался, когда после турбо Паскаля сел за языки с обработкой исключений... А тут говорят, что этим пользоваться не надо... Разрыв шаблона просто ;)
101 Ненавижу 1С
 
гуру
20.02.15
22:14
(97) говорю же - эникейщик
102 Провинциальный 1сник
 
20.02.15
22:21
(98) Корону снимите. Одинесник на предприятии - обычная обслуга, примерно как слесарь-инструментальщик.. он нужен, от него польза, его уважают - но только тогда, когда он не гнет пальцы, а делает то, что от него ждут. А ждут от него решения проблем. Редко когда бывает так, что одинесник поднимается чуть выше.. обычно это бывает в моменты смены руководства.
103 Провинциальный 1сник
 
20.02.15
22:22
(100) В дельфи помнится исключения были с самой первой версии
104 Ненавижу 1С
 
гуру
20.02.15
22:32
(102) по молодости своей глупости тоже так думал. Потом мне объяснили, как надо себя вести
105 Провинциальный 1сник
 
20.02.15
22:45
(104) Да всё меняется, я же говорил уже. Ибо пережил смену 5 генеральных и трех начальников отдела, три крупных удачных внедрения и одно неудачное, периоды роста и периоды упадка.. тут начнешь относиться философски ко всему. Иногда можно и послать конечно.. но подумаешь так - а может лучше помочь человеку? И поможешь из чистого альтруизма..
106 Ненавижу 1С
 
гуру
20.02.15
22:50
(105) у меня тоже есть альтруизм. В меру. Кто-то пережил это, кто-то нет. Каждому свое. Но ИМХО на тебе пашут
107 Злопчинский
 
20.02.15
23:56
(80)  ну так вроде если док не проводится он не вызывает исключения
По крайней мере на клюшк ах так
108 Злопчинский
 
21.02.15
00:02
Вот нафига мне изгаляться писать мегакрасивый и мегаправильный код если кроме меня его никто не будет смотреть и править?
А если после меня такой чел найдется и доберется таки до вот этого моего несильноаккуратного кода то могу сказать что кучу проблем сверху он уже решил или продрался через них и скилл у него соответствующий поэтому разберется и в моем коде как я разбирался в чужом коде аналогично

А большинство до этого кода моего и не доберутся никогда
Просто потому что тупо сольются раньше

Расставлятели галочек блин
109 Ненавижу 1С
 
гуру
21.02.15
00:04
(108) а еще жалуемся что так плохо в стране
110 Злопчинский
 
21.02.15
01:15
(109)  как в стране может быть хорошо если в снеговике нет штатного отслеживания перехвата клавиш? ;-)
111 spectre1978
 
21.02.15
08:30
(103)  про дельфи и речь. А вот в турбо паскале 7 - не было.
112 Провинциальный 1сник
 
21.02.15
08:49
(111) Кстати, по поводу нежелательности использования исключений.. наш препод по технологии программирования даже рекомендовал использовать исключение для возможности досрочного вызова из рекурсии. Легко и просто.
113 andrewalexk
 
21.02.15
09:18
(110) :) разруха не в снежном движке а в голове Нуралиева...
114 rphosts
 
21.02.15
09:22
Это где-то даже хорошо, что внутри сообщества толстых и ленивых оспаривают верность "курса партии"... у всяких там сапёров я такого не наблюдаю
115 Ненавижу 1С
 
гуру
21.02.15
09:32
(112) флаг вашему преподу
116 dmpl
 
21.02.15
09:54
(102) 1Сник, все же, специалист. Поэтому он должен понимать, что надо сделать сейчас, а что положить под сукно. В итоге ему еще и благодарности выражать будут за то что он не сделал тупую хотелку, которая в очередной раз увеличила бы количество работы по вводу данных.
117 Провинциальный 1сник
 
22.02.15
11:20
(116) Да я прекрасно понимаю, что у нас треть работников занимается фигнёй и строит разные отчеты "потому что так заведено", при том что попытка что-то автоматизировать наталкивается на непонимание и сопротивление. Однако, если скажем попросят реализовать пересчет нормативов по какой-нибудь формуле - почему бы и не помочь? Не вручную же им это делать..
118 Гений 1С
 
гуру
07.03.15
23:13
(115) ты не юзаешь попытка-исключения? видать ты не практик, а теоретик
119 Torquader
 
07.03.15
23:20
(118) Исключение - это нештатная ситуация в программе, поэтому, использовать их при нормальной работе алгоритма нежелательно.
120 TormozIT
 
гуру
07.03.15
23:26
Я тоже честно говоря не понимаю, почему не сделали такую возможность ("Не останавливаться внутри попыток"). Интерпретатор же по идее в любой момент имеет стек попыток и им просто надо проверять, пустой он или нет.
121 TormozIT
 
гуру
07.03.15
23:30
Вот кстати одна из тем партнерского форума https://partners.v8.1c.ru/forum/t/520006/m/520006 по этой же проблеме
122 Гений 1С
 
гуру
10.03.15
23:00
(120) пока мы пятилетиями не понимаем, Нуралиев не клепает. Увы. Не отстроил он обратную связь с гуру разработки. Зря
123 Звездочёт
 
11.03.15
16:00
(0) серьезно копаешь )
124 Гений 1С
 
гуру
15.03.15
14:27
(123) что поделать