try catch в шаблоне

Bot_Sculptor

Client
Регистрация
11.06.2012
Сообщения
787
Благодарностей
237
Баллы
43
я языках программирования есть такое понятия ,как "исключения" , это отлов и перехват ошибок, и что делать , если эта ошибка была вообще.

поскольку большая часть пользователей работает не на выделенных серверных проксях, а на других типах, то часто из-за нестабильного соединения вылазят всякого рода ошибки.

в шаблонах , есть подобие это BadEnd, но это никуда не годится..
и поэтому нужна полноценная система исключений для простых кубиков.
суть такая же, как в обычных исключениях: ставится метка обозначающая начало блока отлова ошибки, дальше ставиться закрывающий экшен, дальше экшен проверки, было ли вызвано исключение в текущем блоке, если да, то делать, то что указано.
Но при текущем раскладе, это сделать нельзя, чтобы не тащить кучу стрелок из нужного блока экшенов к нужному "перехватчику". По этому
нужен Многоразовый BadEnd, а не тот, что сейчас. Он может срабатывать только один раз.
У многоразового BadEnd мы сможем через switch проверять в каком блоке была ошибка, и вернутся на повтор именно к этому блоку экшенов.

да, можно и сейчас решать проблему с обозначением текущего этапа шаблона. Это просто на нужных участках, одной переменной присваивать нужный статус.
Этап прошли? присвоили переменной "статус"="status1OK". Дальше когда попали на BadEnd мы может просто узнать чему равно "статус" и что-то сделать. НО ЭТО ТОЛЬКО ОДИН РАЗ, потому что многоразового BadEnd нет.
По этому забудьте про первую часть предложения, а сделайте только вторую " многоразовый BadEnd "
и чтобы было желание это делать, то на форуме уже неоднократно подымался этот вопрос.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Bad end это инструмент созданный для сохранения данных, если шаблон падает по ошибке.
 

Bot_Sculptor

Client
Регистрация
11.06.2012
Сообщения
787
Благодарностей
237
Баллы
43

nomarketing

Client
Регистрация
01.11.2013
Сообщения
907
Благодарностей
178
Баллы
43
Bad end это инструмент созданный для сохранения данных, если шаблон падает по ошибке.
А это как ? сохранение данных ? пример ? а то эти кнопки для меня всегда были загадками )) зеленая и красная
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
спасибо, я знаю.
другими словами предложение отклонено?
Если у вас шаблон заключен в несколько логических этапов, делайте их во вложенных проектах. При неуспехе вложенного конкретного проекта вы сразу же по красной ветке можете сделать правки данных, логирование, вовзрат на любоу предыдущий этап шаблона
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
А это как ? сохранение данных ? пример ? а то эти кнопки для меня всегда были загадками )) зеленая и красная
Просто добавьте блок BadEnd в проект и от него проведите стрелку к группе экшенов, которая должна выполнится если проект где то упал.
например, можно сохранить данные аккаунта обратно в список, если в начале шаблона они были взяты с удалением
 

Bot_Sculptor

Client
Регистрация
11.06.2012
Сообщения
787
Благодарностей
237
Баллы
43
это все я в курсе... и это все неудобные костыли, я же предложил удобный вариант. Какой и так уже существует в языках программирования, я не выдумал это.

все что я хочу это один экшен "многоразовый BadEnd",
впилено кучу хлама,а такой удобной вещи никак не впилят...
 

nomarketing

Client
Регистрация
01.11.2013
Сообщения
907
Благодарностей
178
Баллы
43
Просто добавьте блок BadEnd в проект и от него проведите стрелку к группе экшенов, которая должна выполнится если проект где то упал.
например, можно сохранить данные аккаунта обратно в список, если в начале шаблона они были взяты с удалением
А понял, интересно :-)
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 381
Благодарностей
467
Баллы
83

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)