---
title: "ICR Correction Categories and Types"
slug: "intelligent-code-remediation-supported-correction-categories-and-issue-types"
updated: 2022-06-13T09:30:44Z
published: 2022-06-13T09:30:44Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://success.panaya.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ICR Correction Categories and Types

Panaya's Intelligent Code Remediation (ICR) supports the below correction categories, correction types, and issue types.

- [For S/4HANA Conversions Corrections](/docs/intelligent-code-remediation-supported-correction-categories-and-issue-types#S/4HANA%20Conversions%20Corrections)
- [For EHP Upgrades Corrections](/docs/intelligent-code-remediation-supported-correction-categories-and-issue-types#EHP%20Upgrades%20Corrections)

## **S/4HANA Conversion Corrections**

| **Correction Category** | **Correction Type** | **Issue Type** |
| --- | --- | --- |
| **HANA 2.0 Migration** | Unsecure uses of FOR ALL ENTRIES | Unsecured uses of FOR ALL ENTRIES |
| Problematic statements for query result without ORDER BY | SELECT SINGLE Without ORDER BY SELECT ... FOR cluster table ... without ORDER BY found SELECT ... FOR pool table ... without ORDER BY found Empty SELECT/ENDSELECT at ... line ...: LOOP with SELECT without ORDER BY READ with SELECT without ORDER BY EXIT/RETURN/LEAVE in SELECT/ENDSELECT at ... line ...result of SELECT/OPEN CURS |
| **HANA 2.0 Performance Tuning** | Problematic SELECT * statements | Select-Statement can be transformed. #% of fields used Existence check. No fields used (EXISTS) |
| EXIT or no statement in SELECT...ENDSELECT loop | EXIT statement within a SELECT...ENDSELECT loop |
| **Custom Code Preparations** | Adjust Cloned Programs | Cloned Program |
| Fix Code due to Obsolete Functions | Obsolete Function Replacement |
| **Custom Code - ATC** | ATC Field Length Extensions | Arithmetic type conflict (AR_TYPE) Old Arithmetic type conflict (AR_TYPEO) Compare length conflict (COMP_LENG) Old Compare length conflict (COMP_LENGO) Old Compare type conflict (COMP_TYPEO) Move length conflict (MOVE_CUT) Old Move length conflict (MOVE_CUTO) Old Move type conflict (MOVE_TYPEO) Move type conflict (MOVE_TYPE) MSG_WITH (MSG_WITH) Offset/Length-Access (OFFLEN) Type-Conflict (TYPE) Old Type-Conflict (TYPEO) Structure-Component type conflict (TYPE_CMP) WRITE_LEN **(WRITE_LEN)** WRITE_TO **(WRITE_TO)** Write Issue DB Operation SELECT found Concatenate length conflict (CONCAT, CONCATO) |

## **EHP Upgrades Corrections**

| **Correction Category** | **Correction Type** | **Issue Type** |
| --- | --- | --- |
| **HANA Migration / HANA 2.0 Migration** | Functional Correctness Adjustments for HANA | Unsecured uses of FOR ALL ENTRIES SELECT SINGLE Without ORDER BY SELECT ... FOR cluster table ... without ORDER BY found SELECT ... FOR pool table ... without ORDER BY found Empty SELECT/ENDSELECT at ... line ...: EXIT/RETURN/LEAVE in SELECT/ENDSELECT at ... line |
| Performance Adjustments for HANA | LOOP with SELECT without ORDER BY READ with SELECT without ORDER BY Existence check. No fields used Select-Statement can be transformed. #% of fields used |
| **Code Corrections** | Adjust Cloned Programs | Cloned Program |
| Fix Code due to Obsolete Functions | Obsolete Function Replacement |
| **EHP Upgrade: HANA Migration** | Functional Correctness Adjustments for HANA | EXIT/RETURN/LEAVE in SELECT/ENDSELECT at ... line ...result of SELECT/OPEN CURS |
