Print

try {…} catch {…}

Wprowadzenie

W systemie AMODIT pojawiła się nowa konstrukcja w języku reguł – try {…} catch {…}. Konstrukcja ta daje możliwość projektantowi procesu wyłapania błędu (ang. exception) i podjęcia decyzji, co dalej zrobić w takiej sytuacji.

Opis działania konstrukcji try {…} catch {…}

Konstrukcja try {…} catch {…} daje możliwość projektantowi procesu wyłapania błędu (ang. exception) i podjęcia decyzji, co dalej zrobić w takiej sytuacji, np. może wyświetlić użytkownikowi co najmniej komunikat funkcją ShowMessage() o nietypowym/wyjątkowym działaniu reguły.

Dodatkową cechą konstrukcji try {…} catch {…} jest to, że nie jest przerywane działanie reguły. Dotychczas jeśli podczas wykonywania reguły wystąpił nieoczekiwany błąd, dalsze działanie takiej reguły było przerywane i zazwyczaj użytkownik nie miał możliwości zareagowania. Stosując wspomnianą konstrukcję językową projektant procesu może obsłużyć sytuację błędną i pozwolić na dalsze wykonanie się reguły, o ile będzie to zasadne.

Przykład użycia

try
{
    a = ExecuteSQL("DSN=XXX","select top 1 kolumna_1 from jakas_tabela");
}
catch
{
    ShowMessage(2,"Nastąpił wyjątek przy wykonaniu zapytania SQL: " + exception);
}

W powyższym fragmencie kodu reguły konstrukcją try {…} catch {…} zostało „obwarowane” wywołanie zapytania SQL do zewnętrznej bazy danych. Jeżeli w trakcie takiego wywołania okazałoby się, że przykładowo baza danych nie jest dostępna (brak połączenia z serwerem bazy danych), to wystąpi błąd/wyjątek w działaniu funkcji ExecuteSQL(), a treść tego wyjątku zostanie umieszczona w zmiennej exception. W tym przykładzie komunikat błędu zostanie wyświetlony użytkownikowi.


Funkcjonalność dostępna od wersji 220630 systemu AMODIT.

Czy artykuł był pomocny?
0 na 5 gwiazdek
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
5
How can we improve this article?
How Can We Improve This Article?