Migration Template Intelligence
Validates SAP Migration Cockpit load files (migration templates, XML or CSV) against the schema the template declares: mandatory fields, field lengths and types, duplicate keys, hierarchy parents and cross-sheet references — with the record keys the load will report
Content reviewed September 26, 2026
- Engine
- MIGRATION_TEMPLATE_INTELLIGENCE
- Domain
- Migration & Clean Core
- Version
- 1.0.0
- Target releases
- S4H_2022, S4H_2023, S4HANA_CLOUD_2402, S4HANA_CLOUD_2408
- Accepted formats
- XML, CSV, TEXT
Input contract
SAP data migration template (Migration Cockpit 'Migrate Your Data' load file): the Excel 2003 XML spreadsheet as downloaded from SAP (all sheets, document properties OBJECT_NAME / VERSION / LANGUAGE, field list) or the CSV of one data sheet including its header rows (as converted from an XLSX by the upload): title row, SAP structure names, SAP field names, the type-specification row ('ETE;80;0;C;80;0'), group names ('Schlüssel' / 'Key') and field descriptions ('*' = mandatory), then the data rows. EN and DE templates.
Required input
- A migration template data sheet with its type-specification row (XML spreadsheet or CSV)
- Configuration options: existing_keys (record keys that already exist in the target system, e.g. parents loaded in an earlier delta; excluded from missing-parent / missing-reference findings), max_rows (default 1048576).
- Values are compared after trimming leading / trailing blanks. Dates: YYYYMMDD, YYYY-MM-DD[THH:MM:SS], DD.MM.YYYY, MM/DD/YYYY or DD/MM/YYYY, 00000000. Numbers: optional sign, digits, one decimal separator, thousands grouping; the declared length includes the decimals.
Finding codes
Finding codes (8)
MIG_TEMPLATE_DUPLICATE_KEYDefault severity: BlockerCategory: DATA_INTEGRITYDuplicate record key
Remediation: Keep exactly one row per key (all key-group fields together); merge or remove the duplicates. The migration processes one source record per key, so duplicates are rejected or overwrite each other.
MIG_TEMPLATE_HIERARCHY_CYCLEDefault severity: BlockerCategory: OBJECT_HIERARCHYHierarchy references form a cycle
Remediation: Correct the hierarchy references so that no record is its own (indirect) parent; a cyclic hierarchy cannot be built by the migration.
MIG_TEMPLATE_HIERARCHY_PARENT_MISSINGDefault severity: BlockerCategory: OBJECT_HIERARCHYHierarchy parent is not part of the load
Remediation: Add the missing parent records to the template (above their children) or verify that they already exist in the target system and list them as existing keys. Children of a missing parent — and their descendants — cannot be placed in the hierarchy and fail during the load.
MIG_TEMPLATE_CROSS_SHEET_REFERENCE_MISSINGDefault severity: CriticalCategory: DATA_INTEGRITYReferenced record is missing on the parent sheet
Remediation: Add the referenced records to the parent sheet of the template (or verify that they already exist in the target system); rows that reference a missing parent record cannot be created.
MIG_TEMPLATE_MANDATORY_FIELD_EMPTYDefault severity: CriticalCategory: DATA_COMPLETENESSMandatory template field is empty
Remediation: Fill the field in every listed row (the template marks it mandatory with '*' in the field description or 'mandatory for sheet' in the field list), or remove rows that are not meant to be migrated. Records with an empty mandatory field are rejected by the migration; an empty key field means the record cannot be created at all.
MIG_TEMPLATE_TYPE_MISMATCHDefault severity: CriticalCategory: DATA_FORMATValue does not match the field type declared by the template
Remediation: Correct the values to the declared type: dates as YYYYMMDD, YYYY-MM-DD or the country-specific format (31.12.2026 / 12/31/2026), times as HH:MM:SS, NUMC fields digits only, numbers with at most the declared decimals. Do not change the formatting of the template cells.
MIG_TEMPLATE_VALUE_TOO_LONGDefault severity: CriticalCategory: DATA_FORMATValue exceeds the field length declared by the template
Remediation: Shorten the values to the length stated in the template's type specification (for numbers: integer digits plus decimals) or map them to the target field length before the load; values longer than the field are rejected by the transfer.
MIG_TEMPLATE_SCHEMA_SUMMARYDefault severity: InfoCategory: SCHEMASchema declared by the migration template
Remediation: No action required: this is the schema (sheets, fields, types, mandatory and key fields) the template declares and the data was validated against. Check that the migration object and version match the target system's migration project.
Input validation codes (5)
MIG_TEMPLATE_ARCHIVE_REJECTEDDefault severity: MajorCategory: INPUT_VALIDATIONArchive rejected by ingestion safety limits
Remediation: The archive exceeded the 100:1 expansion ratio, 500 MB total size, entry-count or 2-level nesting limit, or contained path traversal / encrypted members. Upload a flat, unencrypted archive of the export files. No verdict was produced. Re-export the artifact in one of the formats accepted by Migration Template Intelligence (XML, CSV, TEXT) and re-run the analysis.
MIG_TEMPLATE_INVALID_INPUTDefault severity: MajorCategory: INPUT_VALIDATIONArtifact does not match the engine input contract
Remediation: Provide the artifact type documented for this engine; unrelated or structurally invalid documents are rejected. No verdict was produced. Re-export the artifact in one of the formats accepted by Migration Template Intelligence (XML, CSV, TEXT) and re-run the analysis.
MIG_TEMPLATE_PARSE_ERRORDefault severity: MajorCategory: INPUT_VALIDATIONArtifact could not be parsed
Remediation: Fix the syntax error at the reported line/column (or re-export the file unmodified from SAP). No verdict was produced. Re-export the artifact in one of the formats accepted by Migration Template Intelligence (XML, CSV, TEXT) and re-run the analysis.
MIG_TEMPLATE_PAYLOAD_TOO_LARGEDefault severity: MajorCategory: INPUT_VALIDATIONArtifact exceeds the size limit
Remediation: Split the export (e.g. per package, company code or date range) so each upload stays under the service payload limit. No verdict was produced. Re-export the artifact in one of the formats accepted by Migration Template Intelligence (XML, CSV, TEXT) and re-run the analysis.
MIG_TEMPLATE_INSUFFICIENT_INPUTDefault severity: InfoCategory: INPUT_VALIDATIONRequired input missing
Remediation: Supply every input the engine's contract marks as required (see the engine catalog entry). No verdict was produced. Re-export the artifact in one of the formats accepted by Migration Template Intelligence (XML, CSV, TEXT) and re-run the analysis.