---
title: "Statuscodes und Ergebnisse"
description: "Modul-Statuscodes der LumiScan-Apps, der Ausführungsstatus der Finder und die Ergebnisse eines Methodenaufrufs auf LumiScan Keryx, dem ctrlX Data Layer und über OPC UA."
product: "LumiScan Keryx"
component: "lumiscan-keryx-de"
version: "1.0.0"
display_version: "1.0.0.7"
latest_version: true
language: "de"
url: "https://docs.hdvisionsystems.com/de/lumiscan-keryx-de/1.0.0/status-codes.html"
---

# Statuscodes und Ergebnisse – LumiScan Keryx

Zwei Arten von Antworten teilen einem Client mit, was geschehen ist:

- das **Ergebnis eines Aufrufs** - ist der Schreibvorgang oder Methodenaufruf durchgegangen? -, siehe [Ergebnisse eines Methodenaufrufs](https://docs.hdvisionsystems.com/de/lumiscan-keryx-de/1.0.0/status-codes.html#method-results);
- der **Status**, den die App in einen Knoten schreibt - war die Operation erfolgreich? -, siehe [Modulstatus: `control/status/code`](https://docs.hdvisionsystems.com/de/lumiscan-keryx-de/1.0.0/status-codes.html#module-status) und [Ausführungsstatus der Finder](https://docs.hdvisionsystems.com/de/lumiscan-keryx-de/1.0.0/status-codes.html#execution-status).

Verwenden Sie in der Programmlogik die Zahlen, niemals die Texte.

## Modulstatus: `control/status/code` {#module-status}

Cam Driver, AI Object Matching und Calibration melden den Zustand jedes Moduls auf `<module>/control/status/code` (`int32`) und `control/status/text`. Werte ab `0` sind normal, Werte unter `0` sind Fehler.

| Code | Text | Bedeutung |
| --- | --- | --- |
| `0` | `ready` | die letzte Funktion war erfolgreich; bereit für die nächste |
| `1` | `settingUp` | das Modul startet |
| `2` | `running` | eine Funktion läuft |
| `3` | `waitingForClient` | wartet auf den Client, meist darauf, dass `request` zurückfällt |
| `-1` | `undefinedError` | kein spezifischer Code |
| `-2` | `invalidSetting` | die Einstellungen konnten nicht geladen werden |
| `-3` | `invalidInput` | eine Eingabe ist ungültig |
| `-4` | `missingLicense` | die Lizenz fehlt |
| `-5` | `restartRequired` | die Einstellungen wurden über `system/settings` geändert: Starten Sie die App neu |

App-spezifische Codes, aufgeführt im Handbuch der jeweiligen App:

| App | Codes |
| --- | --- |
| Cam Driver | `-10000` bis `-10012` |
| Calibration | `-10001` (`inputXYSizeNotEqual`) |
| AI Object Matching | `100001` (`ImageQueueEmpty`), `100002` (`StreamActive`) |

## Ausführungsstatus der Finder {#execution-status}

Template Finder, Object Finder, Area Detector und Text Reader schreiben den Ausgang jeder Methode auf `<method>/output/status-code` (`int16`) und `status-text`. Diese Werte sind eigene, nicht der obige Modulstatus:

| Code | Text |
| --- | --- |
| `1` | `ok` |
| `0` | `idle` |
| `-1` | `busy` |
| `-2` | `invalidInput` |
| `-3` | `imageReadFailed` |
| `-4` | `sourceNotFound` |
| `-5` | `cropInvalid` |
| `-6` | `writeFailed` |
| `-7` | `algorithmFailed` |
| `-8` | `publishFailed` |
| `-9` | `moduleNotFound` |
| `-10` | `moduleExists` |
| `-11` | `licenseUnavailable` |

Beachten Sie, dass `-5` hier `cropInvalid` bedeutet, im Modulstatus dagegen `restartRequired`.

## Ergebnisse eines Methodenaufrufs {#method-results}

Ein Schreibvorgang auf einen `execute`-Knoten meldet, ob die Operation ausgeführt werden konnte. Die Namen unterscheiden sich zwischen den Data Layern; die Bedeutung ist dieselbe.

| LumiScan Keryx | ctrlX Data Layer | OPC UA Connector | Bedeutung und Vorgehen |
| --- | --- | --- | --- |
| `Ok` | `DL_OK` | `Good` | Die Operation wurde ausgeführt. Bei Cam Driver, AI Object Matching und Calibration lesen Sie für den Ausgang `control/status/code` |
| `TooManyOperations` | `DL_TOO_MANY_OPERATIONS` | `BadTooManyOperations` | Eine andere Operation des Moduls läuft. Wiederholen Sie den Aufruf |
| `InvalidOperationMode` | `DL_INVALID_OPERATION_MODE` | `BadInvalidState` | Die Funktion ist nicht bereit: Ihr `ready` ist `false`, keine Lizenz, die Kamera ist nicht verbunden, ein Stream läuft. Bringen Sie das Modul zuerst in den Zustand; bloßes Wiederholen schlägt weiter fehl |
| `ResourceUnavailable` | `DL_RESOURCE_UNAVAILABLE` | `BadResourceUnavailable` | Die App wird beendet, ein Neustart ist erforderlich (Status `-5`), oder ein AI-Modul hat einen Fehler. Lesen Sie den Status; starten Sie die App neu, wenn erforderlich |
| `Rejected` | `DL_INVALID_VALUE` | `BadRequestNotAllowed` | Eine Eingabe ist ungültig. Nichts wurde geändert. Korrigieren Sie die Eingabe |
| `NodeNotFound` | `DL_INVALID_ADDRESS` | `BadNodeIdUnknown` | Ein Bild, eine Quelle, ein Modul oder der Knoten selbst wurde nicht gefunden. Prüfen Sie die Adresse und ihre Groß-/Kleinschreibung |
| `CreationFailed` | `DL_CREATION_FAILED` | `BadCommunicationError` oder `BadInternalError` | Etwas konnte nicht geschrieben oder angelegt werden: eine Datei, ein bereits vorhandenes Modul, eine nicht verfügbare Lizenz. Das Log nennt den Grund |
| `InternalError` | `DL_FAILED` | `BadInternalError` | Die Operation ist fehlgeschlagen. Lesen Sie den Status oder das Log |

Auf dem ctrlX Data Layer erreichen Daten, die eine Methode an einen fehlgeschlagenen Aufruf anhängt, den Client nicht; ein abgelehnter Aufruf enthält daher keinen Grund. Die Apps schreiben den Grund deshalb in ihr Log und, wo vorhanden, in einen Statusknoten.
