AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.04.2008, 18:28   #1  
romhin is offline
romhin
Участник
 
6 / 10 (1) +
Регистрация: 05.01.2008
Thumbs up
Как обработать ошибку(исключение) в navision 3.7 , или может это в транзакциях как то можно сделать ?
Старый 09.04.2008, 10:17   #2  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Пример конкретный можете привести?
Старый 09.04.2008, 12:01   #3  
romhin is offline
romhin
Участник
 
6 / 10 (1) +
Регистрация: 05.01.2008
В форме есть два поля куда вводится дата
Вот этой формулой в третье поле я расчитываю количество дней VSrok := DataEnd - DataBegin;
в DataBegin , DataEnd есть тригер "VSrok := DataEnd - DataBegin;" при изменении поля
в VSrok есть тригер DataEnd := DataBegin + VSrok при изменении поля;
при пустых полях DataBegin , DataEnd происходит ошибка
Я конечно понимаю что можно поставить проверку на пустую дату , но хотелось бы просто обработать ошибку тоесть чтоб код выполнялся дальше игнорируя ошибку .
Старый 09.04.2008, 12:42   #4  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Собственно вы сами ответили на свой вопрос. Проверка на нулевые значения это лучший способ, так как по большому счету, в Nav нет обработчика ошибок...
Старый 09.04.2008, 12:47   #5  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Цитата:
Сообщение от romhin Посмотреть сообщение
В форме есть два поля куда вводится дата
-) Улыбнул пост.
Я думал надо обработать супермегаглобальную ситуацию, когда возникает ошибка, скажем при учете.
А тут )
Да еще. Если есть поле, рассчитываемое как нечто деленное на другое нечто, не забудьте добавить строку - если второе нечто равно нулю, то результат сразу будет ноль. Вне зависимости от того, чему равно первое нечто -)
Ну а серьезно - дисциплинируйтесь сами. Это полезно - знать что и как может ваша функция, а чего и как не может.
Старый 09.04.2008, 17:41   #6  
romhin is offline
romhin
Участник
 
6 / 10 (1) +
Регистрация: 05.01.2008
Ну про пример то всё понятно ,а вот как ошибку обработать ??? нужно именно обработать ошибку !
Старый 09.04.2008, 17:46   #7  
apanko is offline
apanko
MCTS
MCBMSS
Лучший по профессии 2009
 
1,164 / 139 (7) +++++
Регистрация: 24.02.2005
Если вы вызываете кодеюнит и неуверены, что он сможет доработать до конца без ошибок,
То используйте возвращаемое значение:
bOK:= Codeunit.RUN(50000);

Modify и Commit
Старый 09.04.2008, 17:52   #8  
romhin is offline
romhin
Участник
 
6 / 10 (1) +
Регистрация: 05.01.2008
Сэнкс , а можно с процедурой также провернуть ?
Старый 16.04.2008, 18:08   #9  
Технологии как Искусство is offline
Технологии как Искусство
Участник
 
37 / 10 (1) +
Регистрация: 04.02.2008
Цитата:
Сообщение от romhin Посмотреть сообщение
Сэнкс , а можно с процедурой также провернуть ?
Заграница нам поможет...
http://mibuso.com/forum/viewtopic.php?t=21...65661d424273aff

Вот тут коллега из матери городов русских предложил свое решение. Оригинальное, правда, разбираться сейчас времени нет.
Старый 16.04.2008, 22:28   #10  
romhin is offline
romhin
Участник
 
6 / 10 (1) +
Регистрация: 05.01.2008
огромное спасибо
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 12:10.