Přeskočit obsah

Try-Catch

Akce Try zachytí chyby vzniklé při provádění vnořených akcí a umožňuje na ně reagovat alternativní sadou akcí. Obdoba try-catch bloku v programovacích jazycích.

Vlastnosti

Vlastnost Popis Hodnota / Komentář
Actions Hlavní akce, které se pokusí provést (blok try).
OnError Akce provedené při zachycení chyby (blok catch).
ErrorMessageVariable Název workflow proměnné, do které se uloží text chybové zprávy. ErrorMsg
StackTraceVariable Název workflow proměnné, do které se uloží stack trace výjimky. ErrorStack
Label Popisný štítek zobrazený v editoru akcí.
Disabled Pokud je akce deaktivována, její vykonání se přeskočí. Vypnuto / Zapnuto

Chování

Pokud některá akce v bloku Actions vyhodí výjimku nebo vrátí chybový výsledek, workflow nezastaví — místo toho se provedou akce v bloku OnError. Text chyby a stack trace se uloží do zadaných proměnných (pokud jsou definovány).

Pokud blok OnError není definován nebo je prázdný, chyba se potichu zachytí a workflow pokračuje dál.

Příklady

Příklad: Zachycení chyby webového požadavku

<Try ErrorMessageVariable="ErrorMsg">
  <Actions>
    <WebRequest Url="https://api.contoso.com/update" Method="POST" ... />
  </Actions>
  <OnError>
    <WriteLog Message="Chyba při volání API: {var:ErrorMsg}" Level="Error" />
    <SendMail
      EmailTo="{item:Admin}"
      EmailSubject="Chyba workflow"
      EmailBody="Při volání API došlo k chybě: {var:ErrorMsg}" />
  </OnError>
</Try>