# Return Code Example

Have the Return Code defined as a 4 digit number where the first digit designates the Priority Level which allows calling jobs to determine the nature of the Return Code (as organized above).

The second digit designates a System Level which identifies where the code was generated.

The last two digits a specific Condition Type which when coupled with the first two digits clearly isolate what has occurred that warrants the Return Code.

![](https://help.qlik.com/talend/en-US/conventions-for-return-codes/Resources/images/return_code_example.png)

Where Priority Codes are defined as:

| PRIORITY LEVEL | PRIORITY CODE |
| --- | --- |
| INFO | 3 |
| WARNING | 4 |
| ERROR | 5 |
| FATAL | 6 |

Where System Codes are defined as:

| SYSTEM LEVEL | SYSTEM CODE |
| --- | --- |
| Operating System | 1 |
| Memory | 2 |
| Storage | 3 |
| Network | 4 |
| Internet | 5 |
| File System | 6 |
| Database | 7 |
| NoSQL | 8 |
| Other | 9 |

Where Type Codes are defined as:

| TYPE LEVEL | TYPE CODE |
| --- | --- |
| Permission | 01 |
| Connection | 02 |
| Locate | 03 |
| Check | 04 |
| Open | 05 |
| Close | 06 |
| Read | 07 |
| Write | 08 |
| Create | 09 |
| Delete | 10 |
| Rename | 11 |
| Dump | 20 |
| Load | 21 |
| Get | 30 |
| Put | 31 |

To further illustrate this example, here is how some Return Codes may be used:

| RETURN CODE | SAMPLE MESSAGE |
| --- | --- |
| 3605 | Open File Successful |
| 4304 | Disk Space is Low |
| 5701 | Invalid DB Login |
| 6205 | Insufficient Memory |

Other numbering schemes will work just as well as long as the best practice is to have well defined Return Codes and wide adoption.